OpenCores
URL https://opencores.org/ocsvn/de1_olpcl2294_system/de1_olpcl2294_system/trunk

Subversion Repositories de1_olpcl2294_system

[/] [de1_olpcl2294_system/] [trunk/] [sw/] [ecos/] [ecos-3.0_diff.txt] - Blame information for rev 8

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 8 qaztronic
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/cdl/flash_de1_olpcx2294.cdl ./ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/cdl/flash_de1_olpcx2294.cdl
2
--- /opt/ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/cdl/flash_de1_olpcx2294.cdl        1969-12-31 16:00:00.000000000 -0800
3
+++ ./ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/cdl/flash_de1_olpcx2294.cdl   2009-12-04 17:20:22.000000000 -0800
4
@@ -0,0 +1,74 @@
5
+# ====================================================================
6
+#
7
+#      flash_olpcx2294.cdl
8
+#
9
+#      FLASH memory - Hardware support on Olimex LPC-X2294 boards
10
+#
11
+# ====================================================================
12
+## ####ECOSGPLCOPYRIGHTBEGIN####
13
+## -------------------------------------------
14
+## This file is part of eCos, the Embedded Configurable Operating System.
15
+## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
16
+##
17
+## eCos is free software; you can redistribute it and/or modify it under
18
+## the terms of the GNU General Public License as published by the Free
19
+## Software Foundation; either version 2 or (at your option) any later
20
+## version.
21
+##
22
+## eCos is distributed in the hope that it will be useful, but WITHOUT
23
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
24
+## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
25
+## for more details.
26
+##
27
+## You should have received a copy of the GNU General Public License
28
+## along with eCos; if not, write to the Free Software Foundation, Inc.,
29
+## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
30
+##
31
+## As a special exception, if other files instantiate templates or use
32
+## macros or inline functions from this file, or you compile this file
33
+## and link it with other works to produce a work based on this file,
34
+## this file does not by itself cause the resulting work to be covered by
35
+## the GNU General Public License. However the source code for this file
36
+## must still be made available in accordance with section (3) of the GNU
37
+## General Public License v2.
38
+##
39
+## This exception does not invalidate any other reasons why a work based
40
+## on this file might be covered by the GNU General Public License.
41
+## -------------------------------------------
42
+## ####ECOSGPLCOPYRIGHTEND####
43
+# ====================================================================
44
+######DESCRIPTIONBEGIN####
45
+#
46
+# Author(s):      Sergei Gavrikov
47
+# Contributors:   Sergei Gavrikov
48
+# Date:           2008-11-28
49
+#
50
+#####DESCRIPTIONEND####
51
+#
52
+# ====================================================================
53
+
54
+cdl_package CYGPKG_DEVS_FLASH_ARM_DE1_OLPCX2294_V2 {
55
+    display       "Support for FLASH memory parts on OLPC-X2294 boards."
56
+
57
+    compile       -library=libextras.a arm_olpcx2294_flash.c
58
+
59
+    parent        CYGPKG_IO_FLASH
60
+    active_if     CYGPKG_IO_FLASH
61
+
62
+    requires      (CYGPKG_HAL_ARM_LPC2XXX_OLPCE2294 || \
63
+                   CYGPKG_HAL_ARM_LPC2XXX_OLPCH2294 || \
64
+                   CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294 || \
65
+                   CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294)
66
+
67
+    requires      CYGPKG_DEVS_FLASH_STRATA_V2
68
+
69
+    implements    CYGHWR_IO_FLASH_BLOCK_LOCKING
70
+
71
+    description "
72
+        Olimex LPC-X2294 boards all have strata family 28FxxxC3 flash
73
+        memory parts. These parts have boot blocks. There is no buffered
74
+        write capability. Individual blocks can be locked and unlocked
75
+        in software"
76
+
77
+}
78
+
79
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/src/arm_olpcx2294_flash.c ./ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/src/arm_olpcx2294_flash.c
80
--- /opt/ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/src/arm_olpcx2294_flash.c  1969-12-31 16:00:00.000000000 -0800
81
+++ ./ecos-3.0/packages/devs/flash/arm/de1_olpcx2294/v3_0/src/arm_olpcx2294_flash.c     2009-12-04 17:20:22.000000000 -0800
82
@@ -0,0 +1,114 @@
83
+//==========================================================================
84
+//
85
+//      arm_olpcx2294_flash.c
86
+//
87
+//      Flash programming for Intel FlashFile devices on Olimex LPC-X2294
88
+//
89
+//==========================================================================
90
+// ####ECOSGPLCOPYRIGHTBEGIN####
91
+// -------------------------------------------
92
+// This file is part of eCos, the Embedded Configurable Operating System.
93
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
94
+//
95
+// eCos is free software; you can redistribute it and/or modify it under
96
+// the terms of the GNU General Public License as published by the Free
97
+// Software Foundation; either version 2 or (at your option) any later
98
+// version.
99
+//
100
+// eCos is distributed in the hope that it will be useful, but WITHOUT
101
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
102
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
103
+// for more details.
104
+//
105
+// You should have received a copy of the GNU General Public License
106
+// along with eCos; if not, write to the Free Software Foundation, Inc.,
107
+// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
108
+//
109
+// As a special exception, if other files instantiate templates or use
110
+// macros or inline functions from this file, or you compile this file
111
+// and link it with other works to produce a work based on this file,
112
+// this file does not by itself cause the resulting work to be covered by
113
+// the GNU General Public License. However the source code for this file
114
+// must still be made available in accordance with section (3) of the GNU
115
+// General Public License v2.
116
+//
117
+// This exception does not invalidate any other reasons why a work based
118
+// on this file might be covered by the GNU General Public License.
119
+// -------------------------------------------
120
+// ####ECOSGPLCOPYRIGHTEND####
121
+//==========================================================================
122
+//#####DESCRIPTIONBEGIN####
123
+//
124
+// Author(s):     Sergei Gavrikov
125
+// Contributors:  Sergei Gavrikov
126
+// Date:          2008-11-28
127
+// Purpose:
128
+// Description:
129
+//
130
+//####DESCRIPTIONEND####
131
+//
132
+//========================================================================*/
133
+
134
+#include 
135
+
136
+#if !defined(CYGPKG_HAL_ARM_LPC2XXX_OLPCE2294) && \
137
+    !defined(CYGPKG_HAL_ARM_LPC2XXX_OLPCH2294) && \
138
+    !defined(CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294) && \
139
+    !defined(CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294)
140
+# error Unsupported target
141
+#endif
142
+
143
+#ifdef CYGPKG_DEVS_FLASH_STRATA_V2
144
+
145
+#include 
146
+#include 
147
+
148
+// Olimex LPC-E2294 development board and Olimex LPC-H2294 header board both
149
+// have 28F320C3-B flash memory part, Olimex LPC-L2294-1M development board has
150
+// 28F160C3-B flash memory part. All boards have 16-bit access to it's flash
151
+// devices.
152
+static const CYG_FLASH_FUNS(hal_olpcx2294_flash_strata_funs,
153
+    &cyg_strata_init_check_devid_16,
154
+    &cyg_flash_devfn_query_nop,
155
+    &cyg_strata_erase_16,
156
+    &cyg_strata_program_16,
157
+    (int (*)(struct cyg_flash_dev*, const cyg_flashaddr_t, void*, size_t))0,
158
+    &cyg_strata_lock_k3_16,
159
+    &cyg_strata_unlock_k3_16);
160
+
161
+static const cyg_strata_dev hal_olpcx2294_flash_priv = {
162
+    .manufacturer_code = CYG_FLASH_STRATA_MANUFACTURER_INTEL,
163
+#ifdef CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294
164
+    .device_code = 0x88c3, /* 16-Mbit x 16-B, 28F160C3-B */
165
+#else
166
+    .device_code = 0x88c5, /* 32-Mbit x 16-B, 28F320C3-B */
167
+#endif
168
+    .bufsize    = 1,
169
+    .block_info = {
170
+#ifdef CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294
171
+        { 0x00002000,  8 },/* boot bottom 8 x 8K blocks */
172
+        { 0x00010000, 31 } /* 31 x 64K blocks */
173
+#else
174
+        { 0x00002000,  8 },/* boot bottom 8 x 8K blocks */
175
+        { 0x00010000, 63 } /* 63 x 64K blocks */
176
+#endif
177
+    }
178
+};
179
+
180
+CYG_FLASH_DRIVER(hal_olpcx2294_flash,
181
+                 &hal_olpcx2294_flash_strata_funs,
182
+                 0,
183
+                 0x80000000,
184
+#ifdef CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294
185
+                 0x801fffff,
186
+#else
187
+                 0x803fffff,
188
+#endif
189
+                 2,
190
+                 hal_olpcx2294_flash_priv.block_info,
191
+                 &hal_olpcx2294_flash_priv
192
+);
193
+
194
+#endif//CYGPKG_DEVS_FLASH_STRATA_V2
195
+// ------------------------------------------------------------------------
196
+// EOF arm_olpcx2294_flash.c
197
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/ecos.db ./ecos-3.0/packages/ecos.db
198
--- /opt/ecos-3.0/packages/ecos.db      2009-03-27 01:58:47.000000000 -0700
199
+++ ./ecos-3.0/packages/ecos.db 2010-02-22 16:59:23.924394200 -0800
200
@@ -6690,3 +6690,60 @@
201
         to run eCos on the STM3210E EVAL board."
202
 }
203
 
204
+
205
+# --------------------
206
+#
207
+# --------------------
208
+
209
+
210
+package CYGPKG_DEVS_FLASH_ARM_DE1_OLPCX2294_V2 {
211
+        alias           { "External Flash memory support for OLPCE2294, OLPCH2294, OLPCL2294" flash_olpcx2294_v2 }
212
+        directory       devs/flash/arm/de1_olpcx2294
213
+        script          flash_de1_olpcx2294.cdl
214
+        hardware
215
+        description "
216
+            The flash_olpcx2294_v2 provides hardware support for external
217
+            flash memory parts on the Olimex LPC-E2294, LPC-H2294,
218
+            and LPC-L2294-1M boards. It uses eCos Flash v2 API."
219
+}
220
+
221
+
222
+# package CYGPKG_IO_SERIAL_ARM_LPC2XXX {
223
+#     alias             { "ARM LPC2XXX serial device drivers"
224
+#                         devs_serial_arm_lpc2xxx lpc2xxx_serial_driver }
225
+#     hardware
226
+#     directory         devs/serial/arm/lpc2xxx
227
+#     script            ser_arm_lpc2xxx.cdl
228
+#     description       "ARM LPC2XXX serial device drivers"
229
+# }
230
+
231
+
232
+package CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294 {
233
+        alias           { "Olimex LPC-L2294-1MB development and Terasic DE1 boards" hal_de1_olpcl2294_arm }
234
+        directory       hal/arm/lpc2xxx/de1_olpcl2294
235
+        script          hal_arm_lpc2xxx_de1_olpcl2294.cdl
236
+        hardware
237
+        description "
238
+            The olpcl2294 HAL package provides the support needed to run
239
+            eCos on Olimex LPC-L2294-1MB development and Terasic DE1 boards."
240
+}
241
+
242
+
243
+target de1_olpcl2294 {
244
+        alias { "Olimex LPC-L2294-1MB development and Terasic DE1 boards" }
245
+        packages { CYGPKG_HAL_ARM
246
+                   CYGPKG_HAL_ARM_LPC2XXX
247
+                   CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294
248
+                   CYGPKG_DEVS_FLASH_STRATA_V2
249
+                   CYGPKG_DEVS_FLASH_ARM_DE1_OLPCX2294_V2
250
+                   CYGPKG_DEVS_ETH_CL_CS8900A
251
+                   CYGPKG_DEVS_ETH_ARM_OLPCL2294
252
+                   CYGPKG_IO_SERIAL_GENERIC_16X5X
253
+                   CYGPKG_IO_SERIAL_ARM_LPC2XXX
254
+                   CYGPKG_DEVICES_WATCHDOG_ARM_LPC2XXX
255
+        }
256
+        description "
257
+            The olpcl2294 target provides the packages needed to run
258
+            eCos on Olimex LPC-L2294-1MB development and Terasic DE1 boards."
259
+}
260
+
261
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/cdl/hal_arm_lpc2xxx_de1_olpcl2294.cdl ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/cdl/hal_arm_lpc2xxx_de1_olpcl2294.cdl
262
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/cdl/hal_arm_lpc2xxx_de1_olpcl2294.cdl     1969-12-31 16:00:00.000000000 -0800
263
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/cdl/hal_arm_lpc2xxx_de1_olpcl2294.cdl        2009-12-04 17:20:22.000000000 -0800
264
@@ -0,0 +1,297 @@
265
+# ====================================================================
266
+#
267
+#      hal_arm_lpc2xxx_de1_olpcl2294.cdl
268
+#
269
+#      ARM LPC2XXX OLPCL2294 development board package configuration
270
+#      data
271
+#
272
+# ====================================================================
273
+## ####ECOSGPLCOPYRIGHTBEGIN####
274
+## -------------------------------------------
275
+## This file is part of eCos, the Embedded Configurable Operating System.
276
+## Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
277
+##
278
+## eCos is free software; you can redistribute it and/or modify it under
279
+## the terms of the GNU General Public License as published by the Free
280
+## Software Foundation; either version 2 or (at your option) any later
281
+## version.
282
+##
283
+## eCos is distributed in the hope that it will be useful, but WITHOUT
284
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
285
+## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
286
+## for more details.
287
+##
288
+## You should have received a copy of the GNU General Public License
289
+## along with eCos; if not, write to the Free Software Foundation, Inc.,
290
+## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
291
+##
292
+## As a special exception, if other files instantiate templates or use
293
+## macros or inline functions from this file, or you compile this file
294
+## and link it with other works to produce a work based on this file,
295
+## this file does not by itself cause the resulting work to be covered by
296
+## the GNU General Public License. However the source code for this file
297
+## must still be made available in accordance with section (3) of the GNU
298
+## General Public License v2.
299
+##
300
+## This exception does not invalidate any other reasons why a work based
301
+## on this file might be covered by the GNU General Public License.
302
+## -------------------------------------------
303
+## ####ECOSGPLCOPYRIGHTEND####
304
+# ====================================================================
305
+######DESCRIPTIONBEGIN####
306
+#
307
+# Author(s):      Sergei Gavrikov
308
+# Contributors:   Sergei Gavrikov
309
+# Date:           2008-08-31
310
+#
311
+#####DESCRIPTIONEND####
312
+#
313
+# ====================================================================
314
+
315
+cdl_package CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294 {
316
+    display       "Olimex LPC-L2294-1MB development and Terasic DE1 boards"
317
+    parent        CYGPKG_HAL_ARM_LPC2XXX
318
+    define_header hal_arm_lpc2xxx_de1_olpcl2294.h
319
+    include_dir   cyg/hal
320
+    hardware
321
+    description   "
322
+        The OLPCL2294 HAL package provides the support needed to run
323
+        eCos on Olimex LPC-L2294-1MB development board."
324
+
325
+    compile       de1_olpcl2294_misc.c
326
+
327
+    requires      { CYGHWR_HAL_ARM_LPC2XXX == "LPC2294" }
328
+
329
+    define_proc {
330
+        puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H   "
331
+        puts $::cdl_system_header "#define CYGBLD_HAL_VARIANT_H  "
332
+        puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H "
333
+        puts $::cdl_header "#define HAL_PLATFORM_CPU    \"ARM7TDMI-S\""
334
+        puts $::cdl_header "#define HAL_PLATFORM_BOARD  \"Olimex LPC-L2294-1MB development and Terasic DE1 boards\""
335
+        puts $::cdl_header "#define HAL_PLATFORM_EXTRA  \"\""
336
+    }
337
+
338
+    cdl_component CYG_HAL_STARTUP {
339
+        display       "Startup type"
340
+        flavor        data
341
+        default_value {"RAM"}
342
+        legal_values  {"RAM" "ROM"}
343
+        no_define
344
+        define -file system.h CYG_HAL_STARTUP
345
+        description   "Choose RAM or ROM startup type."
346
+    }
347
+
348
+    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT {
349
+        display      "Default console channel."
350
+        flavor       data
351
+        calculated   0
352
+    }
353
+
354
+    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
355
+        display      "Number of communication channels on the board"
356
+        flavor       data
357
+        calculated   1
358
+    }
359
+
360
+    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
361
+        display          "Debug serial port"
362
+        active_if        CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
363
+        flavor data
364
+        legal_values     0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
365
+        default_value    0
366
+        description      "
367
+            There is one serial connector on the board."
368
+     }
369
+
370
+     cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
371
+         display          "Diagnostic serial port"
372
+         active_if        CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
373
+         flavor data
374
+         legal_values     0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
375
+         default_value    CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
376
+         description      "
377
+            There is one serial connector on the board."
378
+     }
379
+
380
+     cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
381
+        display       "Diagnostic serial port baud rate"
382
+        flavor        data
383
+        legal_values  9600 19200 38400 57600 115200 230400
384
+        default_value 38400
385
+        description   "
386
+            This option selects the baud rate used for the diagnostic
387
+            port."
388
+    }
389
+
390
+    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
391
+         display       "GDB serial port baud rate"
392
+         flavor        data
393
+         legal_values  9600 19200 38400 57600 115200 230400
394
+         default_value 38400
395
+         description   "
396
+            This option controls the baud rate used for the GDB
397
+            connection."
398
+    }
399
+
400
+    # Real-time clock/counter specifics
401
+    cdl_option CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ {
402
+        display       "CPU xtal frequency"
403
+        flavor        data
404
+        default_value {14745600}
405
+    }
406
+
407
+    cdl_option CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL {
408
+        display       "CPU PLL multiplier"
409
+        flavor        data
410
+        default_value {4}
411
+    }
412
+
413
+    cdl_option CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED {
414
+        display       "CPU clock speed"
415
+        flavor        data
416
+        calculated { CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL *
417
+                     CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ }
418
+    }
419
+
420
+    cdl_component CYGBLD_GLOBAL_OPTIONS {
421
+        display "Global build options"
422
+        flavor  none
423
+        parent  CYGPKG_NONE
424
+        description   "
425
+            Global build options including control over compiler flags,
426
+            linker flags and choice of toolchain."
427
+
428
+        cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
429
+            display "Global command prefix"
430
+            flavor  data
431
+            no_define
432
+            default_value { "arm-eabi" }
433
+            description "
434
+                This option specifies the command prefix used when
435
+                invoking the build tools."
436
+        }
437
+
438
+        cdl_option CYGBLD_GLOBAL_CFLAGS {
439
+            display "Global compiler flags"
440
+            flavor  data
441
+            no_define
442
+            default_value { CYGBLD_GLOBAL_WARNFLAGS . CYGBLD_ARCH_CFLAGS .
443
+                            "-mcpu=arm7tdmi -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions" }
444
+            description   "
445
+                This option controls the global compiler flags which
446
+                are used to compile all packages by default. Individual
447
+                packages may define options which override these global
448
+                flags."
449
+        }
450
+
451
+        cdl_option CYGBLD_GLOBAL_LDFLAGS {
452
+            display "Global linker flags"
453
+            flavor  data
454
+            no_define
455
+            default_value { CYGBLD_ARCH_LDFLAGS . "-mcpu=arm7tdmi -Wl,--gc-sections -Wl,-static -g -nostdlib" }
456
+            description   "
457
+                This option controls the global linker flags. Individual
458
+                packages may define options which override these global
459
+                flags."
460
+        }
461
+    }
462
+
463
+    cdl_option CYGSEM_HAL_ROM_MONITOR {
464
+        display       "Behave as a ROM monitor"
465
+        flavor        bool
466
+        default_value 0
467
+        parent        CYGPKG_HAL_ROM_MONITOR
468
+        requires      { CYG_HAL_STARTUP == "ROM" }
469
+        description   "
470
+            Enable this option if this program is to be used as a
471
+            ROM monitor, i.e. applications will be loaded into RAM on
472
+            the board, and this ROM monitor may process exceptions or
473
+            interrupts generated from the application. This enables
474
+            features such as utilizing a separate interrupt stack when
475
+            exceptions are generated."
476
+    }
477
+
478
+    cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
479
+         display       "Work with a ROM monitor"
480
+         flavor        booldata
481
+         legal_values  { "Generic" "GDB_stubs" }
482
+         default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 }
483
+         parent        CYGPKG_HAL_ROM_MONITOR
484
+         requires      { CYG_HAL_STARTUP == "RAM" }
485
+         description   "
486
+             Support can be enabled for different varieties of ROM
487
+             monitor.  This support changes various eCos semantics such
488
+             as the encoding of diagnostic output, or the overriding of
489
+             hardware interrupt vectors.
490
+             Firstly there is \"Generic\" support which prevents the
491
+             HAL from overriding the hardware vectors that it does not
492
+             use, to instead allow an installed ROM monitor to handle
493
+             them. This is the most basic support which is likely to be
494
+             common to most implementations of ROM monitor.
495
+             \"GDB_stubs\" provides support when GDB stubs are included
496
+             in the ROM monitor or boot ROM."
497
+     }
498
+
499
+    cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
500
+        display       "Redboot HAL options"
501
+        flavor        none
502
+        no_define
503
+        parent        CYGPKG_REDBOOT
504
+        active_if     CYGPKG_REDBOOT
505
+        description   "
506
+            This option lists the target's requirements for a valid
507
+            Redboot configuration."
508
+
509
+        cdl_option CYGBLD_BUILD_REDBOOT_BIN {
510
+            display       "Build Redboot ROM binary image"
511
+            active_if     CYGBLD_BUILD_REDBOOT
512
+            requires      { !CYGBLD_BUILD_REDBOOT_WITH_EXEC }
513
+            default_value 1
514
+            no_define
515
+            description "
516
+                This option enables the conversion of the Redboot ELF
517
+                image to a binary image suitable for ROM programming."
518
+
519
+                compile -library=libextras.a redboot_cmds.c
520
+
521
+            compile -library=libextras.a redboot_cmds.c
522
+
523
+            make -priority 325 {
524
+                /bin/redboot.bin : /bin/redboot.elf
525
+                $(OBJCOPY) --strip-debug $< $(@:.bin=.img)
526
+                $(OBJCOPY) -O srec $< $(@:.bin=.srec)
527
+                $(OBJCOPY) -O ihex $< $(@:.bin=.hex)
528
+                $(OBJCOPY) -O binary $< $@
529
+            }
530
+
531
+        }
532
+    }
533
+
534
+    cdl_component CYGHWR_MEMORY_LAYOUT {
535
+        display "Memory layout"
536
+        flavor data
537
+        no_define
538
+        calculated { (CYG_HAL_STARTUP == "RAM") ? "arm_lpc2xxx_de1_olpcl2294_ram" :
539
+                                                  "arm_lpc2xxx_de1_olpcl2294_rom" }
540
+        cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
541
+            display "Memory layout linker script fragment"
542
+            flavor data
543
+            no_define
544
+            define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
545
+            calculated { (CYG_HAL_STARTUP == "RAM") ?
546
+                             "" :
547
+                             "" }
548
+        }
549
+
550
+        cdl_option CYGHWR_MEMORY_LAYOUT_H {
551
+            display "Memory layout header file"
552
+            flavor data
553
+            no_define
554
+            define -file system.h CYGHWR_MEMORY_LAYOUT_H
555
+            calculated { (CYG_HAL_STARTUP == "RAM") ?
556
+                             "" :
557
+                             "" }
558
+        }
559
+    }
560
+}
561
+
562
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/hal_platform_setup.h ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/hal_platform_setup.h
563
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/hal_platform_setup.h      1969-12-31 16:00:00.000000000 -0800
564
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/hal_platform_setup.h 2009-12-04 15:45:06.000000000 -0800
565
@@ -0,0 +1,230 @@
566
+#ifndef CYGONCE_HAL_PLATFORM_SETUP_H
567
+#define CYGONCE_HAL_PLATFORM_SETUP_H
568
+/*=============================================================================
569
+//
570
+//      hal_platform_setup.h
571
+//
572
+//      Platform specific support for HAL (assembly code)
573
+//
574
+//=============================================================================
575
+// ####ECOSGPLCOPYRIGHTBEGIN####
576
+// -------------------------------------------
577
+// This file is part of eCos, the Embedded Configurable Operating System.
578
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
579
+//
580
+// eCos is free software; you can redistribute it and/or modify it under
581
+// the terms of the GNU General Public License as published by the Free
582
+// Software Foundation; either version 2 or (at your option) any later
583
+// version.
584
+//
585
+// eCos is distributed in the hope that it will be useful, but WITHOUT
586
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
587
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
588
+// for more details.
589
+//
590
+// You should have received a copy of the GNU General Public License
591
+// along with eCos; if not, write to the Free Software Foundation, Inc.,
592
+// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
593
+//
594
+// As a special exception, if other files instantiate templates or use
595
+// macros or inline functions from this file, or you compile this file
596
+// and link it with other works to produce a work based on this file,
597
+// this file does not by itself cause the resulting work to be covered by
598
+// the GNU General Public License. However the source code for this file
599
+// must still be made available in accordance with section (3) of the GNU
600
+// General Public License v2.
601
+//
602
+// This exception does not invalidate any other reasons why a work based
603
+// on this file might be covered by the GNU General Public License.
604
+// -------------------------------------------
605
+// ####ECOSGPLCOPYRIGHTEND####
606
+//=============================================================================
607
+//#####DESCRIPTIONBEGIN####
608
+//
609
+// Author(s):     Sergei Gavrikov
610
+// Contributors:  Sergei Gavrikov
611
+// Date:          2008-08-31
612
+// Purpose:       Olimex LPC-L2294-1MB platform specific support routines
613
+// Description:
614
+// Usage:         #include 
615
+//
616
+//####DESCRIPTIONEND####
617
+//
618
+//===========================================================================*/
619
+
620
+#include 
621
+#include 
622
+#include 
623
+
624
+        // There is one only diagnostic led marked STAT on the board
625
+        // |P1.23  330 Om    LED
626
+        // |------\/\/\/-----|<|-----> 3.3 V
627
+        // |
628
+
629
+        .macro  _led_init
630
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_IO_BASE
631
+        ldr r1,[r0,#CYGARC_HAL_LPC2XXX_REG_IO1DIR]
632
+        orr r1,r1,#(1<<23)
633
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_IO1DIR]
634
+
635
+        .endm // _led_init
636
+
637
+        .macro _led x
638
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_IO_BASE
639
+        ldr r1,=(1<<23)
640
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_IO1SET]
641
+        ldr r1,=((\x & 1)<<23)
642
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_IO1CLR]
643
+
644
+        .endm // _led
645
+
646
+        .macro _pll_init
647
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_SCB_BASE
648
+
649
+        mov r2,#0xAA
650
+        mov r3,#0x55
651
+
652
+        // enable PLL
653
+        mov r1,#1
654
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCON]
655
+
656
+        mov r1,#(0x20 | (CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL - 1))
657
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCFG]
658
+
659
+        // update PLL registers
660
+        str r2,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED]
661
+        str r3,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED]
662
+
663
+        // wait for it to lock
664
+1:
665
+        ldr r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLSTAT]
666
+        ands r1,r1,#(1<<10)
667
+        beq 1b
668
+
669
+        // connect PLL
670
+        mov r1,#3
671
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLCON]
672
+
673
+        // update PLL registers
674
+        str r2,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED]
675
+        str r3,[r0,#CYGARC_HAL_LPC2XXX_REG_PLLFEED]
676
+
677
+        .endm // _pll_init
678
+
679
+        .macro _mem_init
680
+        // copy first 64 bytes from ROM to on-chip RAM
681
+        mov r0,#0
682
+        mov r1,#0x40000000
683
+        mov r2,#0x40
684
+1:
685
+        ldr r3,[r0,#4]!
686
+        str r3,[r1,#4]!
687
+        cmps r0,r2
688
+        bne 1b
689
+
690
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_SCB_BASE
691
+        mov r1,#2 // interrupt vector table is mapped to RAM
692
+        str r1, [r0,#CYGARC_HAL_LPC2XXX_REG_MEMMAP]
693
+        // flash timings
694
+        mov r1,#4
695
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_MAMTIM]
696
+        mov r1,#2 // 2, full MAM
697
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_MAMCR]
698
+
699
+        // External memory interface depends on the bank width (32, 16 or 8 bit
700
+        // selected via MW bits in corresponding BCFG register).  Furthermore,
701
+        // choice of the memory chip(s) will require an adequate setup of RBLE
702
+        // bit in BCFG register, too. RBLE = 0 in case of 8-bit based external
703
+        // memories, while memory chips capable of accepting 16 or 32 bit wide
704
+        // data will work with RBLE = 1.
705
+        //
706
+        // BANK0: 2M FLASH
707
+        // TE28F160C3BD70 (1024Kx16 x 1, 70nS)
708
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_BCFG0
709
+        ldr r1,=  (0x3 << 0)    /* IDCY=3, idle timing  */\
710
+                | (0x4 << 5)    /* WST1=4, read timing  */\
711
+                | (0x1 << 10)   /* RBLE=1               */\
712
+                | (0x6 << 11)   /* WST2=6, write timing */\
713
+                | (0x1 << 28)   /* MW=1,   16-bits      */
714
+        str r1,[r0]
715
+
716
+        // BANK1: 1M RAM
717
+        // K6R4016V1D (512Kx16 x 2, 10nS)
718
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_BCFG1
719
+        // Warning: changed these timings, you can fall dramatically the eCos
720
+        // kernel performance. Check it then using the eCos 'tm_basic' test.
721
+        ldr r1,=  (0x0 << 0)    /* IDCY=0, idle cycles  */\
722
+                | (0x0 << 5)    /* WST1=0, read timing  */\
723
+                | (0x1 << 10)   /* RBLE=1               */\
724
+                | (0x0 << 11)   /* WST2=0, write timing */\
725
+                | (0x2 << 28)   /* MW=2,   32-bits      */
726
+        str r1,[r0]
727
+
728
+        // BANK2: Ethernet
729
+        // CS8900A (16-bit, an interrupt driven mode)
730
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_BCFG2
731
+        ldr r1,=  (0x1 << 0)    /* IDCY=1, idle cycles  */\
732
+                | (0x8 << 5)    /* WST1=8, read timing  */\
733
+                | (0x1 << 10)   /* RBLE=1               */\
734
+                | (0x6 << 11)   /* WST2=6, write timing */\
735
+                | (0x1 << 28)   /* MW=1,   16-bits      */
736
+        str r1,[r0]
737
+
738
+        .endm // _mem_init
739
+
740
+        .macro _gpio_init
741
+        ldr r0,=CYGARC_HAL_LPC2XXX_REG_PIN_BASE
742
+
743
+        // Configure P0.15:0 as PIO, but UART0, EINT2
744
+        ldr r1,=  (0x1 << 0)    /* P0.0 as TxD0         */\
745
+                | (0x1 << 2)    /* P0.1 as RxD0         */\
746
+                | (0x2 << 30)   /* P0.1 as EINT2(CL/IRQ)*/
747
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PINSEL0]
748
+
749
+        // Configure P0.30:16 as PIO, but EINT0 ('BUT' button)
750
+        ldr r1,=  (0x1 << 0)    /* P0.16 as EINT0       */
751
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PINSEL1]
752
+
753
+        // GPIO P1.25:16, P3.24 are used as PIO
754
+        ldr r1,=  (0x1 << 2)    /* P1.31:26 Debug port  */\
755
+                | (0x2 << 4)    /* D31:0,CS0,OE,BLS0-3  */\
756
+                | (0x1 << 8)    /* WE enabled           */\
757
+                | (0x1 << 11)   /* CS1 enabled          */\
758
+                | (0x1 << 14)   /* CS2 enabled          */\
759
+                | (0x1 << 23)   /* A0 enabled           */\
760
+                | (0x1 << 24)   /* A1 enabled           */\
761
+                | (0x7 << 25)   /* A23:2 enabled        */
762
+        str r1,[r0,#CYGARC_HAL_LPC2XXX_REG_PINSEL2]
763
+
764
+        .endm // _gpio_init
765
+
766
+#define CYGHWR_LED_MACRO _led \x
767
+
768
+#if defined(CYG_HAL_STARTUP_ROM)
769
+
770
+        .macro  _setup
771
+
772
+        _pll_init
773
+
774
+        _mem_init
775
+
776
+        _gpio_init
777
+
778
+        _led_init
779
+
780
+        .endm
781
+
782
+#define CYGSEM_HAL_ROM_RESET_USES_JUMP
783
+
784
+#else
785
+
786
+        .macro  _setup
787
+
788
+        .endm
789
+
790
+#endif // CYG_HAL_STARTUP_ROM
791
+
792
+#define PLATFORM_SETUP1     _setup
793
+
794
+#endif // CYGONCE_HAL_PLATFORM_SETUP_H
795
+
796
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.h ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.h
797
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.h       1969-12-31 16:00:00.000000000 -0800
798
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.h  2009-12-04 15:45:06.000000000 -0800
799
@@ -0,0 +1,19 @@
800
+#ifndef __ASSEMBLER__
801
+#include 
802
+#include 
803
+
804
+#endif
805
+
806
+#define CYGMEM_REGION_ram (0x81000000)
807
+#define CYGMEM_REGION_ram_SIZE (0x00100000)
808
+#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
809
+
810
+#ifndef __ASSEMBLER__
811
+extern char CYG_LABEL_NAME (__heap1) [];
812
+
813
+#endif
814
+
815
+#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
816
+
817
+#define CYGMEM_SECTION_heap1_SIZE (0x81100000 - (size_t) CYG_LABEL_NAME (__heap1))
818
+
819
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.ldi ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.ldi
820
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.ldi     1969-12-31 16:00:00.000000000 -0800
821
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_ram.ldi        2009-12-04 15:45:06.000000000 -0800
822
@@ -0,0 +1,25 @@
823
+#include 
824
+
825
+MEMORY
826
+{
827
+    ram0 : ORIGIN = 0x40000000, LENGTH = 0x4000
828
+    ram  : ORIGIN = 0x81000000, LENGTH = 0x100000
829
+}
830
+
831
+SECTIONS
832
+{
833
+    SECTIONS_BEGIN
834
+    SECTION_fixed_vectors (ram0, 0x40000020, LMA_EQ_VMA)
835
+    SECTION_rom_vectors (ram, 0x81010000, LMA_EQ_VMA)
836
+    SECTION_text (ram, ALIGN (0x4), LMA_EQ_VMA)
837
+    SECTION_fini (ram, ALIGN (0x4), LMA_EQ_VMA)
838
+    SECTION_rodata (ram, ALIGN (0x4), LMA_EQ_VMA)
839
+    SECTION_rodata1 (ram, ALIGN (0x4), LMA_EQ_VMA)
840
+    SECTION_fixup (ram, ALIGN (0x4), LMA_EQ_VMA)
841
+    SECTION_gcc_except_table (ram, ALIGN (0x4), LMA_EQ_VMA)
842
+    SECTION_data (ram, ALIGN (0x4), LMA_EQ_VMA)
843
+    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
844
+    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
845
+    SECTIONS_END
846
+}
847
+
848
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.h ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.h
849
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.h       1969-12-31 16:00:00.000000000 -0800
850
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.h  2009-12-04 15:45:06.000000000 -0800
851
@@ -0,0 +1,22 @@
852
+#ifndef __ASSEMBLER__
853
+#include 
854
+#include 
855
+
856
+#endif
857
+
858
+#define CYGMEM_REGION_rom (0x00000000)
859
+#define CYGMEM_REGION_rom_SIZE (0x00040000)
860
+#define CYGMEM_REGION_rom_ATTR (CYGMEM_REGION_ATTR_R)
861
+#define CYGMEM_REGION_ram (0x81000000)
862
+#define CYGMEM_REGION_ram_SIZE (0x00100000)
863
+#define CYGMEM_REGION_ram_ATTR (CYGMEM_REGION_ATTR_R | CYGMEM_REGION_ATTR_W)
864
+
865
+#ifndef __ASSEMBLER__
866
+extern char CYG_LABEL_NAME (__heap1) [];
867
+
868
+#endif
869
+
870
+#define CYGMEM_SECTION_heap1 (CYG_LABEL_NAME (__heap1))
871
+
872
+#define CYGMEM_SECTION_heap1_SIZE (0x81100000 - (size_t) CYG_LABEL_NAME (__heap1))
873
+
874
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.ldi ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.ldi
875
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.ldi     1969-12-31 16:00:00.000000000 -0800
876
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/pkgconf/mlt_arm_lpc2xxx_de1_olpcl2294_rom.ldi        2009-12-04 15:45:06.000000000 -0800
877
@@ -0,0 +1,26 @@
878
+#include 
879
+
880
+MEMORY
881
+{
882
+    ram0   : ORIGIN = 0x40000000, LENGTH = 0x4000
883
+    ram    : ORIGIN = 0x81000000, LENGTH = 0x100000
884
+    rom    : ORIGIN = 0x00000000, LENGTH = 0x40000
885
+}
886
+
887
+SECTIONS
888
+{
889
+    SECTIONS_BEGIN
890
+    SECTION_rom_vectors (rom, 0x00000000, LMA_EQ_VMA)
891
+    SECTION_text (rom, ALIGN (0x4), LMA_EQ_VMA)
892
+    SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA)
893
+    SECTION_rodata (rom, ALIGN (0x4), LMA_EQ_VMA)
894
+    SECTION_rodata1 (rom, ALIGN (0x4), LMA_EQ_VMA)
895
+    SECTION_fixup (rom, ALIGN (0x4), LMA_EQ_VMA)
896
+    SECTION_gcc_except_table (rom, ALIGN (0x4), LMA_EQ_VMA)
897
+    SECTION_fixed_vectors (ram0, 0x40000020, LMA_EQ_VMA)
898
+    SECTION_data (ram, 0x81000000, FOLLOWING (.gcc_except_table))
899
+    SECTION_bss (ram, ALIGN (0x4), LMA_EQ_VMA)
900
+    CYG_LABEL_DEFN(__heap1) = ALIGN (0x8);
901
+    SECTIONS_END
902
+}
903
+
904
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/plf_io.h ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/plf_io.h
905
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/plf_io.h  1969-12-31 16:00:00.000000000 -0800
906
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/include/plf_io.h     2009-12-04 15:45:06.000000000 -0800
907
@@ -0,0 +1,66 @@
908
+#ifndef CYGONCE_HAL_PLF_IO_H
909
+#define CYGONCE_HAL_PLF_IO_H
910
+//=============================================================================
911
+//
912
+//      plf_io.h
913
+//
914
+//      Olimex LPC-L2294-1MB board specific registers
915
+//
916
+//=============================================================================
917
+// ####ECOSGPLCOPYRIGHTBEGIN####
918
+// -------------------------------------------
919
+// This file is part of eCos, the Embedded Configurable Operating System.
920
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
921
+//
922
+// eCos is free software; you can redistribute it and/or modify it under
923
+// the terms of the GNU General Public License as published by the Free
924
+// Software Foundation; either version 2 or (at your option) any later
925
+// version.
926
+//
927
+// eCos is distributed in the hope that it will be useful, but WITHOUT
928
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
929
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
930
+// for more details.
931
+//
932
+// You should have received a copy of the GNU General Public License
933
+// along with eCos; if not, write to the Free Software Foundation, Inc.,
934
+// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
935
+//
936
+// As a special exception, if other files instantiate templates or use
937
+// macros or inline functions from this file, or you compile this file
938
+// and link it with other works to produce a work based on this file,
939
+// this file does not by itself cause the resulting work to be covered by
940
+// the GNU General Public License. However the source code for this file
941
+// must still be made available in accordance with section (3) of the GNU
942
+// General Public License v2.
943
+//
944
+// This exception does not invalidate any other reasons why a work based
945
+// on this file might be covered by the GNU General Public License.
946
+// -------------------------------------------
947
+// ####ECOSGPLCOPYRIGHTEND####
948
+//=============================================================================
949
+//#####DESCRIPTIONBEGIN####
950
+//
951
+// Author(s):     Sergei Gavrikov
952
+// Contributors:  Sergei Gavrikov
953
+// Date:          2008-08-31
954
+// Purpose:       Olimex LPC-L2294-1MB board specific registers
955
+// Description:
956
+// Usage:         #include 
957
+//
958
+//####DESCRIPTIONEND####
959
+//
960
+//=============================================================================
961
+// On-chip device base addresses
962
+
963
+#ifndef __ASSEMBLER__
964
+extern void hal_plf_hardware_init(void);
965
+#define HAL_PLF_HARDWARE_INIT() \
966
+            hal_plf_hardware_init()
967
+
968
+#endif // __ASSEMBLER__
969
+
970
+//-----------------------------------------------------------------------------
971
+// end of plf_io.h
972
+#endif // CYGONCE_HAL_PLF_IO_H
973
+
974
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_RAM.ecm ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_RAM.ecm
975
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_RAM.ecm      1969-12-31 16:00:00.000000000 -0800
976
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_RAM.ecm 2009-12-04 15:45:07.000000000 -0800
977
@@ -0,0 +1,104 @@
978
+cdl_savefile_version 1;
979
+cdl_savefile_command cdl_savefile_version {};
980
+cdl_savefile_command cdl_savefile_command {};
981
+cdl_savefile_command cdl_configuration { description hardware template package };
982
+cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
983
+cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
984
+cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
985
+cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
986
+
987
+cdl_configuration eCos {
988
+    description "" ;
989
+    hardware    olpcl2294 ;
990
+    template    redboot ;
991
+    package -hardware CYGPKG_HAL_ARM v3_0 ;
992
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX v3_0 ;
993
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294 v3_0 ;
994
+    package -hardware CYGPKG_DEVS_FLASH_STRATA_V2 v3_0 ;
995
+    package -hardware CYGPKG_DEVS_FLASH_ARM_OLPCX2294_V2 v3_0 ;
996
+    package -hardware CYGPKG_DEVS_ETH_CL_CS8900A v3_0 ;
997
+    package -hardware CYGPKG_DEVS_ETH_ARM_OLPCL2294 v3_0 ;
998
+    package -hardware CYGPKG_IO_SERIAL_GENERIC_16X5X v3_0 ;
999
+    package -hardware CYGPKG_IO_SERIAL_ARM_LPC2XXX v3_0 ;
1000
+    package -hardware CYGPKG_DEVICES_WATCHDOG_ARM_LPC2XXX v3_0 ;
1001
+    package -template CYGPKG_HAL v3_0 ;
1002
+    package -template CYGPKG_INFRA v3_0 ;
1003
+    package -template CYGPKG_REDBOOT v3_0 ;
1004
+    package -template CYGPKG_ISOINFRA v3_0 ;
1005
+    package -template CYGPKG_LIBC_STRING v3_0 ;
1006
+    package -template CYGPKG_CRC v3_0 ;
1007
+    package CYGPKG_IO_ETH_DRIVERS v3_0 ;
1008
+    package CYGPKG_NS_DNS v3_0 ;
1009
+    package CYGPKG_COMPRESS_ZLIB v3_0 ;
1010
+    package CYGPKG_IO_FLASH v3_0 ;
1011
+};
1012
+
1013
+cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
1014
+    inferred_value 0
1015
+};
1016
+
1017
+cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
1018
+    inferred_value 0
1019
+};
1020
+
1021
+cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
1022
+    user_value 4096
1023
+};
1024
+
1025
+cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
1026
+    user_value 0
1027
+};
1028
+
1029
+cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
1030
+    inferred_value 0
1031
+};
1032
+
1033
+cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
1034
+    inferred_value 1
1035
+};
1036
+
1037
+cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
1038
+    inferred_value 0 0
1039
+};
1040
+
1041
+cdl_component CYGHWR_HAL_ARM_LPC2XXX {
1042
+    inferred_value LPC2294
1043
+};
1044
+
1045
+cdl_component CYGBLD_BUILD_REDBOOT {
1046
+    user_value 1
1047
+};
1048
+
1049
+cdl_option CYGBLD_BUILD_REDBOOT_WITH_EXEC {
1050
+    inferred_value 0
1051
+};
1052
+
1053
+cdl_option CYGBLD_ISO_STRTOK_R_HEADER {
1054
+    inferred_value 1 
1055
+};
1056
+
1057
+cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {
1058
+    inferred_value 1 
1059
+};
1060
+
1061
+cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {
1062
+    inferred_value 1 
1063
+};
1064
+
1065
+cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {
1066
+    inferred_value 1 
1067
+};
1068
+
1069
+cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {
1070
+    inferred_value 1 
1071
+};
1072
+
1073
+cdl_option CYGBLD_ISO_DNS_HEADER {
1074
+    inferred_value 1 
1075
+};
1076
+
1077
+cdl_option CYGPKG_NS_DNS_BUILD {
1078
+    inferred_value 0
1079
+};
1080
+
1081
+
1082
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM.ecm ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM.ecm
1083
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM.ecm      1969-12-31 16:00:00.000000000 -0800
1084
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM.ecm 2009-12-04 17:20:22.000000000 -0800
1085
@@ -0,0 +1,112 @@
1086
+cdl_savefile_version 1;
1087
+cdl_savefile_command cdl_savefile_version {};
1088
+cdl_savefile_command cdl_savefile_command {};
1089
+cdl_savefile_command cdl_configuration { description hardware template package };
1090
+cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
1091
+cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
1092
+cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
1093
+cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
1094
+
1095
+cdl_configuration eCos {
1096
+    description "" ;
1097
+    hardware    de1_olpcl2294 ;
1098
+    template    redboot ;
1099
+    package -hardware CYGPKG_HAL_ARM v3_0 ;
1100
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX v3_0 ;
1101
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX_DE1_OLPCL2294 v3_0 ;
1102
+    package -hardware CYGPKG_DEVS_FLASH_STRATA_V2 v3_0 ;
1103
+    package -hardware CYGPKG_DEVS_FLASH_ARM_DE1_OLPCX2294_V2 v3_0 ;
1104
+    package -hardware CYGPKG_DEVS_ETH_CL_CS8900A v3_0 ;
1105
+    package -hardware CYGPKG_DEVS_ETH_ARM_OLPCL2294 v3_0 ;
1106
+    package -hardware CYGPKG_IO_SERIAL_GENERIC_16X5X v3_0 ;
1107
+    package -hardware CYGPKG_IO_SERIAL_ARM_LPC2XXX v3_0 ;
1108
+    package -hardware CYGPKG_DEVICES_WATCHDOG_ARM_LPC2XXX v3_0 ;
1109
+    package -template CYGPKG_HAL v3_0 ;
1110
+    package -template CYGPKG_INFRA v3_0 ;
1111
+    package -template CYGPKG_REDBOOT v3_0 ;
1112
+    package -template CYGPKG_ISOINFRA v3_0 ;
1113
+    package -template CYGPKG_LIBC_STRING v3_0 ;
1114
+    package -template CYGPKG_CRC v3_0 ;
1115
+    package CYGPKG_IO_ETH_DRIVERS v3_0 ;
1116
+    package CYGPKG_NS_DNS v3_0 ;
1117
+    package CYGPKG_COMPRESS_ZLIB v3_0 ;
1118
+    package CYGPKG_IO_FLASH v3_0 ;
1119
+};
1120
+
1121
+cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
1122
+    inferred_value 0
1123
+};
1124
+
1125
+cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
1126
+    inferred_value 0
1127
+};
1128
+
1129
+cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
1130
+    user_value 4096
1131
+};
1132
+
1133
+cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
1134
+    user_value 0
1135
+};
1136
+
1137
+cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
1138
+    inferred_value 0
1139
+};
1140
+
1141
+cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
1142
+    inferred_value 1
1143
+};
1144
+
1145
+cdl_option CYGSEM_HAL_ROM_MONITOR {
1146
+    inferred_value 1
1147
+};
1148
+
1149
+cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
1150
+    inferred_value 0 0
1151
+};
1152
+
1153
+cdl_component CYGHWR_HAL_ARM_LPC2XXX {
1154
+    inferred_value LPC2294
1155
+};
1156
+
1157
+cdl_component CYG_HAL_STARTUP {
1158
+    inferred_value ROM
1159
+};
1160
+
1161
+cdl_component CYGBLD_BUILD_REDBOOT {
1162
+    user_value 1
1163
+};
1164
+
1165
+cdl_option CYGBLD_BUILD_REDBOOT_WITH_EXEC {
1166
+    inferred_value 0
1167
+};
1168
+
1169
+cdl_option CYGBLD_ISO_STRTOK_R_HEADER {
1170
+    inferred_value 1 
1171
+};
1172
+
1173
+cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {
1174
+    inferred_value 1 
1175
+};
1176
+
1177
+cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {
1178
+    inferred_value 1 
1179
+};
1180
+
1181
+cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {
1182
+    inferred_value 1 
1183
+};
1184
+
1185
+cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {
1186
+    inferred_value 1 
1187
+};
1188
+
1189
+cdl_option CYGBLD_ISO_DNS_HEADER {
1190
+    inferred_value 1 
1191
+};
1192
+
1193
+cdl_option CYGPKG_NS_DNS_BUILD {
1194
+    inferred_value 0
1195
+};
1196
+
1197
+
1198
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM_minimal.ecm ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM_minimal.ecm
1199
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM_minimal.ecm      1969-12-31 16:00:00.000000000 -0800
1200
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/misc/redboot_ROM_minimal.ecm 2009-12-04 15:45:07.000000000 -0800
1201
@@ -0,0 +1,100 @@
1202
+cdl_savefile_version 1;
1203
+cdl_savefile_command cdl_savefile_version {};
1204
+cdl_savefile_command cdl_savefile_command {};
1205
+cdl_savefile_command cdl_configuration { description hardware template package };
1206
+cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
1207
+cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
1208
+cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
1209
+cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
1210
+
1211
+cdl_configuration eCos {
1212
+    description "" ;
1213
+    hardware    olpcl2294 ;
1214
+    template    redboot ;
1215
+    package -hardware CYGPKG_HAL_ARM v3_0 ;
1216
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX v3_0 ;
1217
+    package -hardware CYGPKG_HAL_ARM_LPC2XXX_OLPCL2294 v3_0 ;
1218
+    package -hardware CYGPKG_DEVS_FLASH_STRATA_V2 v3_0 ;
1219
+    package -hardware CYGPKG_DEVS_FLASH_ARM_OLPCX2294_V2 v3_0 ;
1220
+    package -hardware CYGPKG_DEVS_ETH_CL_CS8900A v3_0 ;
1221
+    package -hardware CYGPKG_DEVS_ETH_ARM_OLPCL2294 v3_0 ;
1222
+    package -hardware CYGPKG_IO_SERIAL_GENERIC_16X5X v3_0 ;
1223
+    package -hardware CYGPKG_IO_SERIAL_ARM_LPC2XXX v3_0 ;
1224
+    package -hardware CYGPKG_DEVICES_WATCHDOG_ARM_LPC2XXX v3_0 ;
1225
+    package -template CYGPKG_HAL v3_0 ;
1226
+    package -template CYGPKG_INFRA v3_0 ;
1227
+    package -template CYGPKG_REDBOOT v3_0 ;
1228
+    package -template CYGPKG_ISOINFRA v3_0 ;
1229
+    package -template CYGPKG_LIBC_STRING v3_0 ;
1230
+    package -template CYGPKG_CRC v3_0 ;
1231
+};
1232
+
1233
+cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
1234
+    inferred_value 0
1235
+};
1236
+
1237
+cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
1238
+    inferred_value 0
1239
+};
1240
+
1241
+cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
1242
+    user_value 4096
1243
+};
1244
+
1245
+cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
1246
+    user_value 0
1247
+};
1248
+
1249
+cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
1250
+    inferred_value 0
1251
+};
1252
+
1253
+cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
1254
+    inferred_value 1
1255
+};
1256
+
1257
+cdl_option CYGSEM_HAL_ROM_MONITOR {
1258
+    inferred_value 1
1259
+};
1260
+
1261
+cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
1262
+    inferred_value 0 0
1263
+};
1264
+
1265
+cdl_component CYGHWR_HAL_ARM_LPC2XXX {
1266
+    inferred_value LPC2294
1267
+};
1268
+
1269
+cdl_component CYG_HAL_STARTUP {
1270
+    inferred_value ROM
1271
+};
1272
+
1273
+cdl_component CYGBLD_BUILD_REDBOOT {
1274
+    user_value 1
1275
+};
1276
+
1277
+cdl_option CYGBLD_BUILD_REDBOOT_WITH_EXEC {
1278
+    inferred_value 0
1279
+};
1280
+
1281
+cdl_option CYGBLD_ISO_STRTOK_R_HEADER {
1282
+    inferred_value 1 
1283
+};
1284
+
1285
+cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {
1286
+    inferred_value 1 
1287
+};
1288
+
1289
+cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {
1290
+    inferred_value 1 
1291
+};
1292
+
1293
+cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {
1294
+    inferred_value 1 
1295
+};
1296
+
1297
+cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {
1298
+    inferred_value 1 
1299
+};
1300
+
1301
+
1302
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/de1_olpcl2294_misc.c ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/de1_olpcl2294_misc.c
1303
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/de1_olpcl2294_misc.c  1969-12-31 16:00:00.000000000 -0800
1304
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/de1_olpcl2294_misc.c     2009-12-04 15:45:07.000000000 -0800
1305
@@ -0,0 +1,109 @@
1306
+//==========================================================================
1307
+//
1308
+//      olpcl2294_misc.c
1309
+//
1310
+//      HAL misc board support code for Olimex LPC-L2294-1MB development
1311
+//      board
1312
+//
1313
+//==========================================================================
1314
+// ####ECOSGPLCOPYRIGHTBEGIN####
1315
+// -------------------------------------------
1316
+// This file is part of eCos, the Embedded Configurable Operating System.
1317
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
1318
+//
1319
+// eCos is free software; you can redistribute it and/or modify it under
1320
+// the terms of the GNU General Public License as published by the Free
1321
+// Software Foundation; either version 2 or (at your option) any later
1322
+// version.
1323
+//
1324
+// eCos is distributed in the hope that it will be useful, but WITHOUT
1325
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1326
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1327
+// for more details.
1328
+//
1329
+// You should have received a copy of the GNU General Public License
1330
+// along with eCos; if not, write to the Free Software Foundation, Inc.,
1331
+// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
1332
+//
1333
+// As a special exception, if other files instantiate templates or use
1334
+// macros or inline functions from this file, or you compile this file
1335
+// and link it with other works to produce a work based on this file,
1336
+// this file does not by itself cause the resulting work to be covered by
1337
+// the GNU General Public License. However the source code for this file
1338
+// must still be made available in accordance with section (3) of the GNU
1339
+// General Public License v2.
1340
+//
1341
+// This exception does not invalidate any other reasons why a work based
1342
+// on this file might be covered by the GNU General Public License.
1343
+// -------------------------------------------
1344
+// ####ECOSGPLCOPYRIGHTEND####
1345
+//==========================================================================
1346
+//#####DESCRIPTIONBEGIN####
1347
+//
1348
+// Author(s):     Sergei Gavrikov
1349
+// Contributors:  Sergei Gavrikov
1350
+// Date:          2008-08-31
1351
+// Purpose:       HAL board support
1352
+// Description:   Implementations of HAL board interfaces
1353
+//
1354
+//####DESCRIPTIONEND####
1355
+//
1356
+//========================================================================*/
1357
+
1358
+#include 
1359
+#include      // IO macros
1360
+#include    // Register state info
1361
+
1362
+#include  // base types
1363
+#include 
1364
+
1365
+#include 
1366
+#include 
1367
+
1368
+extern void cyg_hal_plf_serial_init (void);
1369
+
1370
+//--------------------------------------------------------------------------
1371
+// hal_lpc2xxx_set_leds --
1372
+//
1373
+// There is one diagnostic LED marked 'STAT' on the board
1374
+//
1375
+void
1376
+hal_lpc2xxx_set_leds (int mask)
1377
+{
1378
+    HAL_WRITE_UINT32 (CYGARC_HAL_LPC2XXX_REG_IO_BASE +
1379
+                      CYGARC_HAL_LPC2XXX_REG_IO1SET, (1 << 23));
1380
+    if (mask & 1)
1381
+        HAL_WRITE_UINT32 (CYGARC_HAL_LPC2XXX_REG_IO_BASE +
1382
+                          CYGARC_HAL_LPC2XXX_REG_IO1CLR, (1 << 23));
1383
+}
1384
+
1385
+//--------------------------------------------------------------------------
1386
+// cyg_hal_plf_comms_init  --
1387
+//
1388
+void
1389
+cyg_hal_plf_comms_init (void)
1390
+{
1391
+    static int initialized = 0;
1392
+
1393
+    if (initialized)
1394
+        return;
1395
+    initialized = 1;
1396
+
1397
+    cyg_hal_plf_serial_init ();
1398
+}
1399
+
1400
+#ifdef HAL_PLF_HARDWARE_INIT
1401
+//--------------------------------------------------------------------------
1402
+// hal_plf_hardware_init --
1403
+//
1404
+void
1405
+hal_plf_hardware_init (void)
1406
+{
1407
+    // configure IRQ level from CL CS8900A
1408
+    cyg_drv_interrupt_configure (CYGNUM_HAL_INTERRUPT_EINT2, 0, 1);
1409
+}
1410
+#endif // HAL_PLF_HARDWARE_INIT
1411
+
1412
+// indent: --indent-level4 -br -nut; vim: expandtab tabstop=4 shiftwidth=4
1413
+//--------------------------------------------------------------------------
1414
+// EOF olpcl2294_misc.c
1415
diff -NaurbBw --exclude-from=diff_exclude.txt /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/redboot_cmds.c ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/redboot_cmds.c
1416
--- /opt/ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/redboot_cmds.c        1969-12-31 16:00:00.000000000 -0800
1417
+++ ./ecos-3.0/packages/hal/arm/lpc2xxx/de1_olpcl2294/v3_0/src/redboot_cmds.c   2009-12-04 15:45:07.000000000 -0800
1418
@@ -0,0 +1,115 @@
1419
+//==========================================================================
1420
+//
1421
+//      redboot_cmds.c
1422
+//
1423
+//      OLPCL2294 [platform] specific RedBoot commands
1424
+//
1425
+//==========================================================================
1426
+// ####ECOSGPLCOPYRIGHTBEGIN####
1427
+// -------------------------------------------
1428
+// This file is part of eCos, the Embedded Configurable Operating System.
1429
+// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2008 Free Software Foundation, Inc.
1430
+//
1431
+// eCos is free software; you can redistribute it and/or modify it under
1432
+// the terms of the GNU General Public License as published by the Free
1433
+// Software Foundation; either version 2 or (at your option) any later
1434
+// version.
1435
+//
1436
+// eCos is distributed in the hope that it will be useful, but WITHOUT
1437
+// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1438
+// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1439
+// for more details.
1440
+//
1441
+// You should have received a copy of the GNU General Public License
1442
+// along with eCos; if not, write to the Free Software Foundation, Inc.,
1443
+// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
1444
+//
1445
+// As a special exception, if other files instantiate templates or use
1446
+// macros or inline functions from this file, or you compile this file
1447
+// and link it with other works to produce a work based on this file,
1448
+// this file does not by itself cause the resulting work to be covered by
1449
+// the GNU General Public License. However the source code for this file
1450
+// must still be made available in accordance with section (3) of the GNU
1451
+// General Public License v2.
1452
+//
1453
+// This exception does not invalidate any other reasons why a work based
1454
+// on this file might be covered by the GNU General Public License.
1455
+// -------------------------------------------
1456
+// ####ECOSGPLCOPYRIGHTEND####
1457
+//==========================================================================
1458
+//#####DESCRIPTIONBEGIN####
1459
+//
1460
+// Author(s):     Sergei Gavrikov
1461
+// Contributors:  Sergei Gavrikov
1462
+// Date:          2008-08-31
1463
+// Purpose:
1464
+// Description:
1465
+//
1466
+// This code is part of RedBoot (tm).
1467
+//
1468
+//####DESCRIPTIONEND####
1469
+//
1470
+//========================================================================*/
1471
+
1472
+#include 
1473
+#include 
1474
+
1475
+// CLI functions
1476
+static void do_echo (int argc, char *argv[]);
1477
+RedBoot_cmd ("echo",
1478
+             "Outputs the args. If -n is specified, the trailing newline is suppressed.",
1479
+             "-n [arg ...]", do_echo);
1480
+
1481
+static void do_led (int argc, char *argv[]);
1482
+RedBoot_cmd ("led", "Manage diagnostic led(s)", "[-m mask]", do_led);
1483
+
1484
+//--------------------------------------------------------------------------
1485
+// do_echo --
1486
+//
1487
+static void
1488
+do_echo (int argc, char *argv[])
1489
+{
1490
+    bool newline = true;
1491
+    if (argc > 1) {
1492
+        int i = 1;
1493
+        if (strncmp (&argv[i][0], "-n", 2) == 0) {
1494
+            newline = false;
1495
+            i++;
1496
+        }
1497
+        for (; i < argc; i++) {
1498
+            diag_write_string (&argv[i][0]);
1499
+            if ((argc - i) > 1)
1500
+                diag_write_char (' ');
1501
+        }
1502
+    }
1503
+    if (newline)
1504
+        diag_write_char ('\n');
1505
+    return;
1506
+}
1507
+
1508
+//--------------------------------------------------------------------------
1509
+// do_led --
1510
+//
1511
+static void
1512
+do_led (int argc, char *argv[])
1513
+{
1514
+    struct option_info opts[1];
1515
+    unsigned long mask;
1516
+    bool mask_set;
1517
+
1518
+    init_opts (&opts[0], 'm', true, OPTION_ARG_TYPE_NUM,
1519
+               &mask, &mask_set, "mask");
1520
+    if (!scan_opts (argc, argv, 1, opts, 1, 0, 0, "")) {
1521
+        return;
1522
+    }
1523
+    if (!mask_set) {
1524
+        diag_printf ("led what ?\n");
1525
+        return;
1526
+    }
1527
+    hal_lpc2xxx_set_leds (mask);
1528
+    return;
1529
+}
1530
+
1531
+// indent: --indent-level4 -br -nut; vim: expandtab tabstop=4 shiftwidth=4
1532
+//--------------------------------------------------------------------------
1533
+// EOF redboot_cmds.c

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.