Warning, /bsps/m68k/mcf52235/README.md is written in an unsupported language. File is not indexed.
0001 Motorola MCF52235EVB
0002 ====================
0003
0004 CPU: MCF52235, 60MHz
0005 SRAM: 32K
0006 FLASH: 256K
0007
0008 This is a Motorola evaluation board that uses the MCF52235 Coldfire CPU.
0009 This board is running at 60MHz scaled from a 25MHz oscillator.
0010
0011
0012 NOTES:
0013
0014 Currently this BSP must be configured with most RTEMS features turned
0015 off as RAM usage is too high.
0016
0017 Configure as follows:
0018
0019 ```shell
0020 configure --target=m68k-rtems4.XXX --enable-rtemsbsp=mcf52235 \
0021 ```
0022
0023 To get the tests to compile (but not run) change the linkcmds to specify
0024 a larger sram memory region (256K works). This of course will let you
0025 compile all tests, but many or most of them wont run.
0026
0027 See testsuites/samples/minumum for an example of what type of config flags
0028 you need for this BSP!
0029
0030 In you project before you include confdefs.h, define some or all of the
0031 following:
0032
0033 ```c
0034 #define CONFIGURE_INIT_TASK_STACK_SIZE x
0035 #define CONFIGURE_MINIMUM_TASK_STACK_SIZE x
0036 #define CONFIGURE_INTERRUPT_STACK_SIZE x
0037 ```
0038
0039 Note that the default stack size is 1K
0040 Note that the default number of priorities is 15
0041
0042
0043 TODO:
0044
0045 *) Add drivers for I2C, ADC, FEC
0046 *) Support for LWIP
0047 *) Recover the 1K stack space reserved in linkcmds used for board startup.
0048
0049
0050
0051 Interrupt map
0052 -------------
0053 ```
0054 +-----+-----------------------------------------------------------------------+
0055 | | PRIORITY |
0056 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0057 |LEVEL| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0058 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0059 | 7 | | | | | | | | |
0060 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0061 | 6 | | | | | | | | |
0062 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0063 | 5 | | | | | | | | |
0064 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0065 | 4 | | | | | | | | PIT |
0066 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0067 | 3 | UART 0 | UART 1 | UART 2 | | | | | |
0068 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0069 | 2 | | | | | | | | |
0070 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0071 | 1 | | | | | | | | |
0072 +-----+--------+--------+--------+--------+--------+--------+--------+--------+
0073 ```
0074
0075 Timing tests
0076 ------------
0077 ```
0078 *** TIME TEST 1 ***
0079 rtems_semaphore_create 8
0080 rtems_semaphore_delete 10
0081 rtems_semaphore_obtain: available 3
0082 rtems_semaphore_obtain: not available -- NO_WAIT 3
0083 rtems_semaphore_release: no waiting tasks 7
0084 *** END OF TEST 1 ***
0085
0086
0087 *** TIME TEST OVERHEAD ***
0088 rtems_shutdown_executive 0
0089 rtems_task_create 0
0090 rtems_task_ident 0
0091 rtems_task_start 0
0092 rtems_task_restart 0
0093 rtems_task_delete 0
0094 rtems_task_suspend 0
0095 rtems_task_resume 0
0096 rtems_task_set_priority 0
0097 rtems_task_mode 0
0098 rtems_task_wake_when 0
0099 rtems_task_wake_after 0
0100 rtems_interrupt_catch 0
0101 rtems_clock_get 0
0102 rtems_clock_set 0
0103 rtems_clock_tick 0
0104 <pause>
0105 rtems_timer_create 0
0106 rtems_timer_delete 0
0107 rtems_timer_ident 0
0108 rtems_timer_fire_after 0
0109 rtems_timer_fire_when 1
0110 rtems_timer_reset 0
0111 rtems_timer_cancel 0
0112 rtems_semaphore_create 0
0113 rtems_semaphore_delete 0
0114 rtems_semaphore_ident 0
0115 rtems_semaphore_obtain 0
0116 rtems_semaphore_release 0
0117 rtems_message_queue_create 0
0118 rtems_message_queue_ident 0
0119 rtems_message_queue_delete 0
0120 rtems_message_queue_send 0
0121 rtems_message_queue_urgent 0
0122 rtems_message_queue_broadcast 0
0123 rtems_message_queue_receive 0
0124 rtems_message_queue_flush 0
0125 <pause>
0126 rtems_event_send 0
0127 rtems_event_receive 0
0128 rtems_signal_catch 0
0129 rtems_signal_send 0
0130 rtems_partition_create 0
0131 rtems_partition_ident 0
0132 rtems_partition_delete 0
0133 rtems_partition_get_buffer 0
0134 rtems_partition_return_buffer 0
0135 rtems_region_create 0
0136 rtems_region_ident 0
0137 rtems_region_delete 0
0138 rtems_region_get_segment 0
0139 rtems_region_return_segment 0
0140 rtems_port_create 0
0141 rtems_port_ident 0
0142 rtems_port_delete 0
0143 rtems_port_external_to_internal 0
0144 rtems_port_internal_to_external 0
0145 <pause>
0146 rtems_io_initialize 0
0147 rtems_io_open 0
0148 rtems_io_close 0
0149 rtems_io_read 0
0150 rtems_io_write 0
0151 rtems_io_control 0
0152 rtems_fatal_error_occurred 0
0153 rtems_rate_monotonic_create 0
0154 rtems_rate_monotonic_ident 0
0155 rtems_rate_monotonic_delete 0
0156 rtems_rate_monotonic_cancel 0
0157 rtems_rate_monotonic_period 0
0158 rtems_multiprocessing_announce 0
0159 *** END OF TIME OVERHEAD ***
0160 ```