File tree Expand file tree Collapse file tree 6 files changed +67
-36
lines changed
Expand file tree Collapse file tree 6 files changed +67
-36
lines changed Original file line number Diff line number Diff line change @@ -52,7 +52,11 @@ static rt_err_t alarm_set(struct rt_alarm *alarm)
5252 struct rt_rtc_wkalarm wkalarm ;
5353 rt_err_t ret ;
5454
55+ #ifdef RT_USING_SOFT_RTC
56+ device = rt_device_find ("sw_rtc" );
57+ #else
5558 device = rt_device_find ("rtc" );
59+ #endif
5660
5761 if (device == RT_NULL )
5862 {
Original file line number Diff line number Diff line change @@ -226,8 +226,8 @@ static int rt_soft_rtc_init(void)
226226 {
227227 return 0 ;
228228 }
229- /* make sure only one 'rtc ' device */
230- RT_ASSERT (!rt_device_find ("rtc " ));
229+ /* make sure only one 'sw_rtc ' device */
230+ RT_ASSERT (!rt_device_find ("sw_rtc " ));
231231
232232#ifdef RT_USING_ALARM
233233 rt_timer_init (& alarm_time ,
@@ -258,7 +258,9 @@ static int rt_soft_rtc_init(void)
258258 /* no private */
259259 soft_rtc_dev .user_data = RT_NULL ;
260260
261- rt_device_register (& soft_rtc_dev , "rtc" , RT_DEVICE_FLAG_RDWR );
261+ rt_device_register (& soft_rtc_dev , "sw_rtc" , RT_DEVICE_FLAG_RDWR );
262+
263+ source_device = & soft_rtc_dev ;
262264
263265 init_ok = RT_TRUE ;
264266
@@ -317,7 +319,7 @@ static void cmd_rtc_sync(int argc, char **argv)
317319 rt_kprintf ("local time: %.*s" , 25 , ctime (& now ));
318320 rt_kprintf ("timestamps: %ld\n" , (long )tv .tv_sec );
319321}
320- MSH_CMD_EXPORT_ALIAS (cmd_rtc_sync , rtc_sync , Update time by real rtc );
322+ MSH_CMD_EXPORT_ALIAS (cmd_rtc_sync , rtc_sync , Update time by soft rtc );
321323#endif
322324
323325#endif /* RT_USING_SYSTEM_WORKQUEUE */
Original file line number Diff line number Diff line change 1212@ (c) Texas Instruments 2009 - 2013 , All rights reserved.
1313@
1414
15- //#include <rtconfig.h>
16-
1715. equ Mode_USR , 0x10
1816. equ Mode_FIQ , 0x11
1917. equ Mode_IRQ , 0x12
@@ -47,7 +45,7 @@ stack_top:
4745 .text
4846 .arm
4947
50- .globl _c_int00
48+ .globl entry
5149
5250.globl _reset
5351_reset:
@@ -122,7 +120,7 @@ next2:
122120next3:
123121 bl next4
124122next4:
125- ldr lr , =_c_int00
123+ ldr lr , =entry
126124 bx lr
127125
128126.globl data_init
@@ -479,26 +477,38 @@ turnon_VFP:
479477 str lr , [ r0 , # 14 * 4 ] @/ * Save calling PC * /
480478 .endm
481479
482- .globl vector_svc
483- vector_svc:
484- push_svc_reg
485- bl rt_hw_trap_svc
486- b .
487-
488- .globl vector_pabort
489- vector_pabort:
490- push_svc_reg
491- bl rt_hw_trap_pabt
492- b .
493-
494- .globl vector_dabort
495- vector_dabort:
496- push_svc_reg
497- bl rt_hw_trap_dabt
498- b .
499-
500- .globl vector_resv
501- vector_resv:
502- push_svc_reg
503- bl rt_hw_trap_resv
504- b .
480+ .globl SWI_Handler
481+ SWI_Handler:
482+ push_svc_reg
483+ bl rt_hw_trap_swi
484+ b .
485+
486+ .globl Undefined_Handler
487+ Undefined_Handler:
488+ push_svc_reg
489+ bl rt_hw_trap_undef
490+ b .
491+
492+ .globl SVC_Handler
493+ SVC_Handler:
494+ push_svc_reg
495+ b rt_hw_trap_svc
496+ b .
497+
498+ .globl Prefetch_Handler
499+ Prefetch_Handler:
500+ push_svc_reg
501+ b rt_hw_trap_pabt
502+ b .
503+
504+ .globl Abort_Handler
505+ Abort_Handler:
506+ push_svc_reg
507+ b rt_hw_trap_dabt
508+ b .
509+
510+ .globl Reserved_Handler
511+ Reserved_Handler:
512+ push_svc_reg
513+ b rt_hw_trap_resv
514+ b .
Original file line number Diff line number Diff line change @@ -31,7 +31,6 @@ ABT_Stack_Size EQU 0x00000000
3131FIQ_Stack_Size EQU 0x00001000
3232IRQ_Stack_Size EQU 0x00001000
3333
34- IMPORT _c_int00
3534 IMPORT rt_hw_trap_svc
3635 IMPORT rt_hw_trap_pabt
3736 IMPORT rt_hw_trap_dabt
@@ -308,6 +307,18 @@ turnon_VFP:
308307 str lr , [ r0 , # 14 * 4 ] ;@/* Save calling PC */
309308 endm
310309
310+ EXPORT SWI_Handler
311+ SWI_Handler:
312+ push_svc_reg
313+ bl rt_hw_trap_swi
314+ b .
315+
316+ EXPORT Undefined_Handler
317+ Undefined_Handler:
318+ push_svc_reg
319+ bl rt_hw_trap_undef
320+ b .
321+
311322 EXPORT SVC_Handler
312323SVC_Handler:
313324 push_svc_reg
Original file line number Diff line number Diff line change 1919@ import reference for interrupt routines
2020
2121 .globl Reset_Handler
22- .globl turnon_VFP
22+ .globl Undefined_Handler
23+ .globl SWI_Handler
2324 .globl SVC_Handler
2425 .globl Prefetch_Handler
2526 .globl Abort_Handler
2829 .globl FIQ_Handler
2930
3031
31- .globl system_vectors
32- system_vectors :
32+ .globl system_vector
33+ system_vector :
3334 b Reset_Handler
34- b turnon_VFP
35+ b Undefined_Handler
36+ b SWI_Handler
3537 b SVC_Handler
3638 b Prefetch_Handler
3739 b Abort_Handler
Original file line number Diff line number Diff line change 2020
2121 IMPORT Reset_Handler
2222 IMPORT Undefined_Handler
23+ IMPORT SWI_Handler
2324 IMPORT SVC_Handler
2425 IMPORT Prefetch_Handler
2526 IMPORT Abort_Handler
3536system_vectors:
3637 b Reset_Handler
3738 b Undefined_Handler
39+ b SWI_Handler
3840 b SVC_Handler
3941 b Prefetch_Handler
4042 b Abort_Handler
You can’t perform that action at this time.
0 commit comments