Quote:
If the request_region() returns success then I must be able to write to that memory address just freely.
For example: *(char *)myphysicaladdr = some value
|
No; request_region() just gives you ownership of some address range on the (PCI) bus.
To map that range into the CPU's address space, call ioremap(), and don't forget to call iounmap() later for releasing that mapping.
To access that memory, use readb/w/l/q() and writeb/w/l/q().