]> git.proxmox.com Git - mirror_qemu.git/commit
hw: aspeed_gpio: Fix memory size
authorJoel Stanley <joel@jms.id.au>
Tue, 13 Jul 2021 06:58:52 +0000 (16:28 +0930)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 27 Jul 2021 10:00:00 +0000 (11:00 +0100)
commite229a179a503f2aee43a76888cf12fbdfe8a3749
tree989f95a5ddf72efbb2a253cd194e5a00bf7dedef
parentb1c2a6bd3d035a60bc7c6cbc109996af8cfe2b05
hw: aspeed_gpio: Fix memory size

The macro used to calculate the maximum memory size of the MMIO region
had a mistake, causing all GPIO models to create a mapping of 0x9D8.
The intent was to have it be 0x9D8 - 0x800.

This extra size doesn't matter on ast2400 and ast2500, which have a 4KB
region set aside for the GPIO controller.

On the ast2600 the 3.3V and 1.8V GPIO controllers are 2KB apart, so the
regions would overlap. Worse was the 1.8V controller would map over the
top of the following peripheral, which happens to be the RTC.

The mmio region used by each device is a maximum of 2KB, so avoid the
calculations and hard code this as the maximum.

Fixes: 36d737ee82b2 ("hw/gpio: Add in AST2600 specific implementation")
Signed-off-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Rashmica Gupta <rashmica.g@gmail.com>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Message-id: 20210713065854.134634-2-joel@jms.id.au
[PMM: fix autocorrect error in commit message]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/gpio/aspeed_gpio.c