hw/sd/pl181: Use named GPIOs

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>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20200705204630.4133-6-f4bug@amsat.org>
This commit is contained in:
Philippe Mathieu-Daudé 2020-07-05 13:39:53 +02:00
parent 0e33730c89
commit 26c5b0f4cb
4 changed files with 11 additions and 9 deletions

View file

@ -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)