@ -119,6 +119,18 @@ static void raa228000_exit_reset(Object *obj)
pmdev - > pages [ 0 ] . read_temperature_3 = 0 ;
pmdev - > pages [ 0 ] . read_temperature_3 = 0 ;
}
}
static void isl69259_exit_reset ( Object * obj )
{
ISLState * s = ISL69260 ( obj ) ;
static const uint8_t ic_device_id [ ] = { 0x04 , 0x00 , 0x81 , 0xD2 , 0x49 , 0x3c } ;
g_assert ( sizeof ( ic_device_id ) < = sizeof ( s - > ic_device_id ) ) ;
isl_pmbus_vr_exit_reset ( obj ) ;
s - > ic_device_id_len = sizeof ( ic_device_id ) ;
memcpy ( s - > ic_device_id , ic_device_id , sizeof ( ic_device_id ) ) ;
}
static void isl_pmbus_vr_add_props ( Object * obj , uint64_t * flags , uint8_t pages )
static void isl_pmbus_vr_add_props ( Object * obj , uint64_t * flags , uint8_t pages )
{
{
PMBusDevice * pmdev = PMBUS_DEVICE ( obj ) ;
PMBusDevice * pmdev = PMBUS_DEVICE ( obj ) ;
@ -257,6 +269,21 @@ static void raa229004_class_init(ObjectClass *klass, void *data)
isl_pmbus_vr_class_init ( klass , data , 2 ) ;
isl_pmbus_vr_class_init ( klass , data , 2 ) ;
}
}
static void isl69259_class_init ( ObjectClass * klass , void * data )
{
ResettableClass * rc = RESETTABLE_CLASS ( klass ) ;
DeviceClass * dc = DEVICE_CLASS ( klass ) ;
dc - > desc = " Renesas ISL69259 Digital Multiphase Voltage Regulator " ;
rc - > phases . exit = isl69259_exit_reset ;
isl_pmbus_vr_class_init ( klass , data , 2 ) ;
}
static const TypeInfo isl69259_info = {
. name = TYPE_ISL69259 ,
. parent = TYPE_ISL69260 ,
. class_init = isl69259_class_init ,
} ;
static const TypeInfo isl69260_info = {
static const TypeInfo isl69260_info = {
. name = TYPE_ISL69260 ,
. name = TYPE_ISL69260 ,
. parent = TYPE_PMBUS_DEVICE ,
. parent = TYPE_PMBUS_DEVICE ,
@ -283,6 +310,7 @@ static const TypeInfo raa228000_info = {
static void isl_pmbus_vr_register_types ( void )
static void isl_pmbus_vr_register_types ( void )
{
{
type_register_static ( & isl69259_info ) ;
type_register_static ( & isl69260_info ) ;
type_register_static ( & isl69260_info ) ;
type_register_static ( & raa228000_info ) ;
type_register_static ( & raa228000_info ) ;
type_register_static ( & raa229004_info ) ;
type_register_static ( & raa229004_info ) ;