blob: c55fb9914c562c21f99026a62450b51d0208c066 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
pub const PERIPHERAL_BASE = 0xfe000000;
pub const AUX_BASE = PERIPHERAL_BASE + 0x215000;
pub const AUX_IRQ = AUX_BASE;
pub const AUX_ENABLE = AUX_BASE + 0x4;
const Auxiliary = enum(u32) {
mini_uart = 1,
spi1 = 2,
spi2 = 4,
};
pub fn enableAux(aux: Auxiliary) void {
const mmio_ptr: *volatile u32 = @ptrFromInt(AUX_ENABLE);
mmio_ptr.* |= @intFromEnum(aux);
}
pub fn disableAux(aux: Auxiliary) void {
const mmio_ptr: *volatile u32 = @ptrFromInt(AUX_ENABLE);
mmio_ptr.* &= ~@intFromEnum(aux);
}
|