From: Stefan E. <se...@us...> - 2003-11-10 20:44:20
|
Update of /cvsroot/blob/blob/src/blob In directory sc8-pr-cvs1:/tmp/cvs-serv12791 Modified Files: start-pxa.S Log Message: remove old LED code. Use ledasm-pxa.S now. Index: start-pxa.S =================================================================== RCS file: /cvsroot/blob/blob/src/blob/start-pxa.S,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- start-pxa.S 7 Aug 2003 19:31:01 -0000 1.3 +++ start-pxa.S 10 Nov 2003 20:44:16 -0000 1.4 @@ -37,10 +37,23 @@ */ .macro blink, count - mov r3, \count + mov r6, \count b endless_blink .endm +.macro wait, count + mov r0, \count +0: + subs r0, r0, #1 + bne 0b +.endm + +.macro blinky, count + wait #0x800000 + mov r0, \count + bl led_blink +.endm + .globl reset reset: /* First, mask **ALL** interrupts */ @@ -50,90 +63,49 @@ real_reset: bl gpiosetup - bl ledsetup + bl ledinit bl memsetup bl normal_boot - - blink #1 + blink #2 .globl undefined_instruction undefined_instruction: - blink #2 + blink #3 .globl software_interrupt software_interrupt: - blink #3 + blink #4 .globl prefetch_abort prefetch_abort: - blink #4 + blink #5 .globl data_abort data_abort: - blink #5 + blink #6 .globl not_used not_used: - blink #6 + blink #7 .globl irq irq: - blink #7 + blink #8 .globl fiq fiq: - blink #8 - -#define GPIO25_LED GPIO_bit(25) - -ledset: -#ifdef CSIR_IMS - ldr r1, =GPSR0 - mov r0, #GPIO25_LED - str r0, [r1] -#endif - mov pc, lr - -ledclear: -#ifdef CSIR_IMS - ldr r1, =GPCR0 - mov r0, #GPIO25_LED - str r0, [r1] -#endif - mov pc, lr - -ledsetup: - mov r2, lr -#ifdef CSIR_IMS - ldr r1, =GPDR0 - ldr r0, [r1] - orr r0, r0, #GPIO25_LED - str r0, [r1] -#endif - bl ledclear - mov pc, r2 - -.macro wait, count - mov r0, \count -0: - subs r0, r0, #1 - bne 0b -.endm - -ledflash: - mov r2, lr - bl ledset - wait #0x400000 - bl ledclear - wait #0x400000 - mov pc, r2 + blink #9 +/* endless loop that blinks the LED. r6 contains the number of blinks */ +.globl endless_blink endless_blink: - mov r4, r3 -0: - bl ledflash - subs r4, r4, #1 - bne 0b - wait #0x2000000 - b endless_blink + wait #0x800000 + mov r0, r6 + bl led_blink + b endless_blink +do_blink: + mov r5, lr + wait #0x800000 + bl led_blink + mov pc, r5 |