From: Ondrej Jirman <[email protected]>

Pinephone Pro uses STK3311 according to the schematics.

Tests:
~ $ monitor-sensor --light
    // When the sensor is exposed, it get's fluctating values such as
    Light changed: 1.800000 (lux)
    Light changed: 1.700000 (lux)
    Light changed: 1.800000 (lux)
    Light changed: 1.700000 (lux)
    Light changed: 1.600000 (lux)
    Light changed: 1.100000 (lux)
    // When covering the sensor, it prints a low value and stops printing
    Light changed: 0.200000 (lux)

~ $ monitor-sensor --proximity
    // When it goes away from an object
    Proximity value changed: 0
    // When it comes near an object
    Proximity value changed: 1

Co-developed-by: Martijn Braam <[email protected]>
Signed-off-by: Martijn Braam <[email protected]>
Co-developed-by: Kamil Trzciński <[email protected]>
Signed-off-by: Kamil Trzciński <[email protected]>
Signed-off-by: Ondrej Jirman <[email protected]>
Signed-off-by: Rudraksha Gupta <[email protected]>
---
 arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts 
b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
index 6f97e57f36f5..2d2858ee149e 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-pinephone-pro.dts
@@ -520,6 +520,16 @@ touchscreen@14 {
                touchscreen-size-x = <720>;
                touchscreen-size-y = <1440>;
        };
+
+       light-sensor@48 {
+               compatible = "sensortek,stk3311";
+               proximity-near-level = <300>;
+               reg = <0x48>;
+               interrupt-parent = <&gpio4>;
+               interrupts = <RK_PD3 IRQ_TYPE_EDGE_FALLING>;
+               pinctrl-names = "default";
+               pinctrl-0 = <&light_int_l>;
+       };
 };
 
 &i2c4 {
@@ -689,6 +699,12 @@ vcc1v8_codec_en: vcc1v8-codec-en {
                };
        };
 
+       stk3311 {
+               light_int_l: light-int-l {
+                       rockchip,pins = <4 RK_PD3 RK_FUNC_GPIO 
&pcfg_input_pull_up>;
+               };
+       };
+
        wireless-bluetooth {
                bt_wake_pin: bt-wake-pin {
                        rockchip,pins = <2 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;

-- 
2.52.0



Reply via email to