I am interested to know how we can find out at which address are my hardware registers mapped on "/dev/mem".

Suppose if someone am interested to control GPIO using mmap command.


This link tell the mapping directly, but does not tell how can we find at what address does mapping for hardware devices starts ?

Please suggest on this point.

Any reply will be appreciable.


  • Have you looked into this question?
    – Sai
    Commented Nov 24, 2012 at 15:31
  • Here is another interesting question about it.
    – Jivings
    Commented Nov 25, 2012 at 8:29

1 Answer 1


The code you reference is using the following to address the GPIO controller.

// Access from ARM Running Linux

#define BCM2708_PERI_BASE        0x20000000
#define GPIO_BASE                (BCM2708_PERI_BASE + 0x200000) /* GPIO controller */

The GPIO base address is 0x20200000

The code maps this address to an allocated piece of RAM (i.e. a buffer).

  • but data sheet says ;--
    – apple
    Commented Nov 25, 2012 at 6:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.