Add support for AK09918 which is register and scaling compatible with AK09912. It was tested in Xiaomi Redmi 5 Plus (vince). magnetometer@c { compatible = "asahi-kasei,ak09918"; reg = <0x0c>; vdd-supply = <&pm8953_l6>; mount-matrix = "1", "0", "0", "0", "1", "0", "0", "0", "1"; }; Add a fix for data reading according to datasheet [1] (9.4.3.2.) ST2 register should be read out after read measurment data as third step. ST2 read out is required and get correct value during measurment data read. [1] https://www.akm.com/content/dam/documents/products/electronic-compass/ak09918c/ak09918c-en-datasheet.pdf Signed-off-by: Barnabás Czémán <barnabas.czeman@xxxxxxxxxxxxxx> --- Changes in v2: - Remove unnecessary ak09918 compatbile. - Link to v1: https://lore.kernel.org/r/20240805-ak09918-v1-0-70837eebd7d8@xxxxxxxxxxxxxx --- Barnabás Czémán (1): iio: magnetometer: ak8975: Fix reading for ak099xx sensors Danila Tikhonov (2): dt-bindings: iio: imu: magnetometer: Add ak09118 iio: magnetometer: ak8975: Add AK09118 support .../iio/magnetometer/asahi-kasei,ak8975.yaml | 1 + drivers/iio/magnetometer/Kconfig | 2 +- drivers/iio/magnetometer/ak8975.c | 65 ++++++++++++++++------ 3 files changed, 51 insertions(+), 17 deletions(-) --- base-commit: d6dbc9f56c3a70e915625b6f1887882c23dc5c91 change-id: 20240805-ak09918-4a6cfef91c32 Best regards, -- Barnabás Czémán <barnabas.czeman@xxxxxxxxxxxxxx>