Hi Jim, If a device or a bus/Interface controller has some memory, then its up to the corresponding driver to make it available to the system. So yes If I am not wrong you should use ioremap to make this memory visible somewhere in the kernel address space. Inturn doing read/write on it should succeed. I don't get the reason has to why u want to use isa_slot_offset. As you know the physical address range for ur interface/bus(and devices) you use that value in ioremap. This would give u a new virtual address which inturn you should/would use in your read/write calls. However has I haven't worked on PCMCIA logic of linux, I may be wrong, if they have some of their own conventions interms has to where they map the memory and or what standard function/macro names they use. Keep :-) HanishKVC Jim Paris wrote: >My system (Vadem Clio 1000, vr4111) has a VG-469 (i82365) PCMCIA >controller with IO port space at 0x14000000, and IO memory space >at 0x10000000. > >3) it can use check/request/release_mem_region on I/O memory > - this fails, because the iomem resource map contains the kernel: > > -more /proc/iomem > 00000000-00ffffff : System Ram > 00002000-001bc6af : Kernel code > 001cf300-00299fff : Kernel data > (this seems very wrong to me, since the kernel is most definately > not in the I/O memory space; real memory, of course, but I/O memory??) >4) it can use ioremap, and then read[bwl] and write[bwl] with the result > - this fails with the current ioremap; neither ioremap nor read/write[bwl] > take isa_slot_offset into account > >Am I misunderstanding how this stuff is supposed to work? Is the >i82365 driver doing anything wrong? > >(The i82365 driver also makes the incorrect assumption that PCMCIA IRQs >directly correspond to system IRQs, but this is definately a problem >with the driver and I've fixed that.) > >-jim >