s6: support i2c driver [1/1]

PD#SWPL-156513

Problem:
there is no i2c driver

Solution:
add i2c driver support

Verify:
s6 pxp

Change-Id: I956bce48397aa68da6a4d2f2659419a44c960507
Signed-off-by: Junyi Zhao <junyi.zhao@amlogic.com>
This commit is contained in:
Junyi Zhao
2024-03-07 11:19:14 +08:00
committed by Luan Yuan
parent be71d43c91
commit 57c2d3ba70
+209 -29
View File
@@ -1182,6 +1182,16 @@
status = "disabled";
};
i2c5: i2c@fe067400 {
compatible = "amlogic,meson-i2c";
reg = <0x0 0xfe067400 0x0 0x24>;
interrupts = <GIC_SPI 165 IRQ_TYPE_EDGE_RISING>;
#address-cells = <1>;
#size-cells = <0>;
//clocks = <&clkc CLKID_SYS_I2C_M_F>;
status = "disabled";
};
uart_B: serial@7a000 {
compatible = "amlogic,meson-uart";
reg = <0x0 0x7a000 0x0 0x18>;
@@ -2367,10 +2377,50 @@
&periphs_pinctrl {
i2c0_pins1:i2c0_pins1 {
mux {
groups = "i2c0_sda",
"i2c0_scl";
groups = "i2c0_sda_e",
"i2c0_scl_e";
function = "i2c0";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c0_pins2:i2c0_pins2 {
mux {
groups = "i2c0_sda_z",
"i2c0_scl_z";
function = "i2c0";
drive-strength = <3>;
bias-disable;
};
};
i2c0_pins3:i2c0_pins3 {
mux {
groups = "i2c0_sda_a",
"i2c0_scl_a";
function = "i2c0";
drive-strength = <3>;
bias-disable;
};
};
i2c0_pins4:i2c0_pins4 {
mux {
groups = "i2c0_sda_f",
"i2c0_scl_f";
function = "i2c0";
drive-strength = <3>;
bias-disable;
};
};
i2c0_pins5:i2c0_pins5 {
mux {
groups = "i2c0_sda_d",
"i2c0_scl_d";
function = "i2c0";
drive-strength = <3>;
bias-disable;
};
};
@@ -2380,7 +2430,7 @@
groups = "i2c1_sda_c",
"i2c1_scl_c";
function = "i2c1";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
@@ -2390,17 +2440,17 @@
groups = "i2c1_sda_d",
"i2c1_scl_d";
function = "i2c1";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c1_pins3:i2c1_pins3 {
mux {
groups = "i2c1_sda_h",
"i2c1_scl_h";
groups = "i2c1_sda_a",
"i2c1_scl_a";
function = "i2c1";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
@@ -2410,7 +2460,27 @@
groups = "i2c1_sda_x",
"i2c1_scl_x";
function = "i2c1";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c1_pins5:i2c1_pins5 {
mux {
groups = "i2c1_sda_z3",
"i2c1_scl_z3";
function = "i2c1";
drive-strength = <3>;
bias-disable;
};
};
i2c1_pins5:i2c1_pins5 {
mux {
groups = "i2c1_sda_z3",
"i2c1_scl_z11";
function = "i2c1";
drive-strength = <3>;
bias-disable;
};
};
@@ -2420,67 +2490,137 @@
groups = "i2c2_sda_d",
"i2c2_scl_d";
function = "i2c2";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c2_pins2:i2c2_pins2 {
mux {
groups = "i2c2_sda_h8",
"i2c2_scl_h9";
groups = "i2c2_sda_h",
"i2c2_scl_h";
function = "i2c2";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c2_pins3:i2c2_pins3 {
mux {
groups = "i2c2_sda_h0",
"i2c2_scl_h1";
groups = "i2c2_sda_x",
"i2c2_scl_x";
function = "i2c2";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c2_pins4:i2c2_pins4 {
mux {
groups = "i2c2_sda_a",
"i2c2_scl_a";
function = "i2c2";
drive-strength = <3>;
bias-disable;
};
};
i2c2_pins5:i2c2_pins5 {
mux {
groups = "i2c2_sda_z0",
"i2c2_scl_z1";
function = "i2c2";
drive-strength = <3>;
bias-disable;
};
};
i2c2_pins6:i2c2_pins6 {
mux {
groups = "i2c2_sda_z10",
"i2c2_scl_z11";
function = "i2c2";
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins1:i2c3_pins1 {
mux {
groups = "i2c3_sda_x",
"i2c3_scl_x";
groups = "i2c3_sda_x0",
"i2c3_scl_x1";
function = "i2c3";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins2:i2c3_pins2 {
mux {
groups = "i2c3_sda_z",
"i2c3_scl_z";
groups = "i2c3_sda_f",
"i2c3_scl_f";
function = "i2c3";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins3:i2c3_pins3 {
mux {
groups = "i2c3_sda_h",
"i2c3_scl_h";
function = "i2c3";
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins4:i2c3_pins4 {
mux {
groups = "i2c3_sda_x0",
"i2c3_scl_x1";
function = "i2c3";
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins5:i2c3_pins5 {
mux {
groups = "i2c3_sda_a6",
"i2c3_scl_a7";
function = "i2c3";
drive-strength = <3>;
bias-disable;
};
};
i2c3_pins6:i2c3_pins6 {
mux {
groups = "i2c3_sda_x14",
"i2c3_scl_x15";
function = "i2c3";
drive-strength = <3>;
bias-disable;
};
};
i2c4_pins1:i2c4_pins1 {
mux {
groups = "i2c4_sda_c",
"i2c4_scl_c";
groups = "i2c4_sda_b",
"i2c4_scl_b";
function = "i2c4";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c4_pins2:i2c4_pins2 {
mux {
groups = "i2c4_sda_d",
"i2c4_scl_d";
groups = "i2c4_sda_h",
"i2c4_scl_h";
function = "i2c4";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
@@ -2490,7 +2630,47 @@
groups = "i2c4_sda_z",
"i2c4_scl_z";
function = "i2c4";
drive-strength-microamp = <3000>;
drive-strength = <3>;
bias-disable;
};
};
i2c4_pins4:i2c4_pins4 {
mux {
groups = "i2c4_sda_a",
"i2c4_scl_a";
function = "i2c4";
drive-strength = <3>;
bias-disable;
};
};
i2c5_pins1:i2c5_pins1 {
mux {
groups = "i2c5_sda_z",
"i2c5_scl_z";
function = "i2c5";
drive-strength = <3>;
bias-disable;
};
};
i2c5_pins2:i2c5_pins2 {
mux {
groups = "i2c5_sda_a0",
"i2c5_scl_a11";
function = "i2c5";
drive-strength = <3>;
bias-disable;
};
};
i2c5_pins3:i2c5_pins3 {
mux {
groups = "i2c5_sda_a14",
"i2c5_scl_a15";
function = "i2c5";
drive-strength = <3>;
bias-disable;
};
};