/dev/shmem

Hello all,
I am having a driver for a pci bus frame grabber in QNX4.25 which maps
the memory of the card into our process space as follows:-
fd = shm_open(“Physical”, O_RDWR, 0666);
plxregisters = mmap(0, length, PROT_READ | PROT_WRITE | PROT_NOCACHE,
MAP_SHARED, fd, offset);

If I have to port this code to QNX6.2, i am writing the following code:-
plxregisters = mmap_device_memory(0, length, PROT_READ | PROT_WRITE |
PROT_NOCACHE, 0, pci_config_registers.Base_Address_Regs[0]);

Is this the right way to do??? What is the /dev/shmem/Physical in QNX
4.25?

When i run the pci utility it gives me the following:-
PCI Mem Address = 0xefffff00 h which is struct
_pci_config_regs.Base_Address_Regs[0]
PCI IO Address = 0xdc00 h which is struct
_pci_config_regs.Base_Address_Regs[1]
PCI Mem Address = 0xefc00000 h which is struct
_pci_config_regs.Base_Address_Regs[2]

If what I am doing above is right, then should i use Base_Address_Regs[0] or
Base_Address_Regs[2]???

I am sorry to ask you so many things but truly i dont know much about
these.

Thanks for your help.
Tray.