mbox series

[v2,0/3] ARM: omap: omap4-embt2ws: Add IMU on control unit

Message ID 20230926203739.2119963-1-andreas@kemnade.info
Headers show
Series ARM: omap: omap4-embt2ws: Add IMU on control unit | expand

Message

Andreas Kemnade Sept. 26, 2023, 8:37 p.m. UTC
Contrary to the IMU at the head, a bit needs to be set to
make probe of the magnetometer successful.

Changes in V2:

- add types in binding doc
- more description / comments in binding doc
- limit register change to imu9150
- correct node name in device tree (- vs _)

Andreas Kemnade (3):
  dt-bindings: iio: imu: mpu6050: Add level shifter
  iio: imu: mpu6050: add level shifter flag
  ARM: dts: omap: omap4-embt2ws: Add IMU at control unit

 .../bindings/iio/imu/invensense,mpu6050.yaml    |  5 +++++
 .../boot/dts/ti/omap/omap4-epson-embt2ws.dts    | 17 ++++++++++++++++-
 drivers/iio/imu/inv_mpu6050/inv_mpu_aux.c       | 10 ++++++++++
 drivers/iio/imu/inv_mpu6050/inv_mpu_core.c      |  3 +++
 drivers/iio/imu/inv_mpu6050/inv_mpu_iio.h       |  1 +
 5 files changed, 35 insertions(+), 1 deletion(-)

Comments

Krzysztof Kozlowski Sept. 27, 2023, 7:57 a.m. UTC | #1
On 26/09/2023 22:37, Andreas Kemnade wrote:
> Add also the level-shifter flag to avoid probe failure in magnetometer
> probe.
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> ---
>  .../boot/dts/ti/omap/omap4-epson-embt2ws.dts    | 17 ++++++++++++++++-
>  1 file changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts b/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts
> index cd4f858d846ab..0cc66e158a8d5 100644
> --- a/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts
> +++ b/arch/arm/boot/dts/ti/omap/omap4-epson-embt2ws.dts
> @@ -391,7 +391,16 @@ tlv320aic3x: codec@18 {
>  		reset-gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
>  	};
>  
> -	/* TODO: mpu9150 at control unit, seems to require quirks */
> +	mpu9150: imu@68 {
> +		compatible = "invensense,mpu9150";
> +		reg = <0x68>;
> +
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&mpu9150_pins>;
> +		interrupt-parent = <&gpio2>;
> +		interrupt = <7 IRQ_TYPE_LEVEL_HIGH>;
> +		invensense,level-shifter;
> +	};
>  };
>  
>  &keypad {
> @@ -530,6 +539,12 @@ OMAP4_IOPAD(0x0fc, PIN_INPUT | MUX_MODE0)       /* abe_mcbsp2_fsx */
>  		>;
>  	};
>  
> +	mpu9150_pins: pinmux_mpu9150-pins {

Not much improved.

Best regards,
Krzysztof
Andy Shevchenko Sept. 27, 2023, 1:02 p.m. UTC | #2
On Tue, Sep 26, 2023 at 11:38 PM Andreas Kemnade <andreas@kemnade.info> wrote:
>
> Some boards fail in magnetometer probe if level shifter flag is not set,
> definition was found in a 3.0 vendor kernel.

I would rather use the more standard (IIUC the versioning here)
"...in the vendor Linux kernel v3.0." (also note article change).

Same for all cases below.

I believe Jonathan can update this when applying, otherwise the code looks fine,
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>