[iyonix-support] PCI_RAMAlloc and non-32-bit bus masters

Hi all,I have a PCI device (emu10k1/Soundblaster Live!) that is a 31-bit bus 
master, i.e. it cannot access memory addresses for DMA that have the MSB set. 
Unfortunately, PCI_RAMAlloc always seems to return memory above address 
0xc0000000. I tried using OS_FindMemMapEntries to convert the logical address 
returned by PCI_RAMAlloc into a physical address, and this gives a much lower 
address, but as expected, PCI bus masters cannot access the memory at 
location.As a workaround, I considered using memory on the nvidia card (and 
Adrian Lees tried this with success), as this has a lower PCI address. However, 
is there any way the HAL could be altered to allocate PCI DMA memory using a 
mask (i.e. 0xffffff for allocation in the lower 24 bit address range), or at 
least to always use lower addresses?Thanks,Simon
_________________________________________________________________
PC Magazine’s 2007 editors’ choice for best web mail—award-winning Windows Live 
Hotmail.
http://imagine-windowslive.com/hotmail/?locale=en-us&ocid=TXT_TAGHM_migration_HMWL_mini_pcmag_0707

Other related posts: