From 64366caebbc0dd7e61349f1c6c3e685f9f699ee7 Mon Sep 17 00:00:00 2001 From: Alvin Xie Date: Thu, 11 Apr 2024 16:04:03 +0800 Subject: [PATCH] radxa cm3i io: modify camera config for dual cameras Signed-off-by: Alvin Xie --- .../radxa-cm3i-io-radxa-camera-8m-cam1.dts | 38 +++---- .../radxa-cm3i-io-radxa-camera-8m-cam2.dts | 100 +++++++++++------ .../radxa-cm3i-io-rpi-camera-v1p3-cam1.dts | 35 +++--- .../radxa-cm3i-io-rpi-camera-v1p3-cam2.dts | 100 +++++++++++++---- .../radxa-cm3i-io-rpi-camera-v2-cam1.dts | 36 ++----- .../radxa-cm3i-io-rpi-camera-v2-cam2.dts | 102 ++++++++++++------ 6 files changed, 260 insertions(+), 151 deletions(-) diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam1.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam1.dts index 7cbe2273..572fe6b8 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam1.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam1.dts @@ -15,24 +15,22 @@ }; &{/} { - ext_cam_clk_imx219: ext-cam-clk-imx219 { + ext_cam_clk_imx219_1: ext-cam-clk-imx219-1 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <24000000>; - clock-output-names = "ext_cam_clk_imx219"; + clock-output-names = "ext_cam_clk_imx219_1"; #clock-cells = <0>; }; - camera_pwdn_gpio: camera-pwdn-gpio { + imx219_1_pwdn_gpio: imx219-1-pwdn-gpio { status = "okay"; compatible = "regulator-fixed"; - regulator-name = "camera_pwdn_gpio"; + regulator-name = "imx219_1_pwdn_gpio"; regulator-always-on; regulator-boot-on; enable-active-high; - pwdn-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&cam_pwdn_gpio>; + gpio = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; }; }; @@ -44,23 +42,19 @@ #address-cells = <1>; #size-cells = <0>; - imx219: imx219@10 { + imx219_1: imx219-1@10 { status = "okay"; compatible = "sony,imx219"; reg = <0x10>; - - clocks = <&ext_cam_clk_imx219>; - clock-names = "ext_cam_clk_imx219"; - - rotation = <180>; - - rockchip,camera-module-index = <1>; - rockchip,camera-module-facing = "back"; + clocks = <&ext_cam_clk_imx219_1>; + clock-names = "xvclk"; + rockchip,camera-module-index = <0>; + rockchip,camera-module-facing = "front"; rockchip,camera-module-name = "RADXA-CAMERA-8M"; rockchip,camera-module-lens-name = "default"; port { - imx219_out: endpoint { + imx219_1_out: endpoint { remote-endpoint = <&csi2dphy1_uCAM1>; data-lanes = <1 2>; }; @@ -86,7 +80,7 @@ csi2dphy1_uCAM1: endpoint@1 { reg = <1>; - remote-endpoint = <&imx219_out>; + remote-endpoint = <&imx219_1_out>; data-lanes = <1 2>; }; }; @@ -133,11 +127,3 @@ &rkcif { status = "okay"; }; - -&pinctrl { - camera { - cam_pwdn_gpio: cam-pwdn-gpio { - rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>; - }; - }; -}; diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam2.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam2.dts index c09fe328..2c44da87 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam2.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-radxa-camera-8m-cam2.dts @@ -14,25 +14,23 @@ }; }; -&{/} { - ext_cam_clk_imx219: ext-cam-clk-imx219 { +&{/} { + ext_cam_clk_imx219_2: ext-cam-clk-imx219-2 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <24000000>; - clock-output-names = "ext_cam_clk_imx219"; + clock-output-names = "ext_cam_clk_imx219_2"; #clock-cells = <0>; }; - camera_pwdn_gpio: camera-pwdn-gpio { + imx219_2_pwdn_gpio: imx219-2-pwdn-gpio { status = "okay"; compatible = "regulator-fixed"; - regulator-name = "camera_pwdn_gpio"; + regulator-name = "imx219_2_pwdn_gpio"; regulator-always-on; regulator-boot-on; enable-active-high; - pwdn-gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&cam_pwdn_gpio>; + gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; }; }; @@ -43,24 +41,19 @@ #address-cells = <1>; #size-cells = <0>; - - imx219: imx219@10 { + imx219_2: imx219-2@10 { status = "okay"; compatible = "sony,imx219"; reg = <0x10>; - - clocks = <&ext_cam_clk_imx219>; - clock-names = "ext_cam_clk_imx219"; - - rotation = <180>; - + clocks = <&ext_cam_clk_imx219_2>; + clock-names = "xvclk"; rockchip,camera-module-index = <1>; rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "RADXA-CAMERA-8M"; rockchip,camera-module-lens-name = "default"; port { - imx219_out: endpoint { + imx219_2_out: endpoint { remote-endpoint = <&csi2dphy2_uCAM2>; data-lanes = <1 2>; }; @@ -68,17 +61,15 @@ }; }; -&csi2_dphy_hw { +&csi2_dphy_hw{ status = "okay"; }; &csi2_dphy2 { status = "okay"; - ports { #address-cells = <1>; #size-cells = <0>; - port@0 { reg = <0>; #address-cells = <1>; @@ -86,7 +77,7 @@ csi2dphy2_uCAM2: endpoint@1 { reg = <1>; - remote-endpoint = <&imx219_out>; + remote-endpoint = <&imx219_2_out>; data-lanes = <1 2>; }; }; @@ -98,22 +89,73 @@ csi2dphy2_out: endpoint@1 { reg = <1>; - remote-endpoint = <&isp0_in>; + remote-endpoint = <&mipi_csi2_input>; }; }; }; }; -&rkisp_vir0 { +&mipi_csi2 { + status = "okay"; + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + mipi_csi2_input: endpoint@1 { + reg = <1>; + remote-endpoint = <&csi2dphy2_out>; + data-lanes = <1 2>; + }; + }; + + port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + mipi_csi2_output: endpoint@0 { + reg = <0>; + remote-endpoint = <&cif_mipi_in>; + data-lanes = <1 2>; + }; + }; + }; +}; + +&rkcif_mipi_lvds { + status = "okay"; + port { + cif_mipi_in: endpoint { + remote-endpoint = <&mipi_csi2_output>; + data-lanes = <1 2>; + }; + }; +}; + +&rkcif_mipi_lvds_sditf { + status = "okay"; + port { + mipi_lvds_sditf: endpoint { + remote-endpoint = <&isp1_in>; + data-lanes = <1 2>; + }; + }; +}; + +&rkisp_vir1 { status = "okay"; port { #address-cells = <1>; #size-cells = <0>; - isp0_in: endpoint@0 { + isp1_in: endpoint@0 { reg = <0>; - remote-endpoint = <&csi2dphy2_out>; + remote-endpoint = <&mipi_lvds_sditf>; }; }; }; @@ -133,11 +175,3 @@ &rkcif { status = "okay"; }; - -&pinctrl { - camera { - cam_pwdn_gpio: cam-pwdn-gpio { - rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; - }; - }; -}; diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam1.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam1.dts index 0eefcbe4..353cd1a1 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam1.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam1.dts @@ -6,7 +6,7 @@ / { metadata { - title = "Enable Raspberry Pi Camera v1.3 on CAM1"; + title = "Enable Raspberry Pi Camera v1.3 on CAM1."; compatible = "radxa,cm3i-io"; category = "camera"; exclusive = "csi2_dphy1"; @@ -15,36 +15,47 @@ }; &{/} { - ext_cam_ov5647_clk: external-camera-ov5647-clock { + ext_cam_ov5647_clk_1: ext-cam-ov5647-clk-1 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <25000000>; - clock-output-names = "ext_cam_ov5647_clk"; + clock-output-names = "ext_cam_ov5647_clk_1"; #clock-cells = <0>; }; + + ov5647_1_pwdn_gpio: ov5647-1-pwdn-gpio { + status = "okay"; + compatible = "regulator-fixed"; + regulator-name = "ov5647_1_pwdn_gpio"; + regulator-always-on; + regulator-boot-on; + enable-active-high; + gpio = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>; + }; }; &i2c0 { status = "okay"; pinctrl-names = "default"; + pinctrl-0 = <&i2c0_xfer>; + #address-cells = <1>; #size-cells = <0>; - ov5647: ov5647@36 { + ov5647_1: ov5647-1@36 { status = "okay"; compatible = "ovti,ov5647"; reg = <0x36>; - clocks = <&ext_cam_ov5647_clk>; - clock-names = "ext_cam_ov5647_clk"; - pwdn-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>; + clocks = <&ext_cam_ov5647_clk_1>; + clock-names = "xvclk"; rockchip,camera-module-index = <0>; - rockchip,camera-module-facing = "back"; + rockchip,camera-module-facing = "front"; rockchip,camera-module-name = "rpi-camera-v1p3"; rockchip,camera-module-lens-name = "default"; port { - ov5647_out: endpoint { - remote-endpoint = <&csi2dphy1_ucam1>; + ov5647_1_out: endpoint { + remote-endpoint = <&csi2dphy1_uCAM1>; data-lanes = <1 2>; }; }; @@ -67,9 +78,9 @@ #address-cells = <1>; #size-cells = <0>; - csi2dphy1_ucam1: endpoint@1 { + csi2dphy1_uCAM1: endpoint@1 { reg = <1>; - remote-endpoint = <&ov5647_out>; + remote-endpoint = <&ov5647_1_out>; data-lanes = <1 2>; }; }; diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam2.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam2.dts index 8eda9889..64e87433 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam2.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v1p3-cam2.dts @@ -6,7 +6,7 @@ / { metadata { - title = "Enable Raspberry Pi Camera v1.3 on CAM2"; + title = "Enable Raspberry Pi Camera v1.3 on CAM2."; compatible = "radxa,cm3i-io"; category = "camera"; exclusive = "csi2_dphy2"; @@ -14,63 +14,70 @@ }; }; -&{/} { - ext_cam_ov5647_clk: external-camera-ov5647-clock { +&{/} { + ext_cam_ov5647_clk_2: ext-cam-ov5647-clk-2 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <25000000>; - clock-output-names = "ext_cam_ov5647_clk"; + clock-output-names = "ext_cam_ov5647_clk_2"; #clock-cells = <0>; }; + + ov5647_2_pwdn_gpio: ov5647-2-pwdn-gpio { + status = "okay"; + compatible = "regulator-fixed"; + regulator-name = "ov5647_2_pwdn_gpio"; + regulator-always-on; + regulator-boot-on; + enable-active-high; + gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>; + }; }; &i2c5 { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c5m0_xfer>; + #address-cells = <1>; #size-cells = <0>; - - ov5647_1: ov5647-1@36 { + ov5647_2: ov5647-2@36 { status = "okay"; compatible = "ovti,ov5647"; reg = <0x36>; - clocks = <&ext_cam_ov5647_clk>; - clock-names = "ext_cam_ov5647_clk"; - pwdn-gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_LOW>; - rockchip,camera-module-index = <0>; + clocks = <&ext_cam_ov5647_clk_2>; + clock-names = "xvclk"; + rockchip,camera-module-index = <1>; rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "rpi-camera-v1p3"; rockchip,camera-module-lens-name = "default"; port { - ov5647_out: endpoint { - remote-endpoint = <&csi2dphy2_ucam2>; + ov5647_2_out: endpoint { + remote-endpoint = <&csi2dphy2_uCAM2>; data-lanes = <1 2>; }; }; }; }; -&csi2_dphy_hw { +&csi2_dphy_hw{ status = "okay"; }; &csi2_dphy2 { status = "okay"; - ports { #address-cells = <1>; #size-cells = <0>; - port@0 { reg = <0>; #address-cells = <1>; #size-cells = <0>; - csi2dphy2_ucam2: endpoint@1 { + csi2dphy2_uCAM2: endpoint@1 { reg = <1>; - remote-endpoint = <&ov5647_out>; + remote-endpoint = <&ov5647_2_out>; data-lanes = <1 2>; }; }; @@ -82,22 +89,73 @@ csi2dphy2_out: endpoint@1 { reg = <1>; - remote-endpoint = <&isp0_in>; + remote-endpoint = <&mipi_csi2_input>; + }; + }; + }; +}; + +&mipi_csi2 { + status = "okay"; + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + mipi_csi2_input: endpoint@1 { + reg = <1>; + remote-endpoint = <&csi2dphy2_out>; + data-lanes = <1 2>; }; }; + + port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + mipi_csi2_output: endpoint@0 { + reg = <0>; + remote-endpoint = <&cif_mipi_in>; + data-lanes = <1 2>; + }; + }; + }; +}; + +&rkcif_mipi_lvds { + status = "okay"; + port { + cif_mipi_in: endpoint { + remote-endpoint = <&mipi_csi2_output>; + data-lanes = <1 2>; + }; + }; +}; + +&rkcif_mipi_lvds_sditf { + status = "okay"; + port { + mipi_lvds_sditf: endpoint { + remote-endpoint = <&isp1_in>; + data-lanes = <1 2>; + }; }; }; -&rkisp_vir0 { +&rkisp_vir1 { status = "okay"; port { #address-cells = <1>; #size-cells = <0>; - isp0_in: endpoint@0 { + isp1_in: endpoint@0 { reg = <0>; - remote-endpoint = <&csi2dphy2_out>; + remote-endpoint = <&mipi_lvds_sditf>; }; }; }; diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam1.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam1.dts index 8c2e83f6..39c601c7 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam1.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam1.dts @@ -15,24 +15,22 @@ }; &{/} { - ext_cam_clk_imx219: ext-cam-clk-imx219 { + ext_cam_clk_imx219_1: ext-cam-clk-imx219-1 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <24000000>; - clock-output-names = "ext_cam_clk_imx219"; + clock-output-names = "ext_cam_clk_imx219_1"; #clock-cells = <0>; }; - camera_pwdn_gpio: camera-pwdn-gpio { + imx219_1_pwdn_gpio: imx219-1-pwdn-gpio { status = "okay"; compatible = "regulator-fixed"; - regulator-name = "camera_pwdn_gpio"; + regulator-name = "imx219_1_pwdn_gpio"; regulator-always-on; regulator-boot-on; enable-active-high; - pwdn-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&cam_pwdn_gpio>; + gpio = <&gpio3 RK_PB0 GPIO_ACTIVE_HIGH>; }; }; @@ -44,23 +42,19 @@ #address-cells = <1>; #size-cells = <0>; - imx219: imx219@10 { + imx219_1: imx219-1@10 { status = "okay"; compatible = "sony,imx219"; reg = <0x10>; - - clocks = <&ext_cam_clk_imx219>; - clock-names = "ext_cam_clk_imx219"; - - rotation = <180>; - - rockchip,camera-module-index = <1>; + clocks = <&ext_cam_clk_imx219_1>; + clock-names = "xvclk"; + rockchip,camera-module-index = <0>; rockchip,camera-module-facing = "front"; rockchip,camera-module-name = "rpi-camera-v2"; rockchip,camera-module-lens-name = "default"; port { - imx219_out: endpoint { + imx219_1_out: endpoint { remote-endpoint = <&csi2dphy1_uCAM1>; data-lanes = <1 2>; }; @@ -86,7 +80,7 @@ csi2dphy1_uCAM1: endpoint@1 { reg = <1>; - remote-endpoint = <&imx219_out>; + remote-endpoint = <&imx219_1_out>; data-lanes = <1 2>; }; }; @@ -133,11 +127,3 @@ &rkcif { status = "okay"; }; - -&pinctrl { - camera { - cam_pwdn_gpio: cam-pwdn-gpio { - rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>; - }; - }; -}; diff --git a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam2.dts b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam2.dts index 75fdb415..18efe2b9 100644 --- a/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam2.dts +++ b/arch/arm64/boot/dts/rockchip/overlays/radxa-cm3i-io-rpi-camera-v2-cam2.dts @@ -14,25 +14,23 @@ }; }; -&{/} { - ext_cam_clk_imx219: ext-cam-clk-imx219 { +&{/} { + ext_cam_clk_imx219_2: ext-cam-clk-imx219-2 { status = "okay"; compatible = "fixed-clock"; clock-frequency = <24000000>; - clock-output-names = "ext_cam_clk_imx219"; + clock-output-names = "ext_cam_clk_imx219_2"; #clock-cells = <0>; }; - camera_pwdn_gpio: camera-pwdn-gpio { + imx219_2_pwdn_gpio: imx219-2-pwdn-gpio { status = "okay"; compatible = "regulator-fixed"; - regulator-name = "camera_pwdn_gpio"; + regulator-name = "imx219_2_pwdn_gpio"; regulator-always-on; regulator-boot-on; enable-active-high; - pwdn-gpios = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&cam_pwdn_gpio>; + gpio = <&gpio4 RK_PC5 GPIO_ACTIVE_HIGH>; }; }; @@ -43,24 +41,19 @@ #address-cells = <1>; #size-cells = <0>; - - imx219: imx219@10 { + imx219_2: imx219-2@10 { status = "okay"; compatible = "sony,imx219"; reg = <0x10>; - - clocks = <&ext_cam_clk_imx219>; - clock-names = "ext_cam_clk_imx219"; - - rotation = <180>; - + clocks = <&ext_cam_clk_imx219_2>; + clock-names = "xvclk"; rockchip,camera-module-index = <1>; - rockchip,camera-module-facing = "front"; + rockchip,camera-module-facing = "back"; rockchip,camera-module-name = "rpi-camera-v2"; rockchip,camera-module-lens-name = "default"; port { - imx219_out: endpoint { + imx219_2_out: endpoint { remote-endpoint = <&csi2dphy2_uCAM2>; data-lanes = <1 2>; }; @@ -68,17 +61,15 @@ }; }; -&csi2_dphy_hw { +&csi2_dphy_hw{ status = "okay"; }; &csi2_dphy2 { status = "okay"; - ports { #address-cells = <1>; #size-cells = <0>; - port@0 { reg = <0>; #address-cells = <1>; @@ -86,7 +77,7 @@ csi2dphy2_uCAM2: endpoint@1 { reg = <1>; - remote-endpoint = <&imx219_out>; + remote-endpoint = <&imx219_2_out>; data-lanes = <1 2>; }; }; @@ -98,22 +89,73 @@ csi2dphy2_out: endpoint@1 { reg = <1>; - remote-endpoint = <&isp0_in>; + remote-endpoint = <&mipi_csi2_input>; }; }; }; }; -&rkisp_vir0 { +&mipi_csi2 { + status = "okay"; + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + + mipi_csi2_input: endpoint@1 { + reg = <1>; + remote-endpoint = <&csi2dphy2_out>; + data-lanes = <1 2>; + }; + }; + + port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + mipi_csi2_output: endpoint@0 { + reg = <0>; + remote-endpoint = <&cif_mipi_in>; + data-lanes = <1 2>; + }; + }; + }; +}; + +&rkcif_mipi_lvds { + status = "okay"; + port { + cif_mipi_in: endpoint { + remote-endpoint = <&mipi_csi2_output>; + data-lanes = <1 2>; + }; + }; +}; + +&rkcif_mipi_lvds_sditf { + status = "okay"; + port { + mipi_lvds_sditf: endpoint { + remote-endpoint = <&isp1_in>; + data-lanes = <1 2>; + }; + }; +}; + +&rkisp_vir1 { status = "okay"; port { #address-cells = <1>; #size-cells = <0>; - isp0_in: endpoint@0 { + isp1_in: endpoint@0 { reg = <0>; - remote-endpoint = <&csi2dphy2_out>; + remote-endpoint = <&mipi_lvds_sditf>; }; }; }; @@ -133,11 +175,3 @@ &rkcif { status = "okay"; }; - -&pinctrl { - camera { - cam_pwdn_gpio: cam-pwdn-gpio { - rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>; - }; - }; -};