diff mbox series

[v4,05/10] hw/sd/pl181: Use named GPIOs

Message ID 20200705204630.4133-6-f4bug@amsat.org
State New
Headers show
Series hw/sd: convert legacy SDHCI devices to the SDBus API | expand

Commit Message

Philippe Mathieu-Daudé July 5, 2020, 8:46 p.m. UTC
To make the code easier to manage/review/use, rename the
cardstatus[0] variable as 'card_readonly' and name the GPIO
"card-read-only".
Similarly with cardstatus[1], renamed as 'card_inserted' and
name its GPIO "card-inserted".

Adapt the users accordingly by using the qdev_init_gpio_out_named()
function.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 hw/arm/integratorcp.c | 4 ++--
 hw/arm/realview.c     | 4 ++--
 hw/arm/vexpress.c     | 4 ++--
 hw/sd/pl181.c         | 8 +++++---
 4 files changed, 11 insertions(+), 9 deletions(-)

Comments

Alistair Francis July 6, 2020, 3:48 p.m. UTC | #1
On Sun, Jul 5, 2020 at 1:50 PM Philippe Mathieu-Daudé <f4bug@amsat.org> wrote:
>
> To make the code easier to manage/review/use, rename the
> cardstatus[0] variable as 'card_readonly' and name the GPIO
> "card-read-only".
> Similarly with cardstatus[1], renamed as 'card_inserted' and
> name its GPIO "card-inserted".
>
> Adapt the users accordingly by using the qdev_init_gpio_out_named()
> function.
>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

Reviewed-by: Alistair Francis <alistair.francis@wdc.com>

Alistair

> ---
>  hw/arm/integratorcp.c | 4 ++--
>  hw/arm/realview.c     | 4 ++--
>  hw/arm/vexpress.c     | 4 ++--
>  hw/sd/pl181.c         | 8 +++++---
>  4 files changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
> index b11a846355..2595e4d052 100644
> --- a/hw/arm/integratorcp.c
> +++ b/hw/arm/integratorcp.c
> @@ -645,9 +645,9 @@ static void integratorcp_init(MachineState *machine)
>      sysbus_create_simple(TYPE_INTEGRATOR_DEBUG, 0x1a000000, 0);
>
>      dev = sysbus_create_varargs("pl181", 0x1c000000, pic[23], pic[24], NULL);
> -    qdev_connect_gpio_out(dev, 0,
> +    qdev_connect_gpio_out_named(dev, "card-read-only", 0,
>                            qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_WPROT, 0));
> -    qdev_connect_gpio_out(dev, 1,
> +    qdev_connect_gpio_out_named(dev, "card-inserted", 0,
>                            qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_CARDIN, 0));
>      sysbus_create_varargs("pl041", 0x1d000000, pic[25], NULL);
>
> diff --git a/hw/arm/realview.c b/hw/arm/realview.c
> index b6c0a1adb9..8dc5f77139 100644
> --- a/hw/arm/realview.c
> +++ b/hw/arm/realview.c
> @@ -234,8 +234,8 @@ static void realview_init(MachineState *machine,
>      mmc_irq[1] = qemu_irq_split(
>          qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_CARDIN),
>          qemu_irq_invert(qdev_get_gpio_in(gpio2, 0)));
> -    qdev_connect_gpio_out(dev, 0, mmc_irq[0]);
> -    qdev_connect_gpio_out(dev, 1, mmc_irq[1]);
> +    qdev_connect_gpio_out_named(dev, "card-read-only", 0, mmc_irq[0]);
> +    qdev_connect_gpio_out_named(dev, "card-inserted", 0, mmc_irq[1]);
>
>      sysbus_create_simple("pl031", 0x10017000, pic[10]);
>
> diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c
> index 5bf9cff8a8..16629d6599 100644
> --- a/hw/arm/vexpress.c
> +++ b/hw/arm/vexpress.c
> @@ -624,9 +624,9 @@ static void vexpress_common_init(MachineState *machine)
>
>      dev = sysbus_create_varargs("pl181", map[VE_MMCI], pic[9], pic[10], NULL);
>      /* Wire up MMC card detect and read-only signals */
> -    qdev_connect_gpio_out(dev, 0,
> +    qdev_connect_gpio_out_named(dev, "card-read-only", 0,
>                            qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_WPROT));
> -    qdev_connect_gpio_out(dev, 1,
> +    qdev_connect_gpio_out_named(dev, "card-inserted", 0,
>                            qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_CARDIN));
>
>      sysbus_create_simple("pl050_keyboard", map[VE_KMI0], pic[12]);
> diff --git a/hw/sd/pl181.c b/hw/sd/pl181.c
> index 86219c851d..ab4cd733a4 100644
> --- a/hw/sd/pl181.c
> +++ b/hw/sd/pl181.c
> @@ -60,7 +60,8 @@ typedef struct PL181State {
>      uint32_t fifo[PL181_FIFO_LEN]; /* TODO use Fifo32 */
>      qemu_irq irq[2];
>      /* GPIO outputs for 'card is readonly' and 'card inserted' */
> -    qemu_irq cardstatus[2];
> +    qemu_irq card_readonly;
> +    qemu_irq card_inserted;
>  } PL181State;
>
>  static const VMStateDescription vmstate_pl181 = {
> @@ -479,7 +480,7 @@ static void pl181_reset(DeviceState *d)
>      s->mask[1] = 0;
>
>      /* We can assume our GPIO outputs have been wired up now */
> -    sd_set_cb(s->card, s->cardstatus[0], s->cardstatus[1]);
> +    sd_set_cb(s->card, s->card_readonly, s->card_inserted);
>      /* Since we're still using the legacy SD API the card is not plugged
>       * into any bus, and we must reset it manually.
>       */
> @@ -496,7 +497,8 @@ static void pl181_init(Object *obj)
>      sysbus_init_mmio(sbd, &s->iomem);
>      sysbus_init_irq(sbd, &s->irq[0]);
>      sysbus_init_irq(sbd, &s->irq[1]);
> -    qdev_init_gpio_out(dev, s->cardstatus, 2);
> +    qdev_init_gpio_out_named(dev, &s->card_readonly, "card-read-only", 1);
> +    qdev_init_gpio_out_named(dev, &s->card_inserted, "card-inserted", 1);
>  }
>
>  static void pl181_realize(DeviceState *dev, Error **errp)
> --
> 2.21.3
>
>
diff mbox series

Patch

diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c
index b11a846355..2595e4d052 100644
--- a/hw/arm/integratorcp.c
+++ b/hw/arm/integratorcp.c
@@ -645,9 +645,9 @@  static void integratorcp_init(MachineState *machine)
     sysbus_create_simple(TYPE_INTEGRATOR_DEBUG, 0x1a000000, 0);
 
     dev = sysbus_create_varargs("pl181", 0x1c000000, pic[23], pic[24], NULL);
-    qdev_connect_gpio_out(dev, 0,
+    qdev_connect_gpio_out_named(dev, "card-read-only", 0,
                           qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_WPROT, 0));
-    qdev_connect_gpio_out(dev, 1,
+    qdev_connect_gpio_out_named(dev, "card-inserted", 0,
                           qdev_get_gpio_in_named(icp, ICP_GPIO_MMC_CARDIN, 0));
     sysbus_create_varargs("pl041", 0x1d000000, pic[25], NULL);
 
diff --git a/hw/arm/realview.c b/hw/arm/realview.c
index b6c0a1adb9..8dc5f77139 100644
--- a/hw/arm/realview.c
+++ b/hw/arm/realview.c
@@ -234,8 +234,8 @@  static void realview_init(MachineState *machine,
     mmc_irq[1] = qemu_irq_split(
         qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_CARDIN),
         qemu_irq_invert(qdev_get_gpio_in(gpio2, 0)));
-    qdev_connect_gpio_out(dev, 0, mmc_irq[0]);
-    qdev_connect_gpio_out(dev, 1, mmc_irq[1]);
+    qdev_connect_gpio_out_named(dev, "card-read-only", 0, mmc_irq[0]);
+    qdev_connect_gpio_out_named(dev, "card-inserted", 0, mmc_irq[1]);
 
     sysbus_create_simple("pl031", 0x10017000, pic[10]);
 
diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c
index 5bf9cff8a8..16629d6599 100644
--- a/hw/arm/vexpress.c
+++ b/hw/arm/vexpress.c
@@ -624,9 +624,9 @@  static void vexpress_common_init(MachineState *machine)
 
     dev = sysbus_create_varargs("pl181", map[VE_MMCI], pic[9], pic[10], NULL);
     /* Wire up MMC card detect and read-only signals */
-    qdev_connect_gpio_out(dev, 0,
+    qdev_connect_gpio_out_named(dev, "card-read-only", 0,
                           qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_WPROT));
-    qdev_connect_gpio_out(dev, 1,
+    qdev_connect_gpio_out_named(dev, "card-inserted", 0,
                           qdev_get_gpio_in(sysctl, ARM_SYSCTL_GPIO_MMC_CARDIN));
 
     sysbus_create_simple("pl050_keyboard", map[VE_KMI0], pic[12]);
diff --git a/hw/sd/pl181.c b/hw/sd/pl181.c
index 86219c851d..ab4cd733a4 100644
--- a/hw/sd/pl181.c
+++ b/hw/sd/pl181.c
@@ -60,7 +60,8 @@  typedef struct PL181State {
     uint32_t fifo[PL181_FIFO_LEN]; /* TODO use Fifo32 */
     qemu_irq irq[2];
     /* GPIO outputs for 'card is readonly' and 'card inserted' */
-    qemu_irq cardstatus[2];
+    qemu_irq card_readonly;
+    qemu_irq card_inserted;
 } PL181State;
 
 static const VMStateDescription vmstate_pl181 = {
@@ -479,7 +480,7 @@  static void pl181_reset(DeviceState *d)
     s->mask[1] = 0;
 
     /* We can assume our GPIO outputs have been wired up now */
-    sd_set_cb(s->card, s->cardstatus[0], s->cardstatus[1]);
+    sd_set_cb(s->card, s->card_readonly, s->card_inserted);
     /* Since we're still using the legacy SD API the card is not plugged
      * into any bus, and we must reset it manually.
      */
@@ -496,7 +497,8 @@  static void pl181_init(Object *obj)
     sysbus_init_mmio(sbd, &s->iomem);
     sysbus_init_irq(sbd, &s->irq[0]);
     sysbus_init_irq(sbd, &s->irq[1]);
-    qdev_init_gpio_out(dev, s->cardstatus, 2);
+    qdev_init_gpio_out_named(dev, &s->card_readonly, "card-read-only", 1);
+    qdev_init_gpio_out_named(dev, &s->card_inserted, "card-inserted", 1);
 }
 
 static void pl181_realize(DeviceState *dev, Error **errp)