Hi,
I am working on EVMDM6437 TI board plugged in the PCI slot of my QNX machine. Right now, using a driver I need to configure the registers in DSP through host(qnx).Like I am able to use mmap_device_memory() and get a handle to the shared memory. But the killing need is to like get a handle to the device 's register space.How can I achieve this?
Also I coulndt enable the I/O space of the PCI device even though I write the control word in to the command register.Please help me out.
Giving you the output of pci -vvv:
[i]Class = Data Acquisition (Unknown)
Vendor ID = 104ch, Texas Instruments
Device ID = b001h, Unknown Unknown
PCI index = 0h
Class Codes = 118000h
Revision ID = 1h
Bus number = 1
Device number = 1
Function num = 0
Status Reg = 200h
Command Reg = 556h
I/O space access disabled
Memory space access enabled
Bus Master enabled
Special Cycle operations ignored
Memory Write and Invalidate enabled
Palette Snooping disabled
Parity Checking disabled
Data/Address stepping enabled
SERR# driver disabled
Fast back-to-back transactions to different agents enabled
Header type = 0h Single-function
BIST = 0h Build-in-self-test not supported
Latency Timer = 20h
Cache Line Size= 8h un-cacheable
PCI Mem Address = d8000000h prefetchable 32bit length 8388608 enabled
PCI Mem Address = da400000h 32bit length 65536 enabled
PCI Mem Address = da000000h 32bit length 4194304 enabled
PCI Mem Address = d8800000h prefetchable 32bit length 8388608 enabled
PCI Mem Address = d9000000h prefetchable 32bit length 8388608 enabled
PCI Mem Address = d9800000h prefetchable 32bit length 8388608 enabled
Max Lat = 0ns
Min Gnt = 0ns
PCI Int Pin = INT A
Interrupt line = 11
CPU Interrupt = bh
Capabilities Pointer = 40h
Capability ID = 1h
Capabilities = 2h - 0h
Device Dependent Registers:
0x40: 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00
0x50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xA0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xB0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xC0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xD0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xE0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0xF0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00[/i][/code]
Also, it would greatly help me if someone could write to me the equivalent function for ioremap() in linux to QNX.
Thanks,
Rama.[code]