Changes between Initial Version and Version 1 of TBR/BSP/Rtl22xx_t


Ignore:
Timestamp:
Nov 3, 2007, 10:40:30 AM (13 years ago)
Author:
Rayx
Comment:

New page: This BSP is a thumb-enabled version of rtl22xx. Also, this bsp is an example of how development can development/change there own bsp from ARM mode to Thumb mode. Common code (IRQ, ISR) is ...

Legend:

Unmodified
Added
Removed
Modified
  • TBR/BSP/Rtl22xx_t

    v1 v1  
     1= Rtl22xx t =
     2
     3
     4This BSP is a thumb-enabled version of rtl22xx. Also, this bsp is an example of how development can development/change there own bsp from ARM mode to Thumb mode.
     5Common code (IRQ, ISR) is already changed. BSP developer should take of there own assembly/inline-assembly codes which deal with CPSR/SPSR. Bellow is the things need to changed:
     61)      Changes the CPU_CFLAGS to CPU_CFLAGS +=  -mthumb in the BSP’s cfg file. -mthumb-interwork is not necessary because the low-level code has its own veneer that change between modes
     72)      start.S   This file must be in ARM mode, so add .arm/.code 32 in the beginning. Code will transfer to thumb mode when call boot_card. So use bx instead of bl when doing this. If want the code return back to start.S after boot_card. LR must update because bx will not update lr automatically
     83)      bsp_dir/irq/bsp_irq_asm.S, it is better to write this function in C instead of assembly. However, this function should be thumb mode now, and when function finished, MUST return back to ARM mode with bx
     94)      bspclean.c. change the b _start to bx reg. Because the startup code must be in arm mode. (also b _start will refuse to compile in thumb mode)
     10
     11BSP is compiled with gcc 4.2.1, binutils 2.18 with multi-lib for thumb enabled