Message ID | 20220627154703.148943-8-quic_jaehyoo@quicinc.com |
---|---|
State | New |
Headers | show |
Series | Add Qualcomm BMC machines | expand |
On 6/27/22 17:47, Jae Hyun Yoo wrote: > Add 2-level cascaded I2C MUXes for SOC VR channels into the Firework > machine. > > Signed-off-by: Jae Hyun Yoo <quic_jaehyoo@quicinc.com> Reviewed-by: Cédric Le Goater <clg@kaod.org> Thanks, C. > --- > Changes in v2: > * None > > hw/arm/aspeed.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c > index cfc322ee30e9..1708a8f3408d 100644 > --- a/hw/arm/aspeed.c > +++ b/hw/arm/aspeed.c > @@ -1002,13 +1002,21 @@ static void qcom_dc_scm_bmc_i2c_init(AspeedMachineState *bmc) > static void qcom_dc_scm_firework_i2c_init(AspeedMachineState *bmc) > { > AspeedSoCState *soc = &bmc->soc; > - I2CSlave *therm_mux; > + I2CSlave *therm_mux, *cpuvr_mux; > > /* Create the generic DC-SCM hardware */ > qcom_dc_scm_bmc_i2c_init(bmc); > > /* Now create the Firework specific hardware */ > > + /* I2C7 CPUVR MUX */ > + cpuvr_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), > + "pca9546", 0x70); > + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 0), "pca9548", 0x72); > + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 1), "pca9548", 0x72); > + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 2), "pca9548", 0x72); > + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 3), "pca9548", 0x72); > + > /* I2C8 Thermal Diodes*/ > therm_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), > "pca9548", 0x70);
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index cfc322ee30e9..1708a8f3408d 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -1002,13 +1002,21 @@ static void qcom_dc_scm_bmc_i2c_init(AspeedMachineState *bmc) static void qcom_dc_scm_firework_i2c_init(AspeedMachineState *bmc) { AspeedSoCState *soc = &bmc->soc; - I2CSlave *therm_mux; + I2CSlave *therm_mux, *cpuvr_mux; /* Create the generic DC-SCM hardware */ qcom_dc_scm_bmc_i2c_init(bmc); /* Now create the Firework specific hardware */ + /* I2C7 CPUVR MUX */ + cpuvr_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 7), + "pca9546", 0x70); + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 0), "pca9548", 0x72); + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 1), "pca9548", 0x72); + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 2), "pca9548", 0x72); + i2c_slave_create_simple(pca954x_i2c_get_bus(cpuvr_mux, 3), "pca9548", 0x72); + /* I2C8 Thermal Diodes*/ therm_mux = i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, 8), "pca9548", 0x70);
Add 2-level cascaded I2C MUXes for SOC VR channels into the Firework machine. Signed-off-by: Jae Hyun Yoo <quic_jaehyoo@quicinc.com> --- Changes in v2: * None hw/arm/aspeed.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)