vortex86ex: Change PCI S/B resource reservation functions for more I/O devices.
Originally, Vortex86EX PCI S/B internal resource reservation functions can only support one big legacy I/O device space (0-0xfff). Change function signature to support other non-legacy I/O device space in the future. Change-Id: I22f5c877ed441d59f29801d925ee40b24fb796ce Signed-off-by: Andrew Wu <arw@dmp.com.tw> Reviewed-on: http://review.coreboot.org/3976 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
44af57a78b
commit
fea5b50feb
|
@ -505,21 +505,21 @@ static void fix_cmos_rtc_time(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vortex86_sb_set_io_resv(device_t dev, u32 io_resv_size)
|
static void vortex86_sb_set_io_resv(device_t dev, unsigned index, u32 base, u32 size)
|
||||||
{
|
{
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
res = new_resource(dev, 1);
|
res = new_resource(dev, index);
|
||||||
res->base = 0x0UL;
|
res->base = base;
|
||||||
res->size = io_resv_size;
|
res->size = size;
|
||||||
res->limit = 0xffffUL;
|
res->limit = 0xffffUL;
|
||||||
res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED | IORESOURCE_FIXED;
|
res->flags = IORESOURCE_IO | IORESOURCE_ASSIGNED | IORESOURCE_FIXED;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vortex86_sb_set_spi_flash_size(device_t dev, u32 flash_size)
|
static void vortex86_sb_set_spi_flash_size(device_t dev, unsigned index, u32 flash_size)
|
||||||
{
|
{
|
||||||
/* SPI flash is in topmost of 4G memory space */
|
/* SPI flash is in topmost of 4G memory space */
|
||||||
struct resource *res;
|
struct resource *res;
|
||||||
res = new_resource(dev, 2);
|
res = new_resource(dev, index);
|
||||||
res->base = 0x100000000LL - flash_size;
|
res->base = 0x100000000LL - flash_size;
|
||||||
res->size = flash_size;
|
res->size = flash_size;
|
||||||
res->limit = 0xffffffffUL;
|
res->limit = 0xffffffffUL;
|
||||||
|
@ -542,11 +542,11 @@ static void vortex86_sb_read_resources(device_t dev)
|
||||||
flash_size = 64 * 1024 * 1024;
|
flash_size = 64 * 1024 * 1024;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Reserve space for I/O */
|
/* Reserve space for legacy I/O */
|
||||||
vortex86_sb_set_io_resv(dev, 0x1000UL);
|
vortex86_sb_set_io_resv(dev, 1, 0, 0x1000UL);
|
||||||
|
|
||||||
/* Reserve space for flash */
|
/* Reserve space for flash */
|
||||||
vortex86_sb_set_spi_flash_size(dev, flash_size);
|
vortex86_sb_set_spi_flash_size(dev, 2, flash_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void southbridge_init_func1(struct device *dev)
|
static void southbridge_init_func1(struct device *dev)
|
||||||
|
|
Loading…
Reference in New Issue