diff mbox

nand: Don't use qdev_create() in nand_init()

Message ID 1391610653-13439-1-git-send-email-afaerber@suse.de
State New
Headers show

Commit Message

Andreas Färber Feb. 5, 2014, 2:30 p.m. UTC
Commit 7426aa72c36c908a7d0eae3e38568bb0a70de479 (nand: Don't inherit
from Sysbus) changed the parent type of TYPE_NAND but continued to use
qdev_create(), which handled a NULL BusState as SysBus.

Use object_new() instead, and reuse the TYPE_NAND define while at it.

Reported-by: Markus Armbruster <armbru@redhat.com>
Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
---
 hw/block/nand.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Igor Mammedov Feb. 5, 2014, 2:56 p.m. UTC | #1
On Wed,  5 Feb 2014 15:30:53 +0100
Andreas Färber <afaerber@suse.de> wrote:

> Commit 7426aa72c36c908a7d0eae3e38568bb0a70de479 (nand: Don't inherit
> from Sysbus) changed the parent type of TYPE_NAND but continued to use
> qdev_create(), which handled a NULL BusState as SysBus.
> 
> Use object_new() instead, and reuse the TYPE_NAND define while at it.
> 
> Reported-by: Markus Armbruster <armbru@redhat.com>
> Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
> Signed-off-by: Andreas Färber <afaerber@suse.de>
> ---
>  hw/block/nand.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/hw/block/nand.c b/hw/block/nand.c
> index a871ce0..6d7c804 100644
> --- a/hw/block/nand.c
> +++ b/hw/block/nand.c
> @@ -632,7 +632,7 @@ DeviceState *nand_init(BlockDriverState *bdrv, int manf_id, int chip_id)
>      if (nand_flash_ids[chip_id].size == 0) {
>          hw_error("%s: Unsupported NAND chip ID.\n", __FUNCTION__);
>      }
> -    dev = qdev_create(NULL, "nand");
> +    dev = DEVICE(object_new(TYPE_NAND));
>      qdev_prop_set_uint8(dev, "manufacturer_id", manf_id);
>      qdev_prop_set_uint8(dev, "chip_id", chip_id);
>      if (bdrv) {
> -- 
> 1.8.4.5
> 
>

Reviewed-By: Igor Mammedov <imammedo@redhat.com>
Andreas Färber Feb. 8, 2014, 5:32 p.m. UTC | #2
Am 05.02.2014 15:56, schrieb Igor Mammedov:
> On Wed,  5 Feb 2014 15:30:53 +0100
> Andreas Färber <afaerber@suse.de> wrote:
> 
>> Commit 7426aa72c36c908a7d0eae3e38568bb0a70de479 (nand: Don't inherit
>> from Sysbus) changed the parent type of TYPE_NAND but continued to use
>> qdev_create(), which handled a NULL BusState as SysBus.
>>
>> Use object_new() instead, and reuse the TYPE_NAND define while at it.
>>
>> Reported-by: Markus Armbruster <armbru@redhat.com>
>> Cc: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
>> Signed-off-by: Andreas Färber <afaerber@suse.de>
>> ---
>>  hw/block/nand.c | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/hw/block/nand.c b/hw/block/nand.c
>> index a871ce0..6d7c804 100644
>> --- a/hw/block/nand.c
>> +++ b/hw/block/nand.c
>> @@ -632,7 +632,7 @@ DeviceState *nand_init(BlockDriverState *bdrv, int manf_id, int chip_id)
>>      if (nand_flash_ids[chip_id].size == 0) {
>>          hw_error("%s: Unsupported NAND chip ID.\n", __FUNCTION__);
>>      }
>> -    dev = qdev_create(NULL, "nand");
>> +    dev = DEVICE(object_new(TYPE_NAND));
>>      qdev_prop_set_uint8(dev, "manufacturer_id", manf_id);
>>      qdev_prop_set_uint8(dev, "chip_id", chip_id);
>>      if (bdrv) {
>> -- 
>> 1.8.4.5
>>
>>
> 
> Reviewed-By: Igor Mammedov <imammedo@redhat.com>

Thanks, applied to qom-next:
https://github.com/afaerber/qemu-cpu/commits/qom-next

Paolo, if you want your "all three patches can be applied" to be
recorded, please reply with a proper tag!

Andreas
diff mbox

Patch

diff --git a/hw/block/nand.c b/hw/block/nand.c
index a871ce0..6d7c804 100644
--- a/hw/block/nand.c
+++ b/hw/block/nand.c
@@ -632,7 +632,7 @@  DeviceState *nand_init(BlockDriverState *bdrv, int manf_id, int chip_id)
     if (nand_flash_ids[chip_id].size == 0) {
         hw_error("%s: Unsupported NAND chip ID.\n", __FUNCTION__);
     }
-    dev = qdev_create(NULL, "nand");
+    dev = DEVICE(object_new(TYPE_NAND));
     qdev_prop_set_uint8(dev, "manufacturer_id", manf_id);
     qdev_prop_set_uint8(dev, "chip_id", chip_id);
     if (bdrv) {