u-boot/arch/arm/dts/zynqmp-sc-vek280-revA.dtso
Michal Simek 7f3639918f arm64: zynqmp: Describe i2c structures for SCs
Generic system controller (SC) covers connection defined by specification
but different boards have different i2c devices. That's why describe i2c
devices available on multiple boards.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/ca1826b8b58981111229a94527818cc5a191ca9a.1695808407.git.michal.simek@amd.com
2023-10-09 12:12:30 +02:00

230 lines
5.7 KiB
Text

// SPDX-License-Identifier: GPL-2.0
/*
* dts file for Xilinx ZynqMP VEK280 revA
*
* (C) Copyright 2022 - 2023, Advanced Micro Devices, Inc
*
* Michal Simek <michal.simek@amd.com>
*/
#include <dt-bindings/gpio/gpio.h>
/dts-v1/;
/plugin/;
&{/} {
compatible = "xlnx,zynqmp-sc-vek280-revA", "xlnx,zynqmp-vek280-revA",
"xlnx,zynqmp-vek280", "xlnx,zynqmp";
vc7_xin: vc7-xin {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <50000000>;
};
};
&i2c0 {
#address-cells = <1>;
#size-cells = <0>;
tca6416_u233: gpio@20 { /* u233 */
compatible = "ti,tca6416";
reg = <0x20>;
gpio-controller; /* interrupt not connected */
#gpio-cells = <2>;
gpio-line-names = "", "", "SFP_MOD_ABS", "SFP_TX_DISABLE", /* 0 - 3 */
"PMBUS2_INA226_ALERT", "", "", "", /* 4 - 7 */
"FMCP1_FMC_PRSNT_M2C_B", "", "FMCP1_FMCP_PRSNT_M2C_B", "", /* 10 - 13 */
"VCCINT_VRHOT_B", "8A34001_EXP_RST_B", "PMBUS_ALERT", "PMBUS1_INA226_ALERT"; /* 14 - 17 */
};
i2c-mux@74 { /* u33 */
compatible = "nxp,pca9548";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x74>;
/* reset-gpios = <&gpio SYSCTLR_IIC_MUX0_RESET_B GPIO_ACTIVE_HIGH>; */
pmbus_i2c: i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
/* On connector J325 */
ir35215_46: pmic@46 { /* IR35215 - u152 */
compatible = "infineon,ir35215";
reg = <0x46>; /* i2c addr - 0x16 */
};
irps5401_47: pmic5401@47 { /* IRPS5401 - u160 */
compatible = "infineon,irps5401";
reg = <0x47>; /* i2c addr 0x17 */
};
irps5401_48: pmic@48 { /* IRPS5401 - u279 */
compatible = "infineon,irps5401";
reg = <0x48>; /* i2c addr 0x18 */
};
ir38064_49: regulator@49 { /* IR38064 - u295 */
compatible = "infineon,ir38064";
reg = <0x49>; /* i2c addr 0x19 */
};
irps5401_4c: pmic@4c { /* IRPS5401 - u167 */
compatible = "infineon,irps5401";
reg = <0x4c>; /* i2c addr 0x1c */
};
irps5401_4d: pmic@4d { /* IRPS5401 - u175 */
compatible = "infineon,irps5401";
reg = <0x4d>; /* i2c addr 0x1d */
};
ir38060_4e: regulator@4e { /* IR38060 - u282 */
compatible = "infineon,ir38060";
reg = <0x4e>; /* i2c addr 0x1e */
};
};
pmbus1_ina226_i2c: i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
/* alerts coming to u233 and SC */
vccint: ina226@40 { /* u65 */
compatible = "ti,ina226";
reg = <0x40>;
shunt-resistor = <500>; /* r440 */
};
vcc_soc: ina226@41 { /* u161 */
compatible = "ti,ina226";
reg = <0x41>;
shunt-resistor = <500>; /* r1702 */
};
vcc_pmc: ina226@42 { /* u163 */
compatible = "ti,ina226";
reg = <0x42>;
shunt-resistor = <5000>; /* r382 */
};
vcc_ram: ina226@43 { /* u355 */
compatible = "ti,ina226";
reg = <0x43>;
shunt-resistor = <5000>; /* r2417 */
};
vcc_pslp: ina226@44 { /* u165 */
compatible = "ti,ina226";
reg = <0x44>;
shunt-resistor = <5000>; /* r1830 */
};
vcc_psfp: ina226@45 { /* u260 */
compatible = "ti,ina226";
reg = <0x45>;
shunt-resistor = <5000>; /* r2386 */
};
vcco_hdio: ina226@46 { /* u356 */
compatible = "ti,ina226";
reg = <0x46>;
shunt-resistor = <5000>; /* r2392 */
};
};
i2c@2 { /* NC */ /* FIXME maybe remove */
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
};
pmbus2_ina226_i2c: i2c@3 {
#address-cells = <1>;
#size-cells = <0>;
reg = <3>;
/* alerts coming to u233 and SC */
vccaux: ina226@40 { /* u166 */
compatible = "ti,ina226";
reg = <0x40>;
shunt-resistor = <5000>; /* r2384 */
};
vccaux_pmc: ina226@41 { /* u168 */
compatible = "ti,ina226";
reg = <0x41>;
shunt-resistor = <5000>; /* r2000 */
};
mgtavcc: ina226@42 { /* u265 */
compatible = "ti,ina226";
reg = <0x42>;
shunt-resistor = <5000>; /* r1829 */
};
vcc1v5: ina226@43 { /* u264 */
compatible = "ti,ina226";
reg = <0x43>;
shunt-resistor = <5000>; /* r2397 */
};
vcco_mio: ina226@45 { /* u172 */
compatible = "ti,ina226";
reg = <0x45>;
shunt-resistor = <5000>; /* r2401 */
};
mgtavtt: ina226@46 { /* u188 */
compatible = "ti,ina226";
reg = <0x46>;
shunt-resistor = <500>; /* r1384 */
};
vcco_502: ina226@47 { /* u174 */
compatible = "ti,ina226";
reg = <0x47>;
shunt-resistor = <5000>; /* r1994 */
};
mgtvccaux: ina226@48 { /* u176 */
compatible = "ti,ina226";
reg = <0x48>;
shunt-resistor = <5000>; /* r2384 */
};
vcc1v1_lp4: ina226@49 { /* u306 */
compatible = "ti,ina226";
reg = <0x49>;
shunt-resistor = <500>; /* r2064 */
};
vadj_fmc: ina226@4a { /* u281 */
compatible = "ti,ina226";
reg = <0x4a>;
shunt-resistor = <5000>; /* r2031 */
};
lpdmgtyavcc: ina226@4b { /* u177 */
compatible = "ti,ina226";
reg = <0x4b>;
shunt-resistor = <5000>; /* r2004 */
};
lpdmgtyavtt: ina226@4c { /* u309 */
compatible = "ti,ina226";
reg = <0x4c>;
shunt-resistor = <5000>; /* r1229 */
};
lpdmgtyvccaux: ina226@4d { /* u234 */
compatible = "ti,ina226";
reg = <0x4d>;
shunt-resistor = <5000>; /* r1679 */
};
};
i2c@4 { /* NC */ /* FIXME maybe remove */
#address-cells = <1>;
#size-cells = <0>;
reg = <4>;
};
rc21008a_gtclk1: i2c@5 {
#address-cells = <1>;
#size-cells = <0>;
reg = <5>;
/* connector j374 */
/* rc21008a at 0x9 u299 */
vc7: clock-generator@9 {
compatible = "renesas,rc21008a";
reg = <0x9>;
#clock-cells = <1>;
clocks = <&vc7_xin>;
clock-names = "xin";
};
};
fmcp1_iic: i2c@6 {
#address-cells = <1>;
#size-cells = <0>;
reg = <6>;
/* to j51c */
};
sfp: i2c@7 {
#address-cells = <1>;
#size-cells = <0>;
reg = <7>;
/* sfp+ connector J376 */
};
};
};