X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=rpikern;a=blobdiff_plain;f=src%2Fstartup.s;h=3feac3de968cbd2fb2c2df680eaf33893079fca0;hp=308d4faa9d461296923110f20a502c5c12c8e90e;hb=99bdc8838f189f79ba77bfbbf41d7f1b4839ce0f;hpb=993155fee2327f1f3cda285c9548bbb09688a3f3 diff --git a/src/startup.s b/src/startup.s index 308d4fa..3feac3d 100644 --- a/src/startup.s +++ b/src/startup.s @@ -4,10 +4,13 @@ .code 32 startup: - ldr sp, =_stacktop + @ stop all but one of the cores + mrc p15, 0, r0, c0, c0, 5 + ands r0, r0, #0xff + bne exit - mov r0, #2 - bl dbgled + @ setup stack + ldr sp, =_stacktop @ clear bss ldr r0, =_bss_start @@ -19,34 +22,10 @@ startup: subs r1, #4 bne 0b 1: - bl main - - mov r0, #0 - bl dbgled + blx main .global exit exit: wfe b exit - .global dbgled -dbgled: - ldr r3, =0x3f200000 @ gpio base - ldr r2, =0x9000 @ gpio 24 and 25 -> output - str r2, [r3, #8] @ store to GPFSEL2 - ldr r2, =0x01000000 @ bit 24 - tst r0, #1 - strne r2, [r3, #0x1c] @ GPSET0 - streq r2, [r3, #0x28] @ GPCLR0 - lsl r2, #1 - tst r0, #2 - strne r2, [r3, #0x1c] @ GPSET0 - streq r2, [r3, #0x28] @ GPCLR0 - bx lr - - .global delay -delay: - subs r0, r0, #1 - bne delay - bx lr - @ vi:set filetype=armasm: