On Thu, Oct 15, 2009 at 01:49:46AM -0700, Benoit Donnette wrote: > > Hi, > > > > I am trying to understand the magic behind memory mapped I/O in linux > > device drivers. I understand the concepts behind setting up memory > > mapped I/O but I am confused about how the data (once written into > > memory) gets transferred onto the bus and onto the peripheral. > > "Memory mapped I/O" means taht through the specified address, mapped in > the address space, you actually send data to the device. > > It means you map I/O buffers on the device into addressable memory. After > that, everything you write at these addresses will go to the device as set > up, not to memory. > Ok that definitely makes more sense, everything is written directly to the registers on the device not main memory. > > > > E.g. many network drivers use memory mapped I/O and this makes it quite > > generic but how do you specify the bus in all this? > > All the memory mapped I/O setup does the job. > I guess this is the part I am getting confused. For example ethoc.c sets up everything as memory mapped IO. I need to hookup the actual ethoc device to the processor. This will be done using SPI. So how does the 'memory mapped I/O setup' know to use SPI to read/write the data. > > > > Thanks for any help, > > Amit > > Thanks for the quick respone. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel