Re: [PATCH] arm64: dts: qcom: msm8916-samsung-serranove: Add magnetometer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Sep 4, 2022 at 11:51 PM Jakob Hauser <jahau@xxxxxxxxxxxxxx> wrote:

> Add magnetometer Yamaha YAS537 to the DeviceTree of samsung-serranove.
>
> The YAS537 variant was recently added to the Yamaha YAS magnetometers
> driver [1].
>
> In the DeviceTree of samsung-serranove for the Android kernel, there is
> unfortunately no information on interrupts or pinctrl [2].
>
> In the Android kernel driver for magnetometer Yamaha YAS537, there is a
> device-specific matrix to correct an ellipsoid shape of the measure values
> into a sphere shape [3]. This could be converted and applied to a mount-matrix.
> However, the current state of the mainline Yamaha YAS537 driver needs
> post-process calibration in userspace anyway, as it lacks a formula to center
> the measure values around zero. The correction of the ellipsoid into a sphere
> can be done in the post-process calibration as well.
>
> A mount-matrix is needed nonetheless. When putting samsung-serranove flat on
> a table in portrait orientation heading north, the Yamaha YAS537 magnetometer
> axes natively point X+ to north, Y+ to east and Z+ into the ground, which
> corresponds to a common way to define the Earth's magnetic field coordinate
> system [4]. According to the IIO definition, it should be Y+ to north, X+ to
> east and Z+ upwards [5], which corresponds to a common device coordinate system
> and eases sensor fusing.
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/drivers/iio/magnetometer/yamaha-yas530.c?id=65f79b501030678393eae0ae03d60a8151fbef55
> [2] https://github.com/msm8916-mainline/android_kernel_qcom_msm8916/blob/GT-I9195I/arch/arm/boot/dts/samsung/msm8916/msm8916-sec-serranovelte-eur-r03.dtsi#L318-L321
> [3] https://github.com/msm8916-mainline/android_kernel_qcom_msm8916/blob/GT-I9195I/drivers/iio/magnetometer/yas_mag_drv-yas537.c#L105-L106
> [4] https://en.wikipedia.org/wiki/Earth%27s_magnetic_field#Characteristics
> [5] https://github.com/torvalds/linux/blob/v5.19/Documentation/devicetree/bindings/iio/mount-matrix.txt#L93-L126
>
> Cc: Stephan Gerhold <stephan@xxxxxxxxxxx>
> Signed-off-by: Jakob Hauser <jahau@xxxxxxxxxxxxxx>

Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>

Yours,
Linus Walleij



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux