Hi,
+void mch_mem_addr_init(struct pci_device *dev, void *arg) +{
- u64 *start = (u64 *)arg;
- /* mmconfig space */
- *start = Q35_HOST_BRIDGE_PCIEXBAR_ADDR +
Q35_HOST_BRIDGE_PCIEXBAR_SIZE;
- mtrr_base = *start;
+}
Ah, I see. mtrr needs to cover mmconfig too, thats why it is separate from pcimem_start.
Does that actually work? Can you create mtrr entries for 0xb0000000 -> 0xffffffff? Maybe you need two, one 0xb0000000 -> 0xbfffffff and one 0xc0000000 -> 0xffffffff.
cheers, Gerd