From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:41330) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WAy19-00021y-9E for qemu-devel@nongnu.org; Wed, 05 Feb 2014 03:39:40 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WAy14-0004nf-9j for qemu-devel@nongnu.org; Wed, 05 Feb 2014 03:39:35 -0500 Received: from mx1.redhat.com ([209.132.183.28]:36151) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WAy14-0004nV-1P for qemu-devel@nongnu.org; Wed, 05 Feb 2014 03:39:30 -0500 From: Markus Armbruster Date: Wed, 5 Feb 2014 09:39:22 +0100 Message-Id: <1391589562-9010-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH] Revert "nand: Don't inherit from Sysbus" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, peter.crosthwaite@xilinx.com, afaerber@suse.de, pbonzini@redhat.com This reverts commit 7426aa72c36c908a7d0eae3e38568bb0a70de479. The commit goes into a sensible direction, but it violates qdev design assumptions. Symptom: "info qtree" crashes for all boards including the device (akita, borzoi, spitz, terrier, tosa, axis-dev88). Peter Crosthwaite is working on a fix, but it's not trivial. Revert the flawed patch for now. Signed-off-by: Markus Armbruster Acked-by: Peter Crosthwaite --- hw/block/nand.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/hw/block/nand.c b/hw/block/nand.c index a871ce0..a0232d1 100644 --- a/hw/block/nand.c +++ b/hw/block/nand.c @@ -21,7 +21,7 @@ # include "hw/hw.h" # include "hw/block/flash.h" # include "sysemu/blockdev.h" -#include "hw/qdev.h" +# include "hw/sysbus.h" #include "qemu/error-report.h" # define NAND_CMD_READ0 0x00 @@ -54,8 +54,7 @@ typedef struct NANDFlashState NANDFlashState; struct NANDFlashState { - DeviceState parent_obj; - + SysBusDevice busdev; uint8_t manf_id, chip_id; uint8_t buswidth; /* in BYTES */ int size, pages; @@ -441,7 +440,7 @@ static void nand_class_init(ObjectClass *klass, void *data) static const TypeInfo nand_info = { .name = TYPE_NAND, - .parent = TYPE_DEVICE, + .parent = TYPE_SYS_BUS_DEVICE, .instance_size = sizeof(NANDFlashState), .class_init = nand_class_init, }; -- 1.8.1.4