[OpenIndiana-discuss] 64-bit PCI space

Pavel Zakharov pavel.zakharov at mail.mcgill.ca
Thu Nov 1 14:39:08 UTC 2012


**Disclaimer: I've posted a similar question in illumos-team mailing list, however I'm reposting here since this mailing list seems much more active**

Hello,

I've been trying a new feature on my BIOS that allows to memory map PCI device registers to spaces above 4G.

However, when I booted in Solaris, it failed to load some devices, and pci_boot also reported:
"unsupported 64-bit prefetch memory on pci-pci bridge [%d/%d/%d]" (copy pasted that line from pci_boot.c)
Digging further I also found some comments in npe.c in a register mapping function:
case PCI_ADDR_MEM64:
/*
* We can't handle 64-bit devices that are mapped above
* 4G or that are larger than 4G.
*/

I am in the process of rewriting the driver code right now, but I am wondering how deep will I have to go or if a fix already exists in OpenIndiana.
If you are wondering why I need all this, it is because I have a device that requires a very large space of prefetchable memory (>4G) and I need those BIOS settings to make it boot.

Thanks


More information about the OpenIndiana-discuss mailing list