Skip to Main Content

Infrastructure Software

Announcement

For appeals, questions and feedback, please email oracle-forums_moderators_us@oracle.com

64-Bit PCI space on OpenSolaris

971491Oct 30 2012
** As a disclaimer, I am working on OpenSolaris, not Solaris, so I am not sure if this is the right place to post. **

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 Solaris.
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
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Nov 27 2012
Added on Oct 30 2012
0 comments
2,033 views