mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-08-19 01:28:32 -04:00
RL78/GCC related:
+ Add RL78G14 specific linker script. + Move the call to the function that sets up the clocks to before the code that sets up the .data and .bss sections.
This commit is contained in:
parent
08b959f143
commit
3b9d0819c9
3 changed files with 129 additions and 17 deletions
|
@ -217,6 +217,7 @@ short main( void )
|
|||
ucTemp = RESF;
|
||||
ucTemp = sizeof( char* );
|
||||
ucTemp = sizeof( pdTASK_CODE );
|
||||
#warning Take out all references to the P1 LED.
|
||||
P1 &= 0xFE; PM1 &= 0xFE;
|
||||
P1_bit.no0 = 1;
|
||||
|
||||
|
@ -226,7 +227,7 @@ short main( void )
|
|||
/* First create the 'standard demo' tasks. These are used to demonstrate
|
||||
API functions being used and also to test the kernel port. More information
|
||||
is provided on the FreeRTOS.org WEB site. */
|
||||
// vStartDynamicPriorityTasks();
|
||||
vStartDynamicPriorityTasks();
|
||||
#warning Runs if the debugger is not connected and vStartDynamicPriorityTasks() is commented out.
|
||||
vStartPolledQueueTasks( tskIDLE_PRIORITY );
|
||||
vCreateBlockTimeTasks();
|
||||
|
|
|
@ -8,8 +8,8 @@
|
|||
/* */
|
||||
/* This file is generated by e2studio. */
|
||||
/* */
|
||||
/***********************************************************************/
|
||||
|
||||
/***********************************************************************/
|
||||
|
||||
|
||||
|
||||
/*reset_program.asm*/
|
||||
|
@ -18,11 +18,11 @@
|
|||
|
||||
.global _PowerON_Reset /*! global Start routine */
|
||||
.short _PowerON_Reset
|
||||
|
||||
#ifdef CPPAPP
|
||||
|
||||
#ifdef CPPAPP
|
||||
___dso_handle:
|
||||
.global ___dso_handle
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
.extern _HardwareSetup /*! external Sub-routine to initialise Hardware*/
|
||||
|
@ -30,9 +30,9 @@ ___dso_handle:
|
|||
.extern _mdata
|
||||
.extern _ebss
|
||||
.extern _bss
|
||||
|
||||
|
||||
.extern _edata
|
||||
.extern _main
|
||||
.extern _main
|
||||
.extern _stack
|
||||
.extern _exit
|
||||
|
||||
|
@ -40,7 +40,7 @@ ___dso_handle:
|
|||
;; DE = end of list
|
||||
;; BC = step direction (+2 or -2)
|
||||
*/
|
||||
|
||||
|
||||
.text
|
||||
|
||||
/* call to _PowerON_Reset */
|
||||
|
@ -48,8 +48,11 @@ _PowerON_Reset:
|
|||
/* initialise user stack pointer */
|
||||
movw sp,#_stack /* Set stack pointer */
|
||||
|
||||
/* call the hardware initialiser */
|
||||
call !!_HardwareSetup
|
||||
nop
|
||||
|
||||
/* load data section from ROM to RAM */
|
||||
/* load data section from ROM to RAM */
|
||||
;; block move to initialize .data
|
||||
|
||||
;; we're copying from 00:[_romdatastart] to 0F:[_datastart]
|
||||
|
@ -58,7 +61,7 @@ _PowerON_Reset:
|
|||
sel rb0 /* ;;bank 0 */
|
||||
movw de, #_mdata /* src ROM address of data section in de */
|
||||
movw hl, #_data /* dest start RAM address of data section in hl */
|
||||
|
||||
|
||||
sel rb1 /* bank 1 */
|
||||
movw hl, #_data /* dest start RAM address of data section in hl */
|
||||
movw ax, #_edata /* ;; size of romdata section in ax */
|
||||
|
@ -79,7 +82,7 @@ _PowerON_Reset:
|
|||
br $1b
|
||||
1:
|
||||
|
||||
|
||||
|
||||
/* bss initialisation : zero out bss */
|
||||
sel rb0 /* bank 0 */
|
||||
movw hl, #_bss /* store the start address of bss in hl */
|
||||
|
@ -101,10 +104,6 @@ _PowerON_Reset:
|
|||
1:
|
||||
sel rb0 /* bank 0 */
|
||||
|
||||
/* call the hardware initialiser */
|
||||
call !!_HardwareSetup
|
||||
nop
|
||||
|
||||
/* start user program */
|
||||
|
||||
movw ax, #0
|
||||
|
@ -118,4 +117,4 @@ _PowerON_Reset:
|
|||
_exit:
|
||||
br $_exit
|
||||
|
||||
.end
|
||||
.end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue