| 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 |
|
|
|