diff options
author | Marti Bolivar <mbolivar@leaflabs.com> | 2011-03-24 17:27:38 -0400 |
---|---|---|
committer | Marti Bolivar <mbolivar@leaflabs.com> | 2011-03-24 17:31:47 -0400 |
commit | 63ea7464925b8cbeb8623d08a2bde0b1d2044047 (patch) | |
tree | c1e0291202084d8d8011b0b66715a711108cbef4 /wirish/ext_interrupts.cpp | |
parent | bc246609ccd44601a0564fea8da407cc500ad471 (diff) | |
download | librambutan-63ea7464925b8cbeb8623d08a2bde0b1d2044047.tar.gz librambutan-63ea7464925b8cbeb8623d08a2bde0b1d2044047.zip |
Adding /wirish/boards/ for easier porting; shrank PIN_MAPs.
/wirish/boards/ contains xxx.h and xxx.cpp (for xxx=maple,
maple_native, maple_mini, maple_RET6). The headers contain the
board-specific #defines that used to live in boards.h (except
BOARD_INIT, which was removed). The CPP files contain the PIN_MAP
definitions that used to live in boards.cpp, and a proper boardInit()
function to replace the old BOARD_INIT macro. This will make it
easier to add new boards in the future.
struct PinMapping was renamed struct stm32_pin_info, and was moved
into a new wirish_types.h. Its external interrupt field was moved
into struct gpio_dev, which saves memory by storing an afio_exti_port
per port, rather than one per pin. Also rearranged the stm32_pin_info
fields to improve packing. Maple's PIN_MAP is now down to below 500
bytes.
Diffstat (limited to 'wirish/ext_interrupts.cpp')
-rw-r--r-- | wirish/ext_interrupts.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/wirish/ext_interrupts.cpp b/wirish/ext_interrupts.cpp index 5b32b05..060994f 100644 --- a/wirish/ext_interrupts.cpp +++ b/wirish/ext_interrupts.cpp @@ -49,8 +49,8 @@ void attachInterrupt(uint8 pin, voidFuncPtr handler, ExtIntTriggerMode mode) { exti_trigger_mode outMode = exti_out_mode(mode); - exti_attach_interrupt((afio_exti_num)(PIN_MAP[pin].pin), - PIN_MAP[pin].ext_port, + exti_attach_interrupt((afio_exti_num)(PIN_MAP[pin].gpio_pin), + gpio_exti_port(PIN_MAP[pin].gpio_device), handler, outMode); } @@ -64,7 +64,7 @@ void detachInterrupt(uint8 pin) { return; } - exti_detach_interrupt((afio_exti_num)(PIN_MAP[pin].pin)); + exti_detach_interrupt((afio_exti_num)(PIN_MAP[pin].gpio_pin)); } static inline exti_trigger_mode exti_out_mode(ExtIntTriggerMode mode) { |