In message: [linux-yocto][v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc][PATCH] 
arm64: dts: versal: add i2c devices
on 14/08/2023 quanyang.w...@windriver.com wrote:

> From: Quanyang Wang <quanyang.w...@windriver.com>
> 
> The vck190/vmk180 boards are equipped with i2c devices:
>   - GPIO Expander: TCA6416
>   - I2C Switch: PCA9548
>   - Programmable XO/VCXO: SI570
>   - EEPROM: M24128-BR
>   - System Synchronizer for IEEE 1588: 8A34001
>   - Current & Power Monitor: INA226
>   - Fan Speed Controller: MAX6643
> 
> This patch add listed devices to dts.
> 
> Signed-off-by: Quanyang Wang <quanyang.w...@windriver.com>
> Signed-off-by: Bruce Ashfield <bruce.ashfi...@gmail.com>
> ---
> Hi Bruce,
> Would you please help merge this patch to the branches:
>       v6.1/standard/preempt-rt/sdkv6.1/xlnx-soc
>       v6.1/standard/sdkv6.1/xlnx-soc

merged.

Bruce

> Thanks,
> Quanyang
> ---
>  .../boot/dts/xilinx/versal-vmk180-revA.dts    | 327 ++++++++++++++++++
>  1 file changed, 327 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/xilinx/versal-vmk180-revA.dts 
> b/arch/arm64/boot/dts/xilinx/versal-vmk180-revA.dts
> index 10c67c9339d3..db394ac081ac 100644
> --- a/arch/arm64/boot/dts/xilinx/versal-vmk180-revA.dts
> +++ b/arch/arm64/boot/dts/xilinx/versal-vmk180-revA.dts
> @@ -118,10 +118,337 @@ &gem1 { /* PMC_MIO_49, LPD_MIO12-23 */
>  
>  &i2c0 { /* PMC_MIO46/47 */
>       status = "okay";
> +
> +     tca6416_u233: gpio@20 {
> +             compatible = "ti,tca6416";
> +             reg = <0x20>;
> +             gpio-controller; /* IRQ not connected */
> +             #gpio-cells = <2>;
> +             gpio-line-names = "MAX6643_OT_B", "MAX6643_FANFAIL_B", "", "", 
> "PMBUS2_INA226_ALERT", "", "",
> +                             "MAX6643_FULLSPD", "FMCP1_FMC_PRSNT_M2C_B", 
> "FMCP2_FMC_PRSNT_M2C_B",
> +                             "FMCP1_FMCP_PRSNT_M2C_B", 
> "FMCP2_FMCP_PRSNT_M2C_B", "VCCINT_VRHOT_B",
> +                             "8A34001_EXP_RST_B", "PMBUS_ALERT", 
> "PMBUS1_INA226_ALERT";
> +     };
> +
> +     i2c-mux@74 {
> +             compatible = "nxp,pca9548"; /* u33 */
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +             reg = <0x74>;
> +
> +             i2c@0 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <0>;
> +                     /* PMBUS */
> +             };
> +             i2c@1 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <1>;
> +                     /* PMBUS1_INA226 */
> +                     u65: ina226@40 { /* u65 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u65";
> +                             reg = <0x40>;
> +                             shunt-resistor = <500>; /* R440 */
> +                     };
> +                     u161: ina226@41 { /* u161 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u161";
> +                             reg = <0x41>;
> +                             shunt-resistor = <500>; /* R1702 */
> +                     };
> +                     u163: ina226@42 { /* u163 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u163";
> +                             reg = <0x42>;
> +                             shunt-resistor = <5000>; /* R1214 */
> +                     };
> +                     u162: ina226@43 { /* u162 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u162";
> +                             reg = <0x43>;
> +                             shunt-resistor = <5000>; /* R1221 */
> +                     };
> +                     u165: ina226@44 { /* u165 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u165";
> +                             reg = <0x44>;
> +                             shunt-resistor = <5000>; /* R1216 */
> +                     };
> +                     u164: ina226@45 { /* u164 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u164";
> +                             reg = <0x45>;
> +                             shunt-resistor = <5000>; /* R1219 */
> +                     };
> +             };
> +             /* 2 unconnected */
> +             i2c@3 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <3>;
> +                     /* PMBUS2_INA226 */
> +                     u166: ina226@40 { /* u166 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u166";
> +                             reg = <0x40>;
> +                             shunt-resistor = <5000>; /* R382 */
> +                     };
> +                     u168: ina226@41 { /* u168 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u168";
> +                             reg = <0x41>;
> +                             shunt-resistor = <5000>; /* R1246 */
> +                     };
> +                     u172: ina226@45 { /* u172 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u172";
> +                             reg = <0x45>;
> +                             shunt-resistor = <5000>; /* R1229 */
> +                     };
> +                     u173: ina226@46 { /* u173 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u173";
> +                             reg = <0x46>;
> +                             shunt-resistor = <5000>; /* R400 */
> +                     };
> +                     u174: ina226@47 { /* u174 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u174";
> +                             reg = <0x47>;
> +                             shunt-resistor = <5000>; /* R1232 */
> +                     };
> +                     u176: ina226@48 { /* u176 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u176";
> +                             reg = <0x48>;
> +                             shunt-resistor = <5000>; /* R1275 */
> +                     };
> +                     u177: ina226@49 { /* u177 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u177";
> +                             reg = <0x49>;
> +                             shunt-resistor = <5000>; /* R1286 */
> +                     };
> +                     u184: ina226@4a { /* u184 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u184";
> +                             reg = <0x4a>;
> +                             shunt-resistor = <2000>; /* R1350 */
> +                     };
> +                     u186: ina226@4b { /* u186 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u186";
> +                             reg = <0x4b>;
> +                             shunt-resistor = <2000>; /* R1367 */
> +                     };
> +                     u188: ina226@4c { /* u188 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u188";
> +                             reg = <0x4c>;
> +                             shunt-resistor = <2000>; /* R1384 */
> +                     };
> +                     u234: ina226@4d { /* u234 */
> +                             compatible = "ti,ina226";
> +                             #io-channel-cells = <1>;
> +                             label = "ina226-u234";
> +                             reg = <0x4d>;
> +                             shunt-resistor = <5000>; /* R1679 */
> +                     };
> +             };
> +             /* 4 unconnected */
> +             i2c@5 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <5>;
> +                     /* zSFP_SI570 */
> +                     zSFP_si570: clock-generator@5d { /* zSFP SI570 - u192 */
> +                             #clock-cells = <0>;
> +                             compatible = "silabs,si570";
> +                             reg = <0x5d>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <156250000>;
> +                             clock-frequency = <156250000>;
> +                             clock-output-names = "zSFP_si570";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@6 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <6>;
> +                     /* USER_SI570_1_CLOCK */
> +                     user_si570_1: clock-generator@5f { /* USER SI570 - u205 
> */
> +                             #clock-cells = <0>;
> +                             compatible = "silabs,si570";
> +                             reg = <0x5f>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <100000000>;
> +                             clock-frequency = <100000000>;
> +                             clock-output-names = "user_si570_1";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             /* 7 unconnected */
> +     };
>  };
>  
>  &i2c1 { /* PMC_MIO44/45 */
>       status = "okay";
> +
> +     i2c-mux@74 { /* u35 */
> +             compatible = "nxp,pca9548";
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +             reg = <0x74>;
> +             i2c@0 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <0>;
> +                     eeprom: eeprom@54 { /* u34 */
> +                             compatible = "atmel,24c128";
> +                             reg = <0x54>;
> +                     };
> +                     /* SI570_REF_CLK */
> +                     si570_ref_clk: clock-generator@5d { /* 33.333 MHz SI570 
> - u32 */
> +                             #clock-cells = <0>;
> +                             compatible = "silabs,si570";
> +                             reg = <0x5d>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <33333333>;
> +                             clock-frequency = <33333333>;
> +                             clock-output-names = "si570_ref_clk";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@1 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <1>;
> +                     /* FMCP1_IIC */
> +             };
> +             i2c@2 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <2>;
> +                     /* FMCP2_IIC */
> +             };
> +             i2c@3 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <3>;
> +                     /* DDR4_DIMM1_SMA_CLK */
> +                     ddr4_dimm1_si570_clk: clock-generator@60 { /* SI570 - 
> u2 */
> +                             #clock-cells = <0>;
> +                             compatible = "silabs,si570";
> +                             reg = <0x60>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <200000000>;
> +                             clock-frequency = <200000000>;
> +                             clock-output-names = "ddr4_dimm1_si570_clk";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@4 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <4>;
> +                     lpddr4_si570_clk2: clock-generator@60 { /* SI570 - u3 */
> +                             compatible = "silabs,si570";
> +                             reg = <0x60>;
> +                             #clock-cells = <0>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <200000000>;
> +                             clock-frequency = <200000000>;
> +                             clock-output-names = "lpddr4_si570_clk2";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@5 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <5>;
> +                     lpddr4_si570_clk1: clock-generator@60 { /* SI570 - u4 */
> +                             compatible = "silabs,si570";
> +                             reg = <0x60>;
> +                             #clock-cells = <0>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <200000000>;
> +                             clock-frequency = <200000000>;
> +                             clock-output-names = "lpddr4_si570_clk1";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@6 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <6>;
> +                     hsdp_si570: clock-generator@5d { /* HSDP SI570 - u5 */
> +                             compatible = "silabs,si570";
> +                             reg = <0x5d>;
> +                             #clock-cells = <0>;
> +                             temperature-stability = <50>;
> +                             factory-fout = <156250000>;
> +                             clock-frequency = <156250000>;
> +                             clock-output-names = "hsdp_si570";
> +                             silabs,skip-recall; /* Do not reset */
> +                     };
> +             };
> +             i2c@7 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <7>;
> +                     idt_8a34001: phc@5b { /* u219 */
> +                             compatible = "idt,8a34001";
> +                             reg = <0x5b>;
> +                     };
> +             };
> +     };
> +
> +     i2c-mux@75 {
> +             compatible = "nxp,pca9548"; /* u214 */
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +             reg = <0x75>;
> +
> +             i2c@0 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <0>;
> +                     /* SFP0_IIC */
> +             };
> +             i2c@1 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <1>;
> +                     /* SFP1_IIC */
> +             };
> +             i2c@2 {
> +                     #address-cells = <1>;
> +                     #size-cells = <0>;
> +                     reg = <2>;
> +                     /* QSPF1_IIC */
> +             };
> +             /* 3 - 7 unconnected */
> +     };
>  };
>  
>  &usb0 { /* PMC_MIO13_500 - PMC_MIO25 USB 2.0 */
> -- 
> 2.36.1
> 
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#12971): 
https://lists.yoctoproject.org/g/linux-yocto/message/12971
Mute This Topic: https://lists.yoctoproject.org/mt/100729453/21656
Group Owner: linux-yocto+ow...@lists.yoctoproject.org
Unsubscribe: 
https://lists.yoctoproject.org/g/linux-yocto/leave/6687884/21656/624485779/xyzzy
 [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to