FreeCalypso > hg > freecalypso-sw
view gsm-fw/bsp/irq_twiddle.S @ 853:ae254ffeaec3
AT command interface works!
The cause of the breakage was the same Nucleus API issue with NU_Create_Timer()
which we encountered at the very beginning of this project with Riviera timers:
the code in uartfax.c from TCS211 was passing 0 as the initial dummy value for
the timer duration, and our FreeNucleus version doesn't like it. The fix is
the same: pass 1 as the initial dummy value instead.
author | Space Falcon <falcon@ivan.Harhan.ORG> |
---|---|
date | Thu, 30 Apr 2015 01:46:26 +0000 |
parents | 8be182dd9218 |
children |
line wrap: on
line source
/* * TI's L1 code (and possibly other parts of the software suite) calls * functions named INT_DisableIRQ() and INT_EnableIRQ(); in the Leonardo * fw they are implemented (in a very ugly manner, as usual) in the * int.s entry point assembly module. Here we implement the same * functions in a cleaner way. */ #include "../nucleus/asm_defs.h" .code 32 .text .globl INT_DisableIRQ INT_DisableIRQ: mrs r0, CPSR orr r0, r0, #LOCKOUT msr CPSR, r0 bx lr .globl INT_EnableIRQ INT_EnableIRQ: mrs r0, CPSR bic r0, r0, #LOCKOUT msr CPSR, r0 bx lr