X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcpu%2Farm%2Fhw%2Fcrt_arm7tdmi.S;h=bf80e7e3f43cfc0c11888e7d751564bd874ee205;hb=b9e1e52093d33494bf4a8ca27c14a56a25b6e0bc;hp=4c81101dbe4075871559d3f8afe5a851b7e51122;hpb=d420ee9a092830fc703cd350809666db70153881;p=bertos.git diff --git a/bertos/cpu/arm/hw/crt_arm7tdmi.S b/bertos/cpu/arm/hw/crt_arm7tdmi.S index 4c81101d..bf80e7e3 100644 --- a/bertos/cpu/arm/hw/crt_arm7tdmi.S +++ b/bertos/cpu/arm/hw/crt_arm7tdmi.S @@ -121,32 +121,72 @@ end: __dummy_init: mov pc, lr -__xcpt_dummy_undef: - b __xcpt_dummy_undef - -__xcpt_dummy_swi: - b __xcpt_dummy_swi - -__xcpt_dummy_pref: - b __xcpt_dummy_pref - -__xcpt_dummy_dab: - b __xcpt_dummy_dab + /* + * Redefine your own __init() in order to supply + * a completely custom initialization routine. + */ + .weak __init + .set __init, __init0 + /* + * Redefine your own __init1() in order to supply + * an hardware initialization routine. + * Remember that __init1() is called *before* + * clearing .bss and loading .data sections. + */ .weak __init1 .set __init1, __dummy_init + + /* + * Redefine your own __init2() in order to supply + * an hardware initialization routine. + * Remember that __init2() is called *after* + * clearing .bss and loading .data sections, just + * before calling main(). + */ .weak __init2 .set __init2, __dummy_init - .weak __init - .set __init, __init0 + /* + * Redefine your own __undef() in order to supply + * a custom handler for undefined instruction exception. + */ .weak __undef .set __undef, __xcpt_dummy_undef + + /* + * Redefine your own __swi() in order to supply + * a custom handler for software interrupt exception. + */ .weak __swi .set __swi, __xcpt_dummy_swi + + /* + * Redefine your own __prefetch_abort() in order to supply + * a custom handler for prefetch abort exception. + */ .weak __prefetch_abort .set __prefetch_abort, __xcpt_dummy_pref + + /* + * Redefine your own __data_abort() in order to supply + * a custom handler for data abort exception. + */ .weak __data_abort .set __data_abort, __xcpt_dummy_dab .ltorg + + .section .exceptions, "ax", %progbits + +__xcpt_dummy_undef: + b __xcpt_dummy_undef + +__xcpt_dummy_swi: + b __xcpt_dummy_swi + +__xcpt_dummy_pref: + b __xcpt_dummy_pref + +__xcpt_dummy_dab: + b __xcpt_dummy_dab