Hi Prasant, On Wed, Jun 1, 2011 at 10:38 AM, Prashant Shah <pshah.mumbai@xxxxxxxxx> wrote: > Hi, > > On Wed, Jun 1, 2011 at 12:04 PM, sandeep kumar > <coolsandyforyou@xxxxxxxxx> wrote: >> Hi, >> >> ioremap() : >> 2) ioremap does mapping of a particular i/o device to kernel logical memory >> address. > Please correct me if I am wrong. > > I think this function will remap the I/O registers location to a > memory location, so instead of using inb/outb you can use the memory > based functions like readb/writeb. > > eg : lets say I want to read from I/O port 0x80. I will have to use > the inb() function. Now if I ioremap() it to a memory location it I > can use the readb() instead. I'm pretty sure thats not the case (I'm not that familiar with the x86 I/O space on modern processors). I think that if you need to use in/out instructions then you need to do that and there is no way of mapping this into memory space. ioremap is primarily used with memory-mapped peripherals (very common on most non-x86 architectures). If basically maps a chunk of physical memory into a virtual space. If that physical memory happens to conincide with device registers, then that will allow the driver to manipulate those registers. -- Dave Hylands Shuswap, BC, Canada http://www.davehylands.com _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies