Dear Mandrake-Experts I have an PnP-ISA-Card installed in my PC, but do have problems reading/writing from/to the card.
/proc/isapnp says: Card 1 'BUR0020:BUR PCIO' PnP version 1.0 Logical device 0 'BUR0000:Unknown' Supported registers 0x2 Device is active Active port 0x220 Active IRQ 5 Active DMA ,0 Resources 0 Priority acceptable Port 0x200-0xffe0, align 0x1f, size 0x20, 16-bit address decoding IRQ 3,4,5,6,7,2/9,10,11,12,14,15 High-Edge My interpretation is that the Base Address is 0x220. I'm using ioperm to get permission to read/write to the card as follows (I'm root): int initPort() { if(iIOAddr == 0) //iIOAddr is 0x220 return 1; return ioperm(iIOAddr, 0x20, 1); } Reading(writing is done as follows: void readIOw(uint16 iOffset, uint16 *iVal) { if (iVal == NULL) { printf("readIOw: can't write to null pointer\n"); return; } *iVal = inw(iIOAddr + iOffset); //usleep(1); } void writeIOw(uint16 iOffset, uint16 iVal) { outw(iVal, iIOAddr + iOffset); //usleep(1); } Well, to be short, it doesn't work. readIOw always returns 0xffff, which shouldn't be. The same Card works fine under Tornado/vxWorks using the same mechanisms. Therefore the I think the addresses are correct and it might be a Linux realated problem. Any help is really welcome Marcus Content Security by MailMarshal
Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com