diff options
author | Jacques Comeaux <jacquesrcomeaux@protonmail.com> | 2024-01-19 16:41:29 -0600 |
---|---|---|
committer | Jacques Comeaux <jacquesrcomeaux@protonmail.com> | 2024-01-19 16:41:29 -0600 |
commit | 261c210c9c4c1e55103a7af31dfcc539c0e0e5cc (patch) | |
tree | 71840ab97b84dd3f995ea8900b08c98149feac36 /hexedit/gpio.s | |
parent | 473e52cbe7cbee0333b7d97d91c4bbf95c1b3225 (diff) |
Add subroutine for printing hexadecimal word
Diffstat (limited to 'hexedit/gpio.s')
-rw-r--r-- | hexedit/gpio.s | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/hexedit/gpio.s b/hexedit/gpio.s new file mode 100644 index 0000000..32e2c37 --- /dev/null +++ b/hexedit/gpio.s @@ -0,0 +1,23 @@ +.syntax unified +.cpu cortex-m0plus +.thumb + +.equ RESETS_BASE, 0x4000c000 +.equ RESET_OFST, 0x0 +.equ RESET_DONE_OFST, 0x8 + +.equ ATOMIC_CLEAR, 0x3000 + +.type setup_gpio, %function +.global setup_gpio + +setup_gpio: + ldr r1, =(RESETS_BASE + ATOMIC_CLEAR) + movs r0, 0b1 << 5 // IO_BANK0 + str r0, [r1, RESET_OFST] + ldr r1, =RESETS_BASE +1: + ldr r2, [r1, RESET_DONE_OFST] + tst r2, r0 + beq 1b + bx lr |