mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 15:02:32 +00:00
c783073894
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
23 lines
692 B
Diff
23 lines
692 B
Diff
--- a/arch/mips/pci/pci-lantiq.c
|
|
+++ b/arch/mips/pci/pci-lantiq.c
|
|
@@ -59,6 +59,8 @@
|
|
#define ltq_pci_cfg_w32(x, y) ltq_w32((x), ltq_pci_mapped_cfg + (y))
|
|
#define ltq_pci_cfg_r32(x) ltq_r32(ltq_pci_mapped_cfg + (x))
|
|
|
|
+extern u32 max_low_pfn;
|
|
+
|
|
__iomem void *ltq_pci_mapped_cfg;
|
|
static __iomem void *ltq_pci_membase;
|
|
|
|
@@ -84,8 +86,8 @@ static inline u32 ltq_calc_bar11mask(voi
|
|
u32 mem, bar11mask;
|
|
|
|
/* BAR11MASK value depends on available memory on system. */
|
|
- mem = get_num_physpages() * PAGE_SIZE;
|
|
- bar11mask = (0x0ffffff0 & ~((1 << (fls(mem) - 1)) - 1)) | 8;
|
|
+ mem = max_low_pfn << PAGE_SHIFT;
|
|
+ bar11mask = ((-roundup_pow_of_two(mem)) & 0x0F000000) | 8;
|
|
|
|
return bar11mask;
|
|
}
|