From: Ondrej Jirman <[email protected]>

Pinephone Pro uses AF8133J according to the schematic.

The mount-matrix was added by Leonardo on top of Ondrej's work of adding
the magnetometer. It was verified with Leonardo's compass app:

https://gitlab.com/lgtrombetta/compass

Co-developed-by: Leonardo G. Trombetta <[email protected]>
Signed-off-by: Leonardo G. Trombetta <[email protected]>
Signed-off-by: Ondrej Jirman <[email protected]>
Reviewed-by: Pavel Machek <[email protected]>
Signed-off-by: Rudraksha Gupta <[email protected]>
---
 .../boot/dts/rockchip/rk3399-pinephone-pro.dts     | 23 ++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts 
b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
index 2dca1dca20b8..1d3baa557c70 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
@@ -537,6 +537,23 @@ mpu6500@68 {
        };
 };
 
+&i2c4 {
+       af8133j: compass@1c {
+               compatible = "voltafield,af8133j";
+               reg = <0x1c>;
+               avdd-supply = <&vcc_3v0>;
+               dvdd-supply = <&vcc_1v8>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&compass_rst_l>;
+               reset-gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_LOW>;
+
+               mount-matrix =
+                       "0", "1", "0",
+                       "-1", "0", "0",
+                       "0", "0", "1";
+       };
+};
+
 &io_domains {
        bt656-supply = <&vcc1v8_dvp>;
        audio-supply = <&vcca1v8_codec>;
@@ -649,6 +666,12 @@ dvp_pdn0_h: dvp-pdn0-h {
                };
        };
 
+       compass {
+               compass_rst_l: compass-rst-l {
+                       rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
+               };
+       };
+
        leds {
                red_led_pin: red-led-pin {
                        rockchip,pins = <4 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;

-- 
2.52.0



Reply via email to