I am working on arm(926) linux(2.4). I have read the theory about paging and PDTs etc... I also understand how a virtual address is mapped on to a physical address.
But when writing a device driver,i used a simple macro __va and __pa which are used to convert the virtual to physical address or vice versa. [these macros simply add or subtract PAGE_OFFSET to the address]
I am unable to relate these macros with actual paging theory involving the bit shifting and indexing into page tables.....
Can any one clarify my doubts as to how these two things are related ??
Regards Ketan PS: Tried to search it on google but unable to find it
-- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/