* [PATCH] hw/arm: Use TYPE_PL011 to create serial port
@ 2020-02-24 4:16 Gavin Shan
2020-02-24 8:41 ` Philippe Mathieu-Daudé
2020-02-24 16:59 ` Alistair Francis
0 siblings, 2 replies; 4+ messages in thread
From: Gavin Shan @ 2020-02-24 4:16 UTC (permalink / raw)
To: qemu-devel, qemu-arm
Cc: peter.maydell, radoslaw.biernacki, alistair, shan.gavin,
edgar.iglesias, leif, philmd
This uses TYPE_PL011 when creating the serial port, to make the code
a bit more atomatic.
Signed-off-by: Gavin Shan <gshan@redhat.com>
---
hw/arm/sbsa-ref.c | 3 ++-
hw/arm/virt.c | 3 ++-
hw/arm/xlnx-versal.c | 3 ++-
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
index 9b5bcb5634..df0a165047 100644
--- a/hw/arm/sbsa-ref.c
+++ b/hw/arm/sbsa-ref.c
@@ -39,6 +39,7 @@
#include "hw/pci-host/gpex.h"
#include "hw/qdev-properties.h"
#include "hw/usb.h"
+#include "hw/char/pl011.h"
#include "net/net.h"
#define RAMLIMIT_GB 8192
@@ -409,7 +410,7 @@ static void create_uart(const SBSAMachineState *sms, int uart,
{
hwaddr base = sbsa_ref_memmap[uart].base;
int irq = sbsa_ref_irqmap[uart];
- DeviceState *dev = qdev_create(NULL, "pl011");
+ DeviceState *dev = qdev_create(NULL, TYPE_PL011);
SysBusDevice *s = SYS_BUS_DEVICE(dev);
qdev_prop_set_chr(dev, "chardev", chr);
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index f788fe27d6..d0da513737 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -71,6 +71,7 @@
#include "hw/mem/pc-dimm.h"
#include "hw/mem/nvdimm.h"
#include "hw/acpi/generic_event_device.h"
+#include "hw/char/pl011.h"
#define DEFINE_VIRT_MACHINE_LATEST(major, minor, latest) \
static void virt_##major##_##minor##_class_init(ObjectClass *oc, \
@@ -724,7 +725,7 @@ static void create_uart(const VirtMachineState *vms, int uart,
int irq = vms->irqmap[uart];
const char compat[] = "arm,pl011\0arm,primecell";
const char clocknames[] = "uartclk\0apb_pclk";
- DeviceState *dev = qdev_create(NULL, "pl011");
+ DeviceState *dev = qdev_create(NULL, TYPE_PL011);
SysBusDevice *s = SYS_BUS_DEVICE(dev);
qdev_prop_set_chr(dev, "chardev", chr);
diff --git a/hw/arm/xlnx-versal.c b/hw/arm/xlnx-versal.c
index 1cf3daaf4f..403fc7b881 100644
--- a/hw/arm/xlnx-versal.c
+++ b/hw/arm/xlnx-versal.c
@@ -22,6 +22,7 @@
#include "hw/misc/unimp.h"
#include "hw/intc/arm_gicv3_common.h"
#include "hw/arm/xlnx-versal.h"
+#include "hw/char/pl011.h"
#define XLNX_VERSAL_ACPU_TYPE ARM_CPU_TYPE_NAME("cortex-a72")
#define GEM_REVISION 0x40070106
@@ -144,7 +145,7 @@ static void versal_create_uarts(Versal *s, qemu_irq *pic)
DeviceState *dev;
MemoryRegion *mr;
- dev = qdev_create(NULL, "pl011");
+ dev = qdev_create(NULL, TYPE_PL011);
s->lpd.iou.uart[i] = SYS_BUS_DEVICE(dev);
qdev_prop_set_chr(dev, "chardev", serial_hd(i));
object_property_add_child(OBJECT(s), name, OBJECT(dev), &error_fatal);
--
2.23.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] hw/arm: Use TYPE_PL011 to create serial port
2020-02-24 4:16 [PATCH] hw/arm: Use TYPE_PL011 to create serial port Gavin Shan
@ 2020-02-24 8:41 ` Philippe Mathieu-Daudé
2020-02-24 22:28 ` Gavin Shan
2020-02-24 16:59 ` Alistair Francis
1 sibling, 1 reply; 4+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-02-24 8:41 UTC (permalink / raw)
To: Gavin Shan, qemu-devel, qemu-arm
Cc: peter.maydell, radoslaw.biernacki, alistair, shan.gavin,
edgar.iglesias, leif
On 2/24/20 5:16 AM, Gavin Shan wrote:
> This uses TYPE_PL011 when creating the serial port, to make the code
> a bit more atomatic.
Do you mean aUtomatic? I'm not sure this automate the code, but using
the TYPE definition is definitively cleaner.
With description fixed:
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
> Signed-off-by: Gavin Shan <gshan@redhat.com>
> ---
> hw/arm/sbsa-ref.c | 3 ++-
> hw/arm/virt.c | 3 ++-
> hw/arm/xlnx-versal.c | 3 ++-
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
> index 9b5bcb5634..df0a165047 100644
> --- a/hw/arm/sbsa-ref.c
> +++ b/hw/arm/sbsa-ref.c
> @@ -39,6 +39,7 @@
> #include "hw/pci-host/gpex.h"
> #include "hw/qdev-properties.h"
> #include "hw/usb.h"
> +#include "hw/char/pl011.h"
> #include "net/net.h"
>
> #define RAMLIMIT_GB 8192
> @@ -409,7 +410,7 @@ static void create_uart(const SBSAMachineState *sms, int uart,
> {
> hwaddr base = sbsa_ref_memmap[uart].base;
> int irq = sbsa_ref_irqmap[uart];
> - DeviceState *dev = qdev_create(NULL, "pl011");
> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>
> qdev_prop_set_chr(dev, "chardev", chr);
> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> index f788fe27d6..d0da513737 100644
> --- a/hw/arm/virt.c
> +++ b/hw/arm/virt.c
> @@ -71,6 +71,7 @@
> #include "hw/mem/pc-dimm.h"
> #include "hw/mem/nvdimm.h"
> #include "hw/acpi/generic_event_device.h"
> +#include "hw/char/pl011.h"
>
> #define DEFINE_VIRT_MACHINE_LATEST(major, minor, latest) \
> static void virt_##major##_##minor##_class_init(ObjectClass *oc, \
> @@ -724,7 +725,7 @@ static void create_uart(const VirtMachineState *vms, int uart,
> int irq = vms->irqmap[uart];
> const char compat[] = "arm,pl011\0arm,primecell";
> const char clocknames[] = "uartclk\0apb_pclk";
> - DeviceState *dev = qdev_create(NULL, "pl011");
> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>
> qdev_prop_set_chr(dev, "chardev", chr);
> diff --git a/hw/arm/xlnx-versal.c b/hw/arm/xlnx-versal.c
> index 1cf3daaf4f..403fc7b881 100644
> --- a/hw/arm/xlnx-versal.c
> +++ b/hw/arm/xlnx-versal.c
> @@ -22,6 +22,7 @@
> #include "hw/misc/unimp.h"
> #include "hw/intc/arm_gicv3_common.h"
> #include "hw/arm/xlnx-versal.h"
> +#include "hw/char/pl011.h"
>
> #define XLNX_VERSAL_ACPU_TYPE ARM_CPU_TYPE_NAME("cortex-a72")
> #define GEM_REVISION 0x40070106
> @@ -144,7 +145,7 @@ static void versal_create_uarts(Versal *s, qemu_irq *pic)
> DeviceState *dev;
> MemoryRegion *mr;
>
> - dev = qdev_create(NULL, "pl011");
> + dev = qdev_create(NULL, TYPE_PL011);
> s->lpd.iou.uart[i] = SYS_BUS_DEVICE(dev);
> qdev_prop_set_chr(dev, "chardev", serial_hd(i));
> object_property_add_child(OBJECT(s), name, OBJECT(dev), &error_fatal);
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] hw/arm: Use TYPE_PL011 to create serial port
2020-02-24 4:16 [PATCH] hw/arm: Use TYPE_PL011 to create serial port Gavin Shan
2020-02-24 8:41 ` Philippe Mathieu-Daudé
@ 2020-02-24 16:59 ` Alistair Francis
1 sibling, 0 replies; 4+ messages in thread
From: Alistair Francis @ 2020-02-24 16:59 UTC (permalink / raw)
To: Gavin Shan
Cc: Peter Maydell, Radoslaw Biernacki, Alistair Francis,
qemu-devel@nongnu.org Developers, qemu-arm, shan.gavin,
Edgar Iglesias, leif, Philippe Mathieu-Daudé
On Sun, Feb 23, 2020 at 8:17 PM Gavin Shan <gshan@redhat.com> wrote:
>
> This uses TYPE_PL011 when creating the serial port, to make the code
> a bit more atomatic.
>
> Signed-off-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> hw/arm/sbsa-ref.c | 3 ++-
> hw/arm/virt.c | 3 ++-
> hw/arm/xlnx-versal.c | 3 ++-
> 3 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
> index 9b5bcb5634..df0a165047 100644
> --- a/hw/arm/sbsa-ref.c
> +++ b/hw/arm/sbsa-ref.c
> @@ -39,6 +39,7 @@
> #include "hw/pci-host/gpex.h"
> #include "hw/qdev-properties.h"
> #include "hw/usb.h"
> +#include "hw/char/pl011.h"
> #include "net/net.h"
>
> #define RAMLIMIT_GB 8192
> @@ -409,7 +410,7 @@ static void create_uart(const SBSAMachineState *sms, int uart,
> {
> hwaddr base = sbsa_ref_memmap[uart].base;
> int irq = sbsa_ref_irqmap[uart];
> - DeviceState *dev = qdev_create(NULL, "pl011");
> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>
> qdev_prop_set_chr(dev, "chardev", chr);
> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
> index f788fe27d6..d0da513737 100644
> --- a/hw/arm/virt.c
> +++ b/hw/arm/virt.c
> @@ -71,6 +71,7 @@
> #include "hw/mem/pc-dimm.h"
> #include "hw/mem/nvdimm.h"
> #include "hw/acpi/generic_event_device.h"
> +#include "hw/char/pl011.h"
>
> #define DEFINE_VIRT_MACHINE_LATEST(major, minor, latest) \
> static void virt_##major##_##minor##_class_init(ObjectClass *oc, \
> @@ -724,7 +725,7 @@ static void create_uart(const VirtMachineState *vms, int uart,
> int irq = vms->irqmap[uart];
> const char compat[] = "arm,pl011\0arm,primecell";
> const char clocknames[] = "uartclk\0apb_pclk";
> - DeviceState *dev = qdev_create(NULL, "pl011");
> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>
> qdev_prop_set_chr(dev, "chardev", chr);
> diff --git a/hw/arm/xlnx-versal.c b/hw/arm/xlnx-versal.c
> index 1cf3daaf4f..403fc7b881 100644
> --- a/hw/arm/xlnx-versal.c
> +++ b/hw/arm/xlnx-versal.c
> @@ -22,6 +22,7 @@
> #include "hw/misc/unimp.h"
> #include "hw/intc/arm_gicv3_common.h"
> #include "hw/arm/xlnx-versal.h"
> +#include "hw/char/pl011.h"
>
> #define XLNX_VERSAL_ACPU_TYPE ARM_CPU_TYPE_NAME("cortex-a72")
> #define GEM_REVISION 0x40070106
> @@ -144,7 +145,7 @@ static void versal_create_uarts(Versal *s, qemu_irq *pic)
> DeviceState *dev;
> MemoryRegion *mr;
>
> - dev = qdev_create(NULL, "pl011");
> + dev = qdev_create(NULL, TYPE_PL011);
> s->lpd.iou.uart[i] = SYS_BUS_DEVICE(dev);
> qdev_prop_set_chr(dev, "chardev", serial_hd(i));
> object_property_add_child(OBJECT(s), name, OBJECT(dev), &error_fatal);
> --
> 2.23.0
>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] hw/arm: Use TYPE_PL011 to create serial port
2020-02-24 8:41 ` Philippe Mathieu-Daudé
@ 2020-02-24 22:28 ` Gavin Shan
0 siblings, 0 replies; 4+ messages in thread
From: Gavin Shan @ 2020-02-24 22:28 UTC (permalink / raw)
To: Philippe Mathieu-Daudé, qemu-devel, qemu-arm
Cc: peter.maydell, radoslaw.biernacki, alistair, shan.gavin,
edgar.iglesias, leif
On 2/24/20 7:41 PM, Philippe Mathieu-Daudé wrote:
> On 2/24/20 5:16 AM, Gavin Shan wrote:
>> This uses TYPE_PL011 when creating the serial port, to make the code
>> a bit more atomatic.
>
> Do you mean aUtomatic? I'm not sure this automate the code, but using the TYPE definition is definitively cleaner.
>
> With description fixed:
> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>
Sure, v2 was just posted with the commit log improved according to
your comments.
Thanks,
Gavin
>>
>> Signed-off-by: Gavin Shan <gshan@redhat.com>
>> ---
>> hw/arm/sbsa-ref.c | 3 ++-
>> hw/arm/virt.c | 3 ++-
>> hw/arm/xlnx-versal.c | 3 ++-
>> 3 files changed, 6 insertions(+), 3 deletions(-)
>>
>> diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c
>> index 9b5bcb5634..df0a165047 100644
>> --- a/hw/arm/sbsa-ref.c
>> +++ b/hw/arm/sbsa-ref.c
>> @@ -39,6 +39,7 @@
>> #include "hw/pci-host/gpex.h"
>> #include "hw/qdev-properties.h"
>> #include "hw/usb.h"
>> +#include "hw/char/pl011.h"
>> #include "net/net.h"
>> #define RAMLIMIT_GB 8192
>> @@ -409,7 +410,7 @@ static void create_uart(const SBSAMachineState *sms, int uart,
>> {
>> hwaddr base = sbsa_ref_memmap[uart].base;
>> int irq = sbsa_ref_irqmap[uart];
>> - DeviceState *dev = qdev_create(NULL, "pl011");
>> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
>> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>> qdev_prop_set_chr(dev, "chardev", chr);
>> diff --git a/hw/arm/virt.c b/hw/arm/virt.c
>> index f788fe27d6..d0da513737 100644
>> --- a/hw/arm/virt.c
>> +++ b/hw/arm/virt.c
>> @@ -71,6 +71,7 @@
>> #include "hw/mem/pc-dimm.h"
>> #include "hw/mem/nvdimm.h"
>> #include "hw/acpi/generic_event_device.h"
>> +#include "hw/char/pl011.h"
>> #define DEFINE_VIRT_MACHINE_LATEST(major, minor, latest) \
>> static void virt_##major##_##minor##_class_init(ObjectClass *oc, \
>> @@ -724,7 +725,7 @@ static void create_uart(const VirtMachineState *vms, int uart,
>> int irq = vms->irqmap[uart];
>> const char compat[] = "arm,pl011\0arm,primecell";
>> const char clocknames[] = "uartclk\0apb_pclk";
>> - DeviceState *dev = qdev_create(NULL, "pl011");
>> + DeviceState *dev = qdev_create(NULL, TYPE_PL011);
>> SysBusDevice *s = SYS_BUS_DEVICE(dev);
>> qdev_prop_set_chr(dev, "chardev", chr);
>> diff --git a/hw/arm/xlnx-versal.c b/hw/arm/xlnx-versal.c
>> index 1cf3daaf4f..403fc7b881 100644
>> --- a/hw/arm/xlnx-versal.c
>> +++ b/hw/arm/xlnx-versal.c
>> @@ -22,6 +22,7 @@
>> #include "hw/misc/unimp.h"
>> #include "hw/intc/arm_gicv3_common.h"
>> #include "hw/arm/xlnx-versal.h"
>> +#include "hw/char/pl011.h"
>> #define XLNX_VERSAL_ACPU_TYPE ARM_CPU_TYPE_NAME("cortex-a72")
>> #define GEM_REVISION 0x40070106
>> @@ -144,7 +145,7 @@ static void versal_create_uarts(Versal *s, qemu_irq *pic)
>> DeviceState *dev;
>> MemoryRegion *mr;
>> - dev = qdev_create(NULL, "pl011");
>> + dev = qdev_create(NULL, TYPE_PL011);
>> s->lpd.iou.uart[i] = SYS_BUS_DEVICE(dev);
>> qdev_prop_set_chr(dev, "chardev", serial_hd(i));
>> object_property_add_child(OBJECT(s), name, OBJECT(dev), &error_fatal);
>>
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-02-24 22:34 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-24 4:16 [PATCH] hw/arm: Use TYPE_PL011 to create serial port Gavin Shan
2020-02-24 8:41 ` Philippe Mathieu-Daudé
2020-02-24 22:28 ` Gavin Shan
2020-02-24 16:59 ` Alistair Francis
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.