diff mbox series

[v6,8/8] aspeed: add the pc9552 chips to the witherspoon machine

Message ID 20171019163546.2039-9-clg@kaod.org
State New
Headers show
Series aspeed: add a witherspoon-bmc machine | expand

Commit Message

Cédric Le Goater Oct. 19, 2017, 4:35 p.m. UTC
The pca9552 LED blinkers on the Witherspoon machine are used for leds
but also as GPIOs to control fans and GPUs.

Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
---
 hw/arm/aspeed.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Philippe Mathieu-Daudé Oct. 20, 2017, 2:59 a.m. UTC | #1
On 10/19/2017 01:35 PM, Cédric Le Goater wrote:
> The pca9552 LED blinkers on the Witherspoon machine are used for leds
> but also as GPIOs to control fans and GPUs.
> 
> Signed-off-by: Cédric Le Goater <clg@kaod.org>
> Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
> ---
>  hw/arm/aspeed.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
> index df7f266800ba..0e2a4fa62c26 100644
> --- a/hw/arm/aspeed.c
> +++ b/hw/arm/aspeed.c
> @@ -397,6 +397,8 @@ static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
>      AspeedSoCState *soc = &bmc->soc;
>      uint8_t *eeprom_buf = g_malloc0(8 * 1024);
>  
> +    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 3), "pca9552", 0x60);

TYPE_PCA9552 ?

> +
>      i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 4), "tmp423", 0x4c);
>      i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 5), "tmp423", 0x4c);
>  
> @@ -409,6 +411,8 @@ static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
>  
>      smbus_eeprom_init_one(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), 0x51,
>                            eeprom_buf);
> +    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), "pca9552",

ditto

> +                     0x60);
>  }
>  
>  static void witherspoon_bmc_init(MachineState *machine)
> 

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Cédric Le Goater Oct. 20, 2017, 6:15 a.m. UTC | #2
On 10/20/2017 04:59 AM, Philippe Mathieu-Daudé wrote:
> On 10/19/2017 01:35 PM, Cédric Le Goater wrote:
>> The pca9552 LED blinkers on the Witherspoon machine are used for leds
>> but also as GPIOs to control fans and GPUs.
>>
>> Signed-off-by: Cédric Le Goater <clg@kaod.org>
>> Reviewed-by: Andrew Jeffery <andrew@aj.id.au>
>> ---
>>  hw/arm/aspeed.c | 4 ++++
>>  1 file changed, 4 insertions(+)
>>
>> diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
>> index df7f266800ba..0e2a4fa62c26 100644
>> --- a/hw/arm/aspeed.c
>> +++ b/hw/arm/aspeed.c
>> @@ -397,6 +397,8 @@ static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
>>      AspeedSoCState *soc = &bmc->soc;
>>      uint8_t *eeprom_buf = g_malloc0(8 * 1024);
>>  
>> +    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 3), "pca9552", 0x60);
> 
> TYPE_PCA9552 ?

I expect one day that the full "pca9550,1,2,3" device family will 
exist and I am not sure there is much point in adding a define for 
each. I should probably remove the TYPE_PCA9552.

Thanks,

C. 

>> +
>>      i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 4), "tmp423", 0x4c);
>>      i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 5), "tmp423", 0x4c);
>>  
>> @@ -409,6 +411,8 @@ static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
>>  
>>      smbus_eeprom_init_one(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), 0x51,
>>                            eeprom_buf);
>> +    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), "pca9552",
> 
> ditto
> 
>> +                     0x60);
>>  }
>>  
>>  static void witherspoon_bmc_init(MachineState *machine)
>>
> 
> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>
diff mbox series

Patch

diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index df7f266800ba..0e2a4fa62c26 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -397,6 +397,8 @@  static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
     AspeedSoCState *soc = &bmc->soc;
     uint8_t *eeprom_buf = g_malloc0(8 * 1024);
 
+    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 3), "pca9552", 0x60);
+
     i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 4), "tmp423", 0x4c);
     i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 5), "tmp423", 0x4c);
 
@@ -409,6 +411,8 @@  static void witherspoon_bmc_i2c_init(AspeedBoardState *bmc)
 
     smbus_eeprom_init_one(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), 0x51,
                           eeprom_buf);
+    i2c_create_slave(aspeed_i2c_get_bus(DEVICE(&soc->i2c), 11), "pca9552",
+                     0x60);
 }
 
 static void witherspoon_bmc_init(MachineState *machine)