1 |
583 |
jeremybenn |
|
2 |
|
|
FREERTOS COLDFIRE MCF523x PORT with lwIP
|
3 |
|
|
|
4 |
|
|
REQUIREMENTS
|
5 |
|
|
============
|
6 |
|
|
|
7 |
|
|
The FreeRTOS port is designed for the MCF523x processor where the hardware
|
8 |
|
|
dependent part consists of the CPU and the peripherals used in this port.
|
9 |
|
|
This includes a programmable timer (PIT) for the preemptive scheduler
|
10 |
|
|
and a UART for the demo application. The Coldfire specific part includes
|
11 |
|
|
the number and type of processor registers, the stack frame layout and
|
12 |
|
|
the usage of a software interrupt (trap) for the yield call.
|
13 |
|
|
|
14 |
|
|
The development environment used is based on the GNU C Compiler for
|
15 |
|
|
a m68k-elf target as well as the insight debugger with some patches for
|
16 |
|
|
the BDM interface[1]. GDB startup and linker scripts are supplied with
|
17 |
|
|
the demo for the M5235BCC evaluation kit from Freescale.
|
18 |
|
|
|
19 |
|
|
[1] ... BDM tools: http://sourceforge.net/projects/bdm/
|
20 |
|
|
|
21 |
|
|
USAGE
|
22 |
|
|
=====
|
23 |
|
|
|
24 |
|
|
A makefile is supplied with the demo application and a binary can be
|
25 |
|
|
produced by calling 'make all'. A special target 'debug' is provided
|
26 |
|
|
which executes the insight debugger. At the insight debugger prompt
|
27 |
|
|
one should select the appropriate target interface (either BDM/Direct
|
28 |
|
|
or BDM/TCP) and should download the application to the development
|
29 |
|
|
board. It is important that the GDB script setup-and-load is executed
|
30 |
|
|
prior to downloading to initialize the SDRAM. After downloading one
|
31 |
|
|
should call the GDB function 'execute' and the PC is set to the start
|
32 |
|
|
of the executable. Execution can be started by typing 'continue' at
|
33 |
|
|
the Insight console interface.
|
34 |
|
|
After this startup phase the insight debugger should work as usual, i.e.
|
35 |
|
|
no grayed out buttons, ...
|
36 |
|
|
|
37 |
|
|
|
38 |
|
|
COMMON PROBLEMS
|
39 |
|
|
===============
|
40 |
|
|
|
41 |
|
|
Most of the problems have their origin in the startup scripts. The
|
42 |
|
|
following list should serve as a checklist where each point must be
|
43 |
|
|
satisfied for the port to work.
|
44 |
|
|
|
45 |
|
|
- The FreeRTOS port only works correctly in the supervisor mode. There-
|
46 |
|
|
fore the Coldfire CPU must run in the supervisor mode.
|
47 |
|
|
|
48 |
|
|
- portVECTOR_TABLE does not point to the currently active vector table.
|
49 |
|
|
Please also note that the vector table must be in RAM such that the
|
50 |
|
|
FreeRTOS port can install a traphandler for the portYIELD() call.
|
51 |
|
|
|
52 |
|
|
|
53 |
|
|
$Id: README.txt 2 2011-07-17 20:13:17Z filepang@gmail.com $
|
54 |
|
|
|
55 |
|
|
MCF5235 + lwIP port - Copyright (c) 2006 Christian Walter.
|
56 |
|
|
|