improve NEC V850 porting

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1705 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
dzzxzz 2011-09-09 10:08:52 +00:00
parent f7d1ca323b
commit 46a823ed91
13 changed files with 276 additions and 448 deletions

Binary file not shown.

View File

@ -1,43 +0,0 @@
This is an internal working file generated by the Source Browser.
10:24 01s
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_port.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_port_user.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_system.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_system_user.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_systeminit.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_timer.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\CG_timer_user.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\application.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\board.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\clock.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\cmd.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\device.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_compiler.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_error.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_heap.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_init.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_node.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_ops.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_parser.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_token.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_var.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\finsh_vm.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\idle.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\interrupt.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\ipc.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\irq.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\kservice.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\mem.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\mempool.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\module.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\object.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\rtm.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\scheduler.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\shell.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\slab.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\stack.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\startup.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\symbol.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\thread.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\timer.pbi
E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\Debug\Obj\uart.pbi

View File

@ -1,33 +0,0 @@
@REM This bat file has been generated by the IAR Embeddded Workbench
@REM C-SPY interactive debugger,as an aid to preparing a command
@REM line for running the cspybat command line utility with the
@REM appropriate settings.
@REM
@REM After making some adjustments to this file, you can launch cspybat
@REM by typing the name of this file followed by the name of the debug
@REM file (usually an ubrof file). Note that this file is generated
@REM every time a new debug session is initialized, so you may want to
@REM move or rename the file before making changes.
@REM
@REM Note: some command line arguments cannot be properly generated
@REM by this process. Specifically, the plugin which is responsible
@REM for the Terminal I/O window (and other C runtime functionality)
@REM comes in a special version for cspybat, and the name of that
@REM plugin dll is not known when generating this file. It resides in
@REM the $TOOLKIT_DIR$\bin folder and is usually called XXXbat.dll or
@REM XXXlibsupportbat.dll, where XXX is the name of the corresponding
@REM tool chain. Replace the '<libsupport_plugin>' parameter
@REM below with the appropriate file name. Other plugins loaded by
@REM C-SPY are usually not needed by, or will not work in, cspybat
@REM but they are listed at the end of this file for reference.
"C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\common\bin\cspybat" "C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\v850\bin\v850proc.dll" "C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\v850\bin\v850minicube2.dll" %1 --plugin "C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\v850\bin\<libsupport_plugin>" --backend -B "-v10" "-p" "C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\v850\CONFIG\DDF\io70f3454.ddf" "-d" "minicube2"
@REM Loaded plugins:
@REM v850LibSupport.dll
@REM C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\common\plugins\CodeCoverage\CodeCoverage.dll
@REM C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\common\plugins\Profiling\Profiling.dll
@REM C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\common\plugins\stack\stack.dll
@REM C:\Program Files\IAR Systems\Embedded Workbench 5.4 Evaluation\common\plugins\SymList\SymList.dll

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<Project>
<Desktop>
<Static>
<Debug-Log>
<ColumnWidth0>20</ColumnWidth0><ColumnWidth1>1381</ColumnWidth1></Debug-Log>
<Build>
<ColumnWidth0>20</ColumnWidth0>
<ColumnWidth1>1035</ColumnWidth1>
<ColumnWidth2>276</ColumnWidth2>
<ColumnWidth3>69</ColumnWidth3>
</Build>
<Workspace>
<ColumnWidths>
<Column0>191</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
</Workspace>
<Disassembly>
<MixedMode>1</MixedMode>
<CodeCovShow>0</CodeCovShow>
<InstrProfShow>0</InstrProfShow>
<PreferedWindows>
<Position>4</Position>
<ScreenPosX>254</ScreenPosX>
<ScreenPosY>143</ScreenPosY>
<Windows/>
</PreferedWindows>
</Disassembly>
<Register><PreferedWindows><Position>2</Position><ScreenPosX>0</ScreenPosX><ScreenPosY>0</ScreenPosY><Windows/></PreferedWindows></Register></Static>
<Windows>
<Wnd0>
<Tabs>
<Tab>
<Identity>TabID-7492-12225</Identity>
<TabName>Debug Log</TabName>
<Factory>Debug-Log</Factory>
<Session/>
</Tab>
<Tab>
<Identity>TabID-6969-12235</Identity>
<TabName>Build</TabName>
<Factory>Build</Factory>
<Session/>
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd0><Wnd1>
<Tabs>
<Tab>
<Identity>TabID-18240-12229</Identity>
<TabName>Workspace</TabName>
<Factory>Workspace</Factory>
<Session>
<NodeDict><ExpandedNode>upd70f3454</ExpandedNode><ExpandedNode>upd70f3454/libcpu</ExpandedNode></NodeDict></Session>
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd1></Windows>
<Editor>
<Pane><Tab><Factory>TextEditor</Factory><Filename>E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\applilet3_src\CG_systeminit.c</Filename><XPos>0</XPos><YPos>69</YPos><SelStart>2342</SelStart><SelEnd>2352</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\applilet3_src\CG_system.c</Filename><XPos>0</XPos><YPos>59</YPos><SelStart>2329</SelStart><SelEnd>2329</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\io70f3454.h</Filename><XPos>0</XPos><YPos>517</YPos><SelStart>27396</SelStart><SelEnd>27456</SelEnd></Tab><Tab><Factory>TextEditor</Factory><Filename>E:\RTT\RTTV850\rt-thread\bsp\upd70f3454\cstartup.s85</Filename><XPos>0</XPos><YPos>97</YPos><SelStart>3377</SelStart><SelEnd>3377</SelEnd></Tab><ActiveTab>3</ActiveTab></Pane><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-0127ff80><key>iaridepm.enu1</key></Toolbar-0127ff80></Sizes></Row0><Row1><Sizes><Toolbar-067426c8><key>debuggergui.enu1</key></Toolbar-067426c8></Sizes></Row1><Row2><Sizes><Toolbar-04f91ae8><key>v850minicube21</key></Toolbar-04f91ae8></Sizes></Row2></Top><Left><Row0><Sizes><Wnd1><Rect><Top>-2</Top><Left>-2</Left><Bottom>472</Bottom><Right>265</Right><x>-2</x><y>-2</y><xscreen>27493</xscreen><yscreen>343</yscreen><sizeHorzCX>19092361</sizeHorzCX><sizeHorzCY>419315</sizeHorzCY><sizeVertCX>185417</sizeVertCX><sizeVertCY>579462</sizeVertCY></Rect></Wnd1></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd0><Rect><Top>-2</Top><Left>-2</Left><Bottom>253</Bottom><Right>1442</Right><x>-2</x><y>-2</y><xscreen>1444</xscreen><yscreen>255</yscreen><sizeHorzCX>1002778</sizeHorzCX><sizeHorzCY>311736</sizeHorzCY><sizeVertCX>19092361</sizeVertCX><sizeVertCY>419315</sizeVertCY></Rect></Wnd0></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Project>

View File

@ -1,124 +0,0 @@
[Interrupts]
Enabled=1
[MemoryMap]
Enabled=0
Base=0
UseAuto=0
TypeViolation=1
UnspecRange=1
ActionState=1
[DataAlign]
Action=1
Notification=1
[DebugChecksum]
Checksum=576357238
[DisAssemblyWindow]
NumStates=_ 1
State 1=_ 1
[InstructionProfiling]
Enabled=_ 0
[CodeCoverage]
Enabled=_ 0
[Profiling]
Enabled=0
[StackPlugin]
Enabled=1
OverflowWarningsEnabled=1
WarningThreshold=90
SpWarningsEnabled=1
WarnHow=0
UseTrigger=1
TriggerName=main
LimitSize=0
ByteLimit=50
[MINICUBE2]
Map0=0,0,262143,256,3
Map1=1,268419072,268431359,12,3
MapEntries=2
HWsettings=1,33024,8155,0,160,0,0,1
HWsettings2=0
HWsettings3=124,1
NWsettings=0,8000,0,0,FFFFFFFFFFFFFFFFFFFF
NWsettings2=1
AutoEventEntries=0
EventEntries=0
SeqName0=
SeqData0=0,0,0
SeqEnable10=0,0,0,0,0,0,0,0,0,0
SeqEnable20=0,0,0,0,0,0,0,0,0,0
SeqEnable30=0,0,0,0,0,0,0,0,0,0
SeqEnable40=0,0,0,0,0,0,0,0,0,0
SeqDisable0=0,0,0,0,0,0,0,0,0,0
SeqName1=
SeqData1=0,0,0
SeqEnable11=0,0,0,0,0,0,0,0,0,0
SeqEnable21=0,0,0,0,0,0,0,0,0,0
SeqEnable31=0,0,0,0,0,0,0,0,0,0
SeqEnable41=0,0,0,0,0,0,0,0,0,0
SeqDisable1=0,0,0,0,0,0,0,0,0,0
SeqName2=
SeqData2=0,0,0
SeqEnable12=0,0,0,0,0,0,0,0,0,0
SeqEnable22=0,0,0,0,0,0,0,0,0,0
SeqEnable32=0,0,0,0,0,0,0,0,0,0
SeqEnable42=0,0,0,0,0,0,0,0,0,0
SeqDisable2=0,0,0,0,0,0,0,0,0,0
TraceSettings=-1,0,0,0,0,0,0,2298478591,12,11,0,1,1,1,8192,0,4
DataFlashSettings=0,0,0,0,0,0,0,0,0,0,0,1,0,1,1
SelfProgrammingSettings=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
TraceSave=1,v850trace.txt
TriggerOutSettings=0,0,0,0,0,0,0,0,0,0
TimerSettings=0,0,0
Tim2Name1=
Tim2Data1=0,0,0,0,0,0,0,0,0
Tim2Start1=0,0,0,0,0,0,0,0,0,0
Tim2Stop1=0,0,0,0,0,0,0,0,0,0
Tim2Name2=
Tim2Data2=0,0,0,0,0,0,0,0,0
Tim2Start2=0,0,0,0,0,0,0,0,0,0
Tim2Stop2=0,0,0,0,0,0,0,0,0,0
Tim2Name3=
Tim2Data3=0,0,0,0,0,0,0,0,0
Tim2Start3=0,0,0,0,0,0,0,0,0,0
Tim2Stop3=0,0,0,0,0,0,0,0,0,0
Tim2Name4=
Tim2Data4=0,0,0,0,0,0,0,0,0
Tim2Start4=0,0,0,0,0,0,0,0,0,0
Tim2Stop4=0,0,0,0,0,0,0,0,0,0
Tim2Name5=
Tim2Data5=0,0,0,0,0,0,0,0,0
Tim2Start5=0,0,0,0,0,0,0,0,0,0
Tim2Stop5=0,0,0,0,0,0,0,0,0,0
Tim2Name6=
Tim2Data6=0,0,0,0,0,0,0,0,0
Tim2Start6=0,0,0,0,0,0,0,0,0,0
Tim2Stop6=0,0,0,0,0,0,0,0,0,0
Tim2Name7=
Tim2Data7=0,0,0,0,0,0,0,0,0
Tim2Start7=0,0,0,0,0,0,0,0,0,0
Tim2Stop7=0,0,0,0,0,0,0,0,0,0
Tim2Name8=
Tim2Data8=0,0,0,0,0,0,0,0,0
Tim2Start8=0,0,0,0,0,0,0,0,0,0
Tim2Stop8=0,0,0,0,0,0,0,0,0,0
Tim2Name9=
Tim2Data9=0,0,0,0,0,0,0,0,0
Tim2Start9=0,0,0,0,0,0,0,0,0,0
Tim2Stop9=0,0,0,0,0,0,0,0,0,0
CoverSettings=0,1048575,66060288,67108863,0,0,0
CoverSettings2=0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Version=1
LastDevFile=DF3454.800
LastSetupFailed=0
[Log file]
LoggingEnabled=_ 0
LogFile=_ ""
Category=_ 0
[TermIOLog]
LoggingEnabled=_ 0
LogFile=_ ""
[Breakpoints]
Count=0
[TraceHelper]
Enabled=0
ShowSource=1

View File

@ -1,66 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<Workspace>
<ConfigDictionary>
<CurrentConfigs><Project>upd70f3454/Debug</Project></CurrentConfigs></ConfigDictionary>
<Desktop>
<Static>
<Workspace>
<ColumnWidths>
<Column0>198</Column0><Column1>27</Column1><Column2>27</Column2><Column3>27</Column3></ColumnWidths>
</Workspace>
<Build>
<ColumnWidth0>20</ColumnWidth0><ColumnWidth1>615</ColumnWidth1><ColumnWidth2>164</ColumnWidth2><ColumnWidth3>41</ColumnWidth3></Build>
<TerminalIO/><Find-in-Files><ColumnWidth0>496</ColumnWidth0><ColumnWidth1>70</ColumnWidth1><ColumnWidth2>850</ColumnWidth2></Find-in-Files><Debug-Log><ColumnWidth0>18</ColumnWidth0><ColumnWidth1>823</ColumnWidth1></Debug-Log></Static>
<Windows>
<Wnd2>
<Tabs>
<Tab>
<Identity>TabID-10377-5417</Identity>
<TabName>Workspace</TabName>
<Factory>Workspace</Factory>
<Session>
<NodeDict><ExpandedNode>upd70f3454</ExpandedNode><ExpandedNode>upd70f3454/Output</ExpandedNode></NodeDict></Session>
</Tab>
</Tabs>
<SelectedTab>0</SelectedTab></Wnd2><Wnd3>
<Tabs>
<Tab>
<Identity>TabID-17988-5479</Identity>
<TabName>Build</TabName>
<Factory>Build</Factory>
<Session/>
</Tab>
<Tab><Identity>TabID-19670-27945</Identity><TabName>Find in Files</TabName><Factory>Find-in-Files</Factory><Session/></Tab><Tab><Identity>TabID-31574-29955</Identity><TabName>Debug Log</TabName><Factory>Debug-Log</Factory><Session/></Tab></Tabs>
<SelectedTab>0</SelectedTab></Wnd3></Windows>
<Editor>
<Pane/><ActivePane>0</ActivePane><Sizes><Pane><X>1000000</X><Y>1000000</Y></Pane></Sizes><SplitMode>1</SplitMode></Editor>
<Positions>
<Top><Row0><Sizes><Toolbar-0127ff80><key>iaridepm.enu1</key></Toolbar-0127ff80></Sizes></Row0><Row1><Sizes/></Row1></Top><Left><Row0><Sizes><Wnd2><Rect><Top>-2</Top><Left>-2</Left><Bottom>477</Bottom><Right>272</Right><x>-2</x><y>-2</y><xscreen>1</xscreen><yscreen>111</yscreen><sizeHorzCX>694</sizeHorzCX><sizeHorzCY>135697</sizeHorzCY><sizeVertCX>190278</sizeVertCX><sizeVertCY>585575</sizeVertCY></Rect></Wnd2></Sizes></Row0></Left><Right><Row0><Sizes/></Row0></Right><Bottom><Row0><Sizes><Wnd3><Rect><Top>-2</Top><Left>-2</Left><Bottom>296</Bottom><Right>1442</Right><x>-2</x><y>-2</y><xscreen>1444</xscreen><yscreen>298</yscreen><sizeHorzCX>1002778</sizeHorzCX><sizeHorzCY>364303</sizeHorzCY><sizeVertCX>694</sizeVertCX><sizeVertCY>135697</sizeVertCY></Rect></Wnd3></Sizes></Row0></Bottom><Float><Sizes/></Float></Positions>
</Desktop>
</Workspace>

View File

@ -25,7 +25,7 @@
</option>
<option>
<name>DynDriver</name>
<state>MIC2V850</state>
<state>IECV850</state>
</option>
<option>
<name>GoToEnable</name>
@ -93,6 +93,105 @@
</option>
</data>
</settings>
<settings>
<name>E1NWIV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>2</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>E1NWIMandatory</name>
<state>0</state>
</option>
<option>
<name>E1NWISuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIEraseFlash</name>
<state>0</state>
</option>
<option>
<name>E1NWIMINICUBESpeed</name>
<state>1</state>
</option>
<option>
<name>E1nwiDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1nwiLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>E1NWIE2RV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>MICE2RMandatory</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>E1SERIALV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
<name>E1SERIALMandatory</name>
<state>0</state>
</option>
<option>
<name>E1SERIALSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1SERIALVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1SERIALEraseFlash</name>
<state>0</state>
</option>
<option>
<name>E1SERIALDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1SERIALLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>EMUV850</name>
<archiveVersion>6</archiveVersion>
@ -372,6 +471,10 @@
<file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>
@ -489,6 +592,105 @@
</option>
</data>
</settings>
<settings>
<name>E1NWIV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>2</version>
<wantNonLocal>1</wantNonLocal>
<debug>0</debug>
<option>
<name>E1NWIMandatory</name>
<state>0</state>
</option>
<option>
<name>E1NWISuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIEraseFlash</name>
<state>0</state>
</option>
<option>
<name>E1NWIMINICUBESpeed</name>
<state>1</state>
</option>
<option>
<name>E1nwiDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1nwiLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>E1NWIE2RV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>0</debug>
<option>
<name>MICE2RMandatory</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1NWIE2RLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>E1SERIALV850</name>
<archiveVersion>6</archiveVersion>
<data>
<version>0</version>
<wantNonLocal>1</wantNonLocal>
<debug>0</debug>
<option>
<name>E1SERIALMandatory</name>
<state>0</state>
</option>
<option>
<name>E1SERIALSuppressLoad</name>
<state>0</state>
</option>
<option>
<name>E1SERIALVerifyLoad</name>
<state>0</state>
</option>
<option>
<name>E1SERIALEraseFlash</name>
<state>0</state>
</option>
<option>
<name>E1SERIALDoLogfile</name>
<state>0</state>
</option>
<option>
<name>E1SERIALLogFile</name>
<state>$PROJ_DIR$\cspycomm.log</state>
</option>
</data>
</settings>
<settings>
<name>EMUV850</name>
<archiveVersion>6</archiveVersion>
@ -768,6 +970,10 @@
<file>$TOOLKIT_DIR$\plugins\rtos\embOS\embOSPlugin.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-286-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>
</plugin>
<plugin>
<file>$TOOLKIT_DIR$\plugins\rtos\uCOS-II\uCOS-II-KA-CSpy.ewplugin</file>
<loadFlag>0</loadFlag>

View File

@ -128,7 +128,7 @@
<name>ICCV850</name>
<archiveVersion>4</archiveVersion>
<data>
<version>15</version>
<version>16</version>
<wantNonLocal>1</wantNonLocal>
<debug>1</debug>
<option>
@ -173,7 +173,7 @@
</option>
<option>
<name>CCDiagSuppress</name>
<state></state>
<state>Pa050</state>
</option>
<option>
<name>CCDiagRemark</name>
@ -261,10 +261,6 @@
<name>CCLibConfigHeader</name>
<state>1</state>
</option>
<option>
<name>CCRequirePrototypes</name>
<state>0</state>
</option>
<option>
<name>CCCharIs</name>
<state>1</state>
@ -273,10 +269,6 @@
<name>CCExt</name>
<state>0</state>
</option>
<option>
<name>CCLangSelect</name>
<state>0</state>
</option>
<option>
<name>CompilerMisraOverride</name>
<state>0</state>
@ -351,6 +343,18 @@
<name>CCAggressiveInlining</name>
<state>0</state>
</option>
<option>
<name>IccLang</name>
<state>0</state>
</option>
<option>
<name>CCRequirePrototypes2</name>
<state>0</state>
</option>
<option>
<name>CCCppDialect</name>
<state>1</state>
</option>
</data>
</settings>
<settings>
@ -955,7 +959,7 @@
<name>ICCV850</name>
<archiveVersion>4</archiveVersion>
<data>
<version>15</version>
<version>16</version>
<wantNonLocal>1</wantNonLocal>
<debug>0</debug>
<option>
@ -1088,10 +1092,6 @@
<name>CCLibConfigHeader</name>
<state>1</state>
</option>
<option>
<name>CCRequirePrototypes</name>
<state>0</state>
</option>
<option>
<name>CCCharIs</name>
<state>1</state>
@ -1100,10 +1100,6 @@
<name>CCExt</name>
<state>0</state>
</option>
<option>
<name>CCLangSelect</name>
<state>0</state>
</option>
<option>
<name>CompilerMisraOverride</name>
<state>0</state>
@ -1175,6 +1171,18 @@
<name>CCAggressiveInlining</name>
<state>0</state>
</option>
<option>
<name>IccLang</name>
<state>0</state>
</option>
<option>
<name>CCRequirePrototypes2</name>
<state>0</state>
</option>
<option>
<name>CCCppDialect</name>
<state>1</state>
</option>
</data>
</settings>
<settings>
@ -1799,10 +1807,7 @@
<name>$PROJ_DIR$\..\..\libcpu\v850\context.asm</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\libcpu\v850\interrupt.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\libcpu\v850\stack.c</name>
<name>$PROJ_DIR$\..\..\libcpu\v850\cpuport.c</name>
</file>
</group>
<file>

View File

@ -40,8 +40,6 @@
PUBLIC rt_hw_interrupt_disable
PUBLIC rt_hw_interrupt_enable
PUBLIC rt_hw_context_switch_to
PUBLIC rt_hw_context_switch
PUBLIC rt_hw_context_switch_interrupt
PUBLIC OSCtxSW
PUBLIC OS_Restore_CPU_Context
@ -122,14 +120,6 @@ rt_hw_context_switch_to:
OSCtxSW:
SAVE_CPU_CTX ;Save all CPU registers
mov rt_thread_switch_interrupt_flag, r1
ld.w 0[r1],r5
cmp 0, r5
be exit
mov 0, r5
st.b r5, 0[r1]
mov rt_interrupt_from_thread, r21
ld.w 0[r21], r21
st.w sp, 0[r21]
@ -138,44 +128,10 @@ OSCtxSW:
ld.w 0[r1], r1
ld.w 0[r1], sp
exit:
;Restore all Processor registers from stack and return from interrupt
jr OS_Restore_CPU_Context
;R1 -> rt_interrupt_from_thread
;R5 -> rt_interrupt_to_thread
rt_hw_context_switch:
mov rt_thread_switch_interrupt_flag, r8
ld.w 0[r8],r9
cmp 1, r9
be jump1
;mov rt_thread_switch_interrupt_flag, r1
mov 1, r9
st.b r9, 0[r8]
mov rt_interrupt_from_thread, r10
st.w r1, 0[r10]
jump1
mov rt_interrupt_to_thread, r11
st.w r5, 0[r11]
trap 0x10
jmp [lp]
rt_hw_context_switch_interrupt:
mov rt_thread_switch_interrupt_flag, r8
ld.w 0[r8],r9
cmp 1, r9
be jump2
;mov rt_thread_switch_interrupt_flag, r1
mov 1, r9
st.b r9, 0[r8]
mov rt_interrupt_from_thread, r10
st.w r1, 0[r10]
jump2
mov rt_interrupt_to_thread, r11
st.w r5, 0[r11]
jmp [lp]
rt_hw_context_switch_interrupt_do
rt_hw_context_switch_interrupt_do:
mov rt_thread_switch_interrupt_flag, r8
mov 0, r9
st.b r9, 0[r8]

View File

@ -1,7 +1,7 @@
/*
* File : stack.c
* File : cpuport.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2009, RT-Thread Development Team
* COPYRIGHT (C) 2009 - 2011, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
@ -9,14 +9,30 @@
*
* Change Logs:
* Date Author Notes
* 2010-06-29 lgnq the first version
*
* For : NEC V850E
* Toolchain : IAR Embedded Workbench for V850 v3.71
*/
* 2011-02-23 Bernard the first version
*/
#include <rtthread.h>
extern volatile rt_uint8_t rt_interrupt_nest;
/* switch flag on interrupt and thread pointer to save switch record */
rt_uint32_t rt_interrupt_from_thread;
rt_uint32_t rt_interrupt_to_thread;
rt_uint32_t rt_thread_switch_interrupt_flag;
/**
* This function will initialize hardware interrupt
*/
void rt_hw_interrupt_init(void)
{
/* init interrupt nest, and context in thread sp */
rt_interrupt_nest = 0;
rt_interrupt_from_thread = 0;
rt_interrupt_to_thread = 0;
rt_thread_switch_interrupt_flag = 0;
}
/**
* This function will initialize thread stack
*
@ -59,3 +75,20 @@ rt_uint8_t *rt_hw_stack_init(void *tentry, void *parameter, rt_uint8_t *stack_ad
*(--stk) = (rt_uint32_t) parameter; /* r1 */
return ((rt_uint8_t *)stk);
}
void rt_hw_context_switch(rt_uint32_t from, rt_uint32_t to)
{
rt_interrupt_from_thread = from;
rt_interrupt_to_thread = to;
asm("trap 0x10");
}
void rt_hw_context_switch_interrupt(rt_uint32_t from, rt_uint32_t to)
{
if (rt_thread_switch_interrupt_flag != 1)
{
rt_thread_switch_interrupt_flag = 1;
rt_interrupt_from_thread = from;
}
rt_interrupt_to_thread = to;
}

View File

@ -1,22 +0,0 @@
/*
* File : interrupt.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2009, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
*
* Change Logs:
* Date Author Notes
* 2010-06-29 lgnq the first version
*
* For : NEC V850E
* Toolchain : IAR Embedded Workbench for V850 v3.71
*/
#include <rtthread.h>
rt_uint32_t rt_interrupt_from_thread;
rt_uint32_t rt_interrupt_to_thread;
rt_uint32_t rt_thread_switch_interrupt_flag;