qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 08/30] ide/ich: QOM Upcast Sweep


From: Andreas Färber
Subject: Re: [Qemu-devel] [PATCH v2 08/30] ide/ich: QOM Upcast Sweep
Date: Sun, 30 Jun 2013 10:21:08 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130510 Thunderbird/17.0.6

Am 24.06.2013 08:55, schrieb address@hidden:
> From: Peter Crosthwaite <address@hidden>
> 
> Define and use standard QOM cast macro. Remove usages of DO_UPCAST
> and direct -> style upcasting.
> 
> Signed-off-by: Peter Crosthwaite <address@hidden>
> ---
> 
>  hw/ide/ahci.h |  5 +++++
>  hw/ide/ich.c  | 10 +++++-----
>  2 files changed, 10 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/ide/ahci.h b/hw/ide/ahci.h
> index 341a571..916bef0 100644
> --- a/hw/ide/ahci.h
> +++ b/hw/ide/ahci.h
> @@ -305,6 +305,11 @@ typedef struct AHCIPCIState {
>      AHCIState ahci;
>  } AHCIPCIState;
>  
> +#define TYPE_ICH_AHCI "ich9-ahci"

Let's be as precise as for the LSI SCSI HBA and name this ICH9. :)

> +
> +#define ICH_AHCI(obj) \
> +    OBJECT_CHECK(AHCIPCIState, (obj), TYPE_ICH_AHCI)

Wondering if this is specific to ICH(9)? Alex?
Leaving it as is for now, renaming is an easy follow-up.

> +
>  extern const VMStateDescription vmstate_ahci;
>  
>  #define VMSTATE_AHCI(_field, _state) {                               \
> diff --git a/hw/ide/ich.c b/hw/ide/ich.c
> index 6c0c0c2..c3cbf2a 100644
> --- a/hw/ide/ich.c
> +++ b/hw/ide/ich.c
> @@ -92,7 +92,7 @@ static const VMStateDescription vmstate_ich9_ahci = {
>  
>  static void pci_ich9_reset(DeviceState *dev)
>  {
> -    struct AHCIPCIState *d = DO_UPCAST(struct AHCIPCIState, card.qdev, dev);
> +    struct AHCIPCIState *d = ICH_AHCI(dev);

Let's drop the "struct" while touching the line.

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

Andreas

>  
>      ahci_reset(&d->ahci);
>  }
> @@ -102,9 +102,9 @@ static int pci_ich9_ahci_init(PCIDevice *dev)
>      struct AHCIPCIState *d;
>      int sata_cap_offset;
>      uint8_t *sata_cap;
> -    d = DO_UPCAST(struct AHCIPCIState, card, dev);
> +    d = ICH_AHCI(dev);
>  
> -    ahci_init(&d->ahci, &dev->qdev, pci_get_address_space(dev), 6);
> +    ahci_init(&d->ahci, DEVICE(dev), pci_get_address_space(dev), 6);
>  
>      pci_config_set_prog_interface(d->card.config, AHCI_PROGMODE_MAJOR_REV_1);
>  
> @@ -141,7 +141,7 @@ static int pci_ich9_ahci_init(PCIDevice *dev)
>  static void pci_ich9_uninit(PCIDevice *dev)
>  {
>      struct AHCIPCIState *d;
> -    d = DO_UPCAST(struct AHCIPCIState, card, dev);
> +    d = ICH_AHCI(dev);
>  
>      msi_uninit(dev);
>      ahci_uninit(&d->ahci);
> @@ -163,7 +163,7 @@ static void ich_ahci_class_init(ObjectClass *klass, void 
> *data)
>  }
>  
>  static const TypeInfo ich_ahci_info = {
> -    .name          = "ich9-ahci",
> +    .name          = TYPE_ICH_AHCI,
>      .parent        = TYPE_PCI_DEVICE,
>      .instance_size = sizeof(AHCIPCIState),
>      .class_init    = ich_ahci_class_init,
> 


-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]