--- qemu/hw/ssd0323.c 2018/04/24 18:30:33 1.1.1.5 +++ qemu/hw/ssd0323.c 2018/04/24 19:50:32 1.1.1.7 @@ -4,7 +4,7 @@ * Copyright (c) 2006-2007 CodeSourcery. * Written by Paul Brook * - * This code is licenced under the GPL. + * This code is licensed under the GPL. */ /* The controller can support a variety of different displays, but we only @@ -340,16 +340,24 @@ static int ssd0323_init(SSISlave *dev) return 0; } -static SSISlaveInfo ssd0323_info = { - .qdev.name = "ssd0323", - .qdev.size = sizeof(ssd0323_state), - .init = ssd0323_init, - .transfer = ssd0323_transfer +static void ssd0323_class_init(ObjectClass *klass, void *data) +{ + SSISlaveClass *k = SSI_SLAVE_CLASS(klass); + + k->init = ssd0323_init; + k->transfer = ssd0323_transfer; +} + +static TypeInfo ssd0323_info = { + .name = "ssd0323", + .parent = TYPE_SSI_SLAVE, + .instance_size = sizeof(ssd0323_state), + .class_init = ssd0323_class_init, }; -static void ssd03232_register_devices(void) +static void ssd03232_register_types(void) { - ssi_register_slave(&ssd0323_info); + type_register_static(&ssd0323_info); } -device_init(ssd03232_register_devices) +type_init(ssd03232_register_types)