]> git.ipfire.org Git - thirdparty/openwrt.git/blob
38c1d3b9b6e4084c0d2fa77af6162e10f779e5a5
[thirdparty/openwrt.git] /
1 From 6e4ad40811170653431fc40a6fdc3f486863b40f Mon Sep 17 00:00:00 2001
2 From: Dave Stevenson <dave.stevenson@raspberrypi.com>
3 Date: Thu, 4 Jul 2024 18:15:00 +0100
4 Subject: [PATCH 1163/1215] dts: Make camN_reg and camN_reg_gpio overrides
5 generic
6
7 The camera regulator GPIO can be used for other purposes,
8 so the camN_reg override to allow disabling is potentially
9 useful on any platform.
10 camN_gpio is less useful, but isn't invalid.
11
12 Move these overrides from the CM dt files to bcm270x-rpi.dtsi
13 and bcm2712-rpi.dtsi.
14
15 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
16 ---
17 .../arm/boot/dts/broadcom/bcm2708-rpi-cm.dtsi | 4 ----
18 .../arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts | 4 ----
19 arch/arm/boot/dts/broadcom/bcm270x-rpi.dtsi | 7 +++++++
20 .../arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts | 4 ----
21 .../arm/boot/dts/broadcom/bcm2711-rpi-cm4.dts | 7 -------
22 .../boot/dts/broadcom/bcm2711-rpi-cm4s.dts | 5 -----
23 arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi | 8 ++++++++
24 arch/arm/boot/dts/overlays/README | 20 +++++++++----------
25 8 files changed, 25 insertions(+), 34 deletions(-)
26
27 --- a/arch/arm/boot/dts/broadcom/bcm2708-rpi-cm.dtsi
28 +++ b/arch/arm/boot/dts/broadcom/bcm2708-rpi-cm.dtsi
29 @@ -19,9 +19,5 @@ i2c_vc: &i2c0 {
30 act_led_gpio = <&led_act>,"gpios:4";
31 act_led_activelow = <&led_act>,"gpios:8";
32 act_led_trigger = <&led_act>,"linux,default-trigger";
33 - cam0_reg = <&cam0_reg>,"status";
34 - cam0_reg_gpio = <&cam0_reg>,"gpio:4";
35 - cam1_reg = <&cam1_reg>,"status";
36 - cam1_reg_gpio = <&cam1_reg>,"gpio:4";
37 };
38 };
39 --- a/arch/arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts
40 +++ b/arch/arm/boot/dts/broadcom/bcm2709-rpi-cm2.dts
41 @@ -211,9 +211,5 @@ i2c_csi_dsi0: &i2c0 {
42 act_led_gpio = <&led_act>,"gpios:4";
43 act_led_activelow = <&led_act>,"gpios:8";
44 act_led_trigger = <&led_act>,"linux,default-trigger";
45 - cam0_reg = <&cam0_reg>,"status";
46 - cam0_reg_gpio = <&cam0_reg>,"gpio:4";
47 - cam1_reg = <&cam1_reg>,"status";
48 - cam1_reg_gpio = <&cam1_reg>,"gpio:4";
49 };
50 };
51 --- a/arch/arm/boot/dts/broadcom/bcm270x-rpi.dtsi
52 +++ b/arch/arm/boot/dts/broadcom/bcm270x-rpi.dtsi
53 @@ -111,6 +111,13 @@
54 <&csi0>, "sync-gpios:4",
55 <&csi0>, "sync-gpios:8=", <GPIO_ACTIVE_LOW>;
56
57 + cam0_reg = <&cam0_reg>,"status";
58 + cam0_reg_gpio = <&cam0_reg>,"gpio:4",
59 + <&cam0_reg>,"gpio:0=", <&gpio>;
60 + cam1_reg = <&cam1_reg>,"status";
61 + cam1_reg_gpio = <&cam1_reg>,"gpio:4",
62 + <&cam1_reg>,"gpio:0=", <&gpio>;
63 +
64 strict_gpiod = <&chosen>, "bootargs=pinctrl_bcm2835.persist_gpio_outputs=n";
65 };
66 };
67 --- a/arch/arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts
68 +++ b/arch/arm/boot/dts/broadcom/bcm2710-rpi-cm3.dts
69 @@ -211,9 +211,5 @@ i2c_csi_dsi0: &i2c0 {
70 act_led_gpio = <&led_act>,"gpios:4";
71 act_led_activelow = <&led_act>,"gpios:8";
72 act_led_trigger = <&led_act>,"linux,default-trigger";
73 - cam0_reg = <&cam0_reg>,"status";
74 - cam0_reg_gpio = <&cam0_reg>,"gpio:4";
75 - cam1_reg = <&cam1_reg>,"status";
76 - cam1_reg_gpio = <&cam1_reg>,"gpio:4";
77 };
78 };
79 --- a/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4.dts
80 +++ b/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4.dts
81 @@ -498,13 +498,6 @@ i2c_csi_dsi0: &i2c0 {
82 <&ant2>, "output-high?=off",
83 <&ant2>, "output-low?=on";
84
85 - cam0_reg = <&cam0_reg>,"status";
86 - cam0_reg_gpio = <&cam0_reg>,"gpio:4",
87 - <&cam0_reg>,"gpio:0=", <&gpio>;
88 - cam1_reg = <&cam1_reg>,"status";
89 - cam1_reg_gpio = <&cam1_reg>,"gpio:4",
90 - <&cam1_reg>,"gpio:0=", <&gpio>;
91 -
92 pcie_tperst_clk_ms = <&pcie0>,"brcm,tperst-clk-ms:0";
93 };
94 };
95 --- a/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4s.dts
96 +++ b/arch/arm/boot/dts/broadcom/bcm2711-rpi-cm4s.dts
97 @@ -289,10 +289,5 @@ i2c_csi_dsi0: &i2c0 {
98 act_led_gpio = <&led_act>,"gpios:4";
99 act_led_activelow = <&led_act>,"gpios:8";
100 act_led_trigger = <&led_act>,"linux,default-trigger";
101 -
102 - cam0_reg = <&cam0_reg>,"status";
103 - cam0_reg_gpio = <&cam0_reg>,"gpio:4";
104 - cam1_reg = <&cam1_reg>,"status";
105 - cam1_reg_gpio = <&cam1_reg>,"gpio:4";
106 };
107 };
108 --- a/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi
109 +++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi.dtsi
110 @@ -106,6 +106,14 @@
111 nvmem_priv_rw = <&nvmem_priv>,"rw?";
112 nvmem_mac_rw = <&nvmem_mac>,"rw?";
113 strict_gpiod = <&chosen>, "bootargs=pinctrl_rp1.persist_gpio_outputs=n";
114 +
115 + cam0_reg = <&cam0_reg>,"status";
116 + cam0_reg_gpio = <&cam0_reg>,"gpio:4",
117 + <&cam0_reg>,"gpio:0=", <&gpio>;
118 + cam1_reg = <&cam1_reg>,"status";
119 + cam1_reg_gpio = <&cam1_reg>,"gpio:4",
120 + <&cam1_reg>,"gpio:0=", <&gpio>;
121 +
122 };
123 };
124
125 --- a/arch/arm/boot/dts/overlays/README
126 +++ b/arch/arm/boot/dts/overlays/README
127 @@ -171,21 +171,21 @@ Params:
128 button_debounce Set the debounce delay (in ms) on the power/
129 shutdown button (default 50ms)
130
131 - cam0_reg Enables CAM 0 regulator.
132 - Only required on CM1 & 3.
133 + cam0_reg Controls CAM 0 regulator.
134 + Disabled by default on CM1 & 3.
135 + Enabled by default on all other boards.
136
137 cam0_reg_gpio Set GPIO for CAM 0 regulator.
138 - Default 31 on CM1, 3, and 4S.
139 - Default of GPIO expander 5 on CM4, but override
140 - switches to normal GPIO.
141 + NB override switches to the normal GPIO driver,
142 + even if the original was on the GPIO expander.
143
144 - cam1_reg Enables CAM 1 regulator.
145 - Only required on CM1 & 3.
146 + cam1_reg Controls CAM 1 regulator.
147 + Disabled by default on CM1 & 3.
148 + Enabled by default on all other boards.
149
150 cam1_reg_gpio Set GPIO for CAM 1 regulator.
151 - Default 3 on CM1, 3, and 4S.
152 - Default of GPIO expander 5 on CM4, but override
153 - switches to normal GPIO.
154 + NB override switches to the normal GPIO driver,
155 + even if the original was on the GPIO expander.
156
157 cam0_sync Enable a GPIO to reflect frame sync from CSI0,
158 going high on frame start, and low on frame end.