omap_gpmc: Take omap_mpu_state* in omap_gpmc_init
Take a pointer to the omap mpu state struct in omap_gpmc_init. Some details of GPMC behaviour depend on the OMAP version we are a part of. Signed-off-by: Juha Riihimäki <juha.riihimaki@nokia.com> [Riku Voipio: Fixes and restructuring patchset] Signed-off-by: Riku Voipio <riku.voipio@iki.fi> [Peter Maydell: More fixes and cleanups for upstream submission] Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
de8af7fe01
commit
b5325c2739
|
@ -118,7 +118,8 @@ void omap_sdrc_reset(struct omap_sdrc_s *s);
|
||||||
|
|
||||||
/* OMAP2 general purpose memory controller */
|
/* OMAP2 general purpose memory controller */
|
||||||
struct omap_gpmc_s;
|
struct omap_gpmc_s;
|
||||||
struct omap_gpmc_s *omap_gpmc_init(target_phys_addr_t base, qemu_irq irq);
|
struct omap_gpmc_s *omap_gpmc_init(struct omap_mpu_state_s *mpu,
|
||||||
|
target_phys_addr_t base, qemu_irq irq);
|
||||||
void omap_gpmc_reset(struct omap_gpmc_s *s);
|
void omap_gpmc_reset(struct omap_gpmc_s *s);
|
||||||
void omap_gpmc_attach(struct omap_gpmc_s *s, int cs, MemoryRegion *iomem);
|
void omap_gpmc_attach(struct omap_gpmc_s *s, int cs, MemoryRegion *iomem);
|
||||||
|
|
||||||
|
|
|
@ -2402,7 +2402,7 @@ struct omap_mpu_state_s *omap2420_mpu_init(unsigned long sdram_size,
|
||||||
sysbus_mmio_map(busdev, 4, omap_l4_region_base(ta, 5));
|
sysbus_mmio_map(busdev, 4, omap_l4_region_base(ta, 5));
|
||||||
|
|
||||||
s->sdrc = omap_sdrc_init(0x68009000);
|
s->sdrc = omap_sdrc_init(0x68009000);
|
||||||
s->gpmc = omap_gpmc_init(0x6800a000, s->irq[0][OMAP_INT_24XX_GPMC_IRQ]);
|
s->gpmc = omap_gpmc_init(s, 0x6800a000, s->irq[0][OMAP_INT_24XX_GPMC_IRQ]);
|
||||||
|
|
||||||
dinfo = drive_get(IF_SD, 0, 0);
|
dinfo = drive_get(IF_SD, 0, 0);
|
||||||
if (!dinfo) {
|
if (!dinfo) {
|
||||||
|
|
|
@ -399,7 +399,8 @@ static const MemoryRegionOps omap_gpmc_ops = {
|
||||||
.endianness = DEVICE_NATIVE_ENDIAN,
|
.endianness = DEVICE_NATIVE_ENDIAN,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct omap_gpmc_s *omap_gpmc_init(target_phys_addr_t base, qemu_irq irq)
|
struct omap_gpmc_s *omap_gpmc_init(struct omap_mpu_state_s *mpu,
|
||||||
|
target_phys_addr_t base, qemu_irq irq)
|
||||||
{
|
{
|
||||||
struct omap_gpmc_s *s = (struct omap_gpmc_s *)
|
struct omap_gpmc_s *s = (struct omap_gpmc_s *)
|
||||||
g_malloc0(sizeof(struct omap_gpmc_s));
|
g_malloc0(sizeof(struct omap_gpmc_s));
|
||||||
|
|
Loading…
Reference in New Issue