soc/intel/apollolake: Fix MMIO reserved ranges calculation
mmio_resource() takes memory address in kilobytes. This patch adds resources properly. Change-Id: Id78dcecf05ad5b2c84e5bb5445ae3a4e4ec9d419 Signed-off-by: Andrey Petrov <andrey.petrov@intel.com> Reviewed-on: https://review.coreboot.org/14203 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
808a9c223d
commit
15c736be05
|
@ -30,13 +30,15 @@ static uint32_t get_bar(device_t dev, unsigned int index)
|
||||||
|
|
||||||
static int mc_add_fixed_mmio_resources(device_t dev, int index)
|
static int mc_add_fixed_mmio_resources(device_t dev, int index)
|
||||||
{
|
{
|
||||||
|
unsigned long addr;
|
||||||
|
|
||||||
/* PCI extended config region */
|
/* PCI extended config region */
|
||||||
mmio_resource(dev, index++, ALIGN_DOWN(get_bar(dev, PCIEXBAR), 256*MiB),
|
addr = ALIGN_DOWN(get_bar(dev, PCIEXBAR), 256*MiB) / KiB;
|
||||||
PCIEX_SIZE / KiB);
|
mmio_resource(dev, index++, addr, PCIEX_SIZE / KiB);
|
||||||
|
|
||||||
/* Memory Controller Hub */
|
/* Memory Controller Hub */
|
||||||
mmio_resource(dev, index++, ALIGN_DOWN(get_bar(dev, MCHBAR), 32*KiB),
|
addr = ALIGN_DOWN(get_bar(dev, MCHBAR), 32*KiB) / KiB;
|
||||||
MCH_BASE_SIZE / KiB);
|
mmio_resource(dev, index++, addr, MCH_BASE_SIZE / KiB);
|
||||||
|
|
||||||
return index;
|
return index;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue