summaryrefslogtreecommitdiff
path: root/libcpu
AgeCommit message (Collapse)Author
2014-08-01[libcpu] fix spell wrong.bernard
2014-01-11add CM_PER_UARTx_CLKCTRLRTsien
2013-11-17cortex-r4: use byte to allocate the stackGrissiom
Unit of "byte" is more intuitive than "long".
2013-11-17cortex-r4: let svc mode reuse the stack of IRQ on startupGrissiom
As the svc stack is the stack of threads, there is no need to allocate a separate stack for the startup. Reuse the IRQ stack should be OK. Tested on rm48 board.
2013-11-04Fix hardfault bug for gcc portBright Pan
for 2013-02-20 aozima commmit "port for gcc", but the commit is not tested,and the kernel is breakdown in context_gcc.S, the file is a copy from cortex-m3,but not port for cortex-m0, so i complete this port for aozima, test it in stm32f0discovery board , and it works fine.
2013-10-20cortex-r4: dump register on trapsGrissiom
We could not handle any traps except IRQ/FIQ.
2013-10-20cortex-r4: remove RM48x50.h and add armv7.hGrissiom
2013-10-20rm48: move some asm file to libcpuGrissiom
2013-10-20rm48x50: add GCC supportGrissiom
2013-09-22Delete SConscriptBernard Xiong
2013-09-20Import beaglebone portingbernard
2013-09-04sim/posix: move rt_hw_context_switch_interrupt after it's definitionGrissiom
This fix a compile error in Clang.
2013-07-29Merge pull request #132 from MrVan/sep6200Bernard Xiong
SEP6200 Support
2013-07-21Embedded GPLv2 license.weety
2013-07-21fix compiling errorweety
2013-07-21commit againweety
2013-07-21update at91sam9260 project directory structure.weety
2013-07-21update AT91SAM9260 usart driver, using serial driver component.weety
2013-07-17Cleanup and add licencsePeng Fan
2013-07-17SEP6200 SupportPeng Fan
2013-07-09enhancement hard fault exception handler.aozima
2013-06-24fix spelling error.aozima
2013-06-23update libcpu/arm/cortex-m4: support lazy stack optimized.aozima
2013-06-23fixed bug: correct cortex-m SCB->VTOR address.aozima
2013-06-23format code by Astyle.aozima
2013-06-22update libcpu/arm/cortex-m0: restore MSP.aozima
2013-06-22update libcpu/arm/cortex-m3: restore MSP.aozima
2013-06-22update libcpu/arm/cortex-m4: restore MSP.aozima
2013-06-19Merge pull request #109 from grissiom/rm48x50Bernard Xiong
Rm48x50
2013-06-18Signed-off-by: visitor83 <[email protected]>visitor83
format the s3c24x0 serial.c and mini2440 rtconfig.py
2013-06-16ident formatvisitor83
Signed-off-by: visitor83 <root@wolflouis.(none)>
2013-06-12rm48x50: rt_interrupt_nest should be `volatile rt_uint8_t`Grissiom
2013-06-12rm48x50: add cache_{enable, disable}Grissiom
2013-06-05cortex-r4: wrap asm functions with .asmfunc/.endasmfuncGrissiom
2013-06-05cortex-r4: add __rt_ffsGrissiom
2013-05-31move libcpu/arm/rm48x50/ to libcpu/arm/cortex-r4Grissiom
2013-05-31rm48x50: VFP lazy stackingGrissiom
You need to turn on RT_VFP_LAZY_STACKING in rtconfig.h. By default, RTT will turn on VFP for all threads and stack all the VFP registers. When doing lazy stacking, VFP will only be turned on for the thread who issued VFP instructions. Currently, if a thread turned on VFP, it cannot be turned off. RTT will never know what time the thread doesn't need VFP any more. The thread might could turn off the VFP for it self in proper time.
2013-05-31rm48x50: change STMFD/LDMFD to STMDB/LDMIAGrissiom
VFP instructions only have IA(Increment After)/DB(Decrement Before) mode. To keep consistency, just change STM/LDM to DB/IA accordingly.
2013-05-31rm48x50: turn on VFP supportGrissiom
This support Common VFPv2 sub-architecture.
2013-05-30rm48x50: small cleanup on context_ccs.asmGrissiom
2013-05-29rm48x50: fix bug in rt_hw_interrupt_{mask,unmask}Grissiom
2013-05-26rm48x50: optimize a BEQGrissiom
Use condition flag in the ORR. This could eliminate a BEQ.
2013-05-26rm48x50: optimize context_switch_interrupt_to by reuse registersGrissiom
When saving thread registers in context_switch_interrupt_to, we don't change them, just move them. So there is no need to always r0-r3 from stack to the real r0-r3. So just use the intermediate registers and eliminate 2 MOV.
2013-05-26rm48x50: optimize context_switch_interrupt_doGrissiom
Substitude STMFD, MOV, ADD with STMFD, SUB. It reduce one instruction. Tested on board and it works like a charm.
2013-05-26rm48x50: utilize CPS instruction and remove some useless codeGrissiom
2013-05-24add rm48x50 bsp and libcpuGrissiom
We currently only support building with CCS and SCons is not using. bsp/rm48x50/HALCoGen/HALCoGen.{hcg,dil} is the HALCoGen project file. You may need to regenerate the source file as you like, providing that: 1, IRQ is in Dispatch Mode and the table entry is IRQ_Handler. The channel 5 in enabled and connected to IRQ. 2, RTI driver is enabled and compare3 source is selected to counter1 and the compare3 will generate tick in the period of 10ms. This value is coresponding with RT_TICK_PER_SECOND in rtconfig.h. In CCS, you need to create a new CCS project and create link folders pointing at bsp/rm48x50, libcpu/arm/rm48x50 and src/, include/. Remember to add the include path to the Build Properties.
2013-04-10fixed compiling error related to the RT_USING_INTERRUPT_INFO in mini4020yiyue.fang
2013-04-08Use SRAM as EMAC transmit buffer, to avoid the underrun error, especially in ↵weety
the large amount of data communication.
2013-04-02clean up codeweety
2013-04-02fixed context thread issue when using armcc compileweety