Skip to content

Commit f2d2200

Browse files
rockosovsuperna9999
authored andcommitted
arm64: dts: amlogic: a1: support all i2c masters and their muxes
A1 SoC family has four i2c masters: i2c0 (I2CM_A), i2c1 (I2CM_B), i2c2 (I2CM_C) and i2c3 (I2CM_D). Signed-off-by: George Stark <gnstark@salutedevices.com> Signed-off-by: Dmitry Rokosov <ddrokosov@salutedevices.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20231006114145.18718-1-ddrokosov@salutedevices.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
1 parent a702d4f commit f2d2200

1 file changed

Lines changed: 144 additions & 0 deletions

File tree

arch/arm64/boot/dts/amlogic/meson-a1.dtsi

Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,106 @@
126126
gpio-ranges = <&periphs_pinctrl 0 0 62>;
127127
};
128128

129+
i2c0_f11_pins: i2c0-f11 {
130+
mux {
131+
groups = "i2c0_sck_f11",
132+
"i2c0_sda_f12";
133+
function = "i2c0";
134+
bias-pull-up;
135+
drive-strength-microamp = <3000>;
136+
};
137+
};
138+
139+
i2c0_f9_pins: i2c0-f9 {
140+
mux {
141+
groups = "i2c0_sck_f9",
142+
"i2c0_sda_f10";
143+
function = "i2c0";
144+
bias-pull-up;
145+
drive-strength-microamp = <3000>;
146+
};
147+
};
148+
149+
i2c1_x_pins: i2c1-x {
150+
mux {
151+
groups = "i2c1_sck_x",
152+
"i2c1_sda_x";
153+
function = "i2c1";
154+
bias-pull-up;
155+
drive-strength-microamp = <3000>;
156+
};
157+
};
158+
159+
i2c1_a_pins: i2c1-a {
160+
mux {
161+
groups = "i2c1_sck_a",
162+
"i2c1_sda_a";
163+
function = "i2c1";
164+
bias-pull-up;
165+
drive-strength-microamp = <3000>;
166+
};
167+
};
168+
169+
i2c2_x0_pins: i2c2-x0 {
170+
mux {
171+
groups = "i2c2_sck_x0",
172+
"i2c2_sda_x1";
173+
function = "i2c2";
174+
bias-pull-up;
175+
drive-strength-microamp = <3000>;
176+
};
177+
};
178+
179+
i2c2_x15_pins: i2c2-x15 {
180+
mux {
181+
groups = "i2c2_sck_x15",
182+
"i2c2_sda_x16";
183+
function = "i2c2";
184+
bias-pull-up;
185+
drive-strength-microamp = <3000>;
186+
};
187+
};
188+
189+
i2c2_a4_pins: i2c2-a4 {
190+
mux {
191+
groups = "i2c2_sck_a4",
192+
"i2c2_sda_a5";
193+
function = "i2c2";
194+
bias-pull-up;
195+
drive-strength-microamp = <3000>;
196+
};
197+
};
198+
199+
i2c2_a8_pins: i2c2-a8 {
200+
mux {
201+
groups = "i2c2_sck_a8",
202+
"i2c2_sda_a9";
203+
function = "i2c2";
204+
bias-pull-up;
205+
drive-strength-microamp = <3000>;
206+
};
207+
};
208+
209+
i2c3_x_pins: i2c3-x {
210+
mux {
211+
groups = "i2c3_sck_x",
212+
"i2c3_sda_x";
213+
function = "i2c3";
214+
bias-pull-up;
215+
drive-strength-microamp = <3000>;
216+
};
217+
};
218+
219+
i2c3_f_pins: i2c3-f {
220+
mux {
221+
groups = "i2c3_sck_f",
222+
"i2c3_sda_f";
223+
function = "i2c3";
224+
bias-pull-up;
225+
drive-strength-microamp = <3000>;
226+
};
227+
};
228+
129229
uart_a_pins: uart-a {
130230
mux {
131231
groups = "uart_a_tx",
@@ -207,6 +307,17 @@
207307
"hifi_pll", "xtal";
208308
};
209309

310+
i2c0: i2c@1400 {
311+
compatible = "amlogic,meson-axg-i2c";
312+
status = "disabled";
313+
reg = <0x0 0x1400 0x0 0x20>;
314+
interrupts = <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>;
315+
#address-cells = <1>;
316+
#size-cells = <0>;
317+
clocks = <&clkc_periphs CLKID_I2C_M_A>;
318+
power-domains = <&pwrc PWRC_I2C_ID>;
319+
};
320+
210321
uart_AO: serial@1c00 {
211322
compatible = "amlogic,meson-a1-uart",
212323
"amlogic,meson-ao-uart";
@@ -243,6 +354,39 @@
243354
status = "disabled";
244355
};
245356

357+
i2c1: i2c@5c00 {
358+
compatible = "amlogic,meson-axg-i2c";
359+
status = "disabled";
360+
reg = <0x0 0x5c00 0x0 0x20>;
361+
interrupts = <GIC_SPI 68 IRQ_TYPE_EDGE_RISING>;
362+
#address-cells = <1>;
363+
#size-cells = <0>;
364+
clocks = <&clkc_periphs CLKID_I2C_M_B>;
365+
power-domains = <&pwrc PWRC_I2C_ID>;
366+
};
367+
368+
i2c2: i2c@6800 {
369+
compatible = "amlogic,meson-axg-i2c";
370+
status = "disabled";
371+
reg = <0x0 0x6800 0x0 0x20>;
372+
interrupts = <GIC_SPI 76 IRQ_TYPE_EDGE_RISING>;
373+
#address-cells = <1>;
374+
#size-cells = <0>;
375+
clocks = <&clkc_periphs CLKID_I2C_M_C>;
376+
power-domains = <&pwrc PWRC_I2C_ID>;
377+
};
378+
379+
i2c3: i2c@6c00 {
380+
compatible = "amlogic,meson-axg-i2c";
381+
status = "disabled";
382+
reg = <0x0 0x6c00 0x0 0x20>;
383+
interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>;
384+
#address-cells = <1>;
385+
#size-cells = <0>;
386+
clocks = <&clkc_periphs CLKID_I2C_M_D>;
387+
power-domains = <&pwrc PWRC_I2C_ID>;
388+
};
389+
246390
usb2_phy1: phy@4000 {
247391
compatible = "amlogic,a1-usb2-phy";
248392
clocks = <&clkc_periphs CLKID_USB_PHY_IN>;

0 commit comments

Comments
 (0)