diff options
Diffstat (limited to 'src/mmio.c')
-rw-r--r-- | src/mmio.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -1,5 +1,12 @@ | |||
1 | /* | ||
2 | References: | ||
3 | https://wiki.osdev.org/Raspberry_Pi_Bare_Bones | ||
4 | https://jsandler18.github.io/extra/peripheral.html | ||
5 | https://www.raspberrypi.org/app/uploads/2012/02/BCM2835-ARM-Peripherals.pdf | ||
6 | */ | ||
1 | #include <mmio.h> | 7 | #include <mmio.h> |
2 | 8 | ||
9 | // Peripheral base address. | ||
3 | static void* MMIO_BASE; | 10 | static void* MMIO_BASE; |
4 | 11 | ||
5 | void mmio_init(int raspi) { | 12 | void mmio_init(int raspi) { |
@@ -11,6 +18,8 @@ void mmio_init(int raspi) { | |||
11 | } | 18 | } |
12 | } | 19 | } |
13 | 20 | ||
21 | // All MMIO registers are 32-bit. | ||
22 | |||
14 | #define REG_ADDR(reg) ((volatile uint32_t*)(MMIO_BASE + reg)) | 23 | #define REG_ADDR(reg) ((volatile uint32_t*)(MMIO_BASE + reg)) |
15 | 24 | ||
16 | uint32_t mmio_read(uint32_t reg) { | 25 | uint32_t mmio_read(uint32_t reg) { |