Recently got the Raspberry Pi Model B and have I2C working off of the GPIO header, I made a memory map of the registers and mmap'd the GPIO. But my question is: How can I use virtual addresses or bus addresses instead of the physical addresses to access the GPIO? I've searched high and low for an example where someone is using something other than the physical addresses and have found diddly squat. I wanted to do this from scratch instead of using another library so I could learn more about embedded programming.
WiringPi uses the physical addresses, as does the library that the Python GPIO access works off of and anywhere else I've seen.
The datasheet references all the registers as bus addresses but tells you how to convert to physical/virtual addresses, which makes me think that I should be able to use the bus addresses somewhere.
Programming in C by the way.
Thanks!

