mirror of
https://github.com/apache/nuttx.git
synced 2025-12-17 18:25:22 +08:00
Compare commits
348 Commits
nuttx-3.14
...
nuttx-3.18
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5a10c4845a | ||
|
|
972ab74f1a | ||
|
|
4d24e3c482 | ||
|
|
e4fa1da557 | ||
|
|
3a02c111ca | ||
|
|
f2b7c5e6b4 | ||
|
|
c08eaaff33 | ||
|
|
2522b24e96 | ||
|
|
1889e9e787 | ||
|
|
67d446be4e | ||
|
|
193bfbd032 | ||
|
|
3855baf8d9 | ||
|
|
c8f205d2c5 | ||
|
|
d6aa80bbd0 | ||
|
|
4a9e922943 | ||
|
|
458706e249 | ||
|
|
0e2ca53487 | ||
|
|
386b7f12cd | ||
|
|
6aeb99bc51 | ||
|
|
f47adddbb2 | ||
|
|
9f05f24615 | ||
|
|
c3edbc0eaf | ||
|
|
ff7c75a90d | ||
|
|
c47d76bdf9 | ||
|
|
eb3a385f82 | ||
|
|
9aebb6a97f | ||
|
|
d5b291612a | ||
|
|
2ada7b720b | ||
|
|
f3866fb556 | ||
|
|
dede5077d6 | ||
|
|
9160574c88 | ||
|
|
27f2657f12 | ||
|
|
d55a8c56a1 | ||
|
|
b5a667dac6 | ||
|
|
392f59af18 | ||
|
|
e9b004b360 | ||
|
|
eebd2150ef | ||
|
|
0397fb1ed1 | ||
|
|
a14502ec90 | ||
|
|
eade3e5b45 | ||
|
|
7c60be1954 | ||
|
|
faa3ce6b97 | ||
|
|
394753cd92 | ||
|
|
2015f47eba | ||
|
|
843c29cc2c | ||
|
|
006af873ff | ||
|
|
e64f044581 | ||
|
|
7ea11d145e | ||
|
|
d4e4b9c2e2 | ||
|
|
1c81ae36c5 | ||
|
|
8c98fc852d | ||
|
|
416b903ed5 | ||
|
|
8f13f401c6 | ||
|
|
3789784a97 | ||
|
|
b05637c21b | ||
|
|
3d623e232a | ||
|
|
5f905129a5 | ||
|
|
0e2b4f14fc | ||
|
|
e6ee652ab3 | ||
|
|
23304550c4 | ||
|
|
e0a1f6ef60 | ||
|
|
0635285c43 | ||
|
|
8cf158a348 | ||
|
|
63d61ff46f | ||
|
|
a5145fe21c | ||
|
|
a9ee2dfbbf | ||
|
|
ae2977a82e | ||
|
|
a6a8945767 | ||
|
|
d442a2e1d7 | ||
|
|
18d67eb782 | ||
|
|
6cb7caab02 | ||
|
|
bd856e9212 | ||
|
|
f4f8020ed3 | ||
|
|
f06af7ba3e | ||
|
|
490a98191e | ||
|
|
4abb99bcb8 | ||
|
|
4ed3af567c | ||
|
|
4bf1919ff2 | ||
|
|
5d76e17638 | ||
|
|
2f540a8e6e | ||
|
|
215adeef29 | ||
|
|
99f82fdc03 | ||
|
|
f374b57c22 | ||
|
|
2bd702a174 | ||
|
|
0f391aeb4a | ||
|
|
5cb5ba51ae | ||
|
|
811a2d02af | ||
|
|
03bc03af40 | ||
|
|
7d1a814404 | ||
|
|
ccad3360b1 | ||
|
|
1ca53e706a | ||
|
|
aec4241258 | ||
|
|
f053a30e05 | ||
|
|
875ea61fa6 | ||
|
|
3c1f0828b2 | ||
|
|
d57ef5660b | ||
|
|
0fb782537a | ||
|
|
a71dd2b18e | ||
|
|
368ef1c0e8 | ||
|
|
dcca7be53e | ||
|
|
eb5a191b24 | ||
|
|
0a8331e620 | ||
|
|
52986226a3 | ||
|
|
23af8dd866 | ||
|
|
b00f8a6968 | ||
|
|
5188e4931d | ||
|
|
87662693a2 | ||
|
|
5af770c9d8 | ||
|
|
a2bfaf9384 | ||
|
|
bfd069ad6f | ||
|
|
c07fd1e011 | ||
|
|
77ee432bc8 | ||
|
|
e2e8d547d0 | ||
|
|
20f1fc0e8b | ||
|
|
879de25179 | ||
|
|
40d11eece3 | ||
|
|
ebc350c1f1 | ||
|
|
5998f42625 | ||
|
|
04177405d6 | ||
|
|
be3790c1af | ||
|
|
87b6525f16 | ||
|
|
7cd5385b12 | ||
|
|
7ec337279a | ||
|
|
6d6ca0a50a | ||
|
|
d5820f6056 | ||
|
|
1dee6ffd78 | ||
|
|
508d758b65 | ||
|
|
e0ad48f2a0 | ||
|
|
35e4899c4a | ||
|
|
74df6cdc38 | ||
|
|
8cb93ce6ea | ||
|
|
9cd76cd91e | ||
|
|
1e2f691c97 | ||
|
|
2a7f18f3e3 | ||
|
|
128fca24fb | ||
|
|
5219bedb73 | ||
|
|
fffbb2eb8b | ||
|
|
64fc59aabb | ||
|
|
ccd2d19e65 | ||
|
|
56f57b5f7a | ||
|
|
f0fc9b13de | ||
|
|
4546132f65 | ||
|
|
c27cad4dd2 | ||
|
|
de1c1f3dd6 | ||
|
|
ea8e356b06 | ||
|
|
7fdabc4745 | ||
|
|
d72bd9b133 | ||
|
|
aeb3ba08fb | ||
|
|
616b45dfda | ||
|
|
4f83709832 | ||
|
|
177aa1878e | ||
|
|
66bdf0d586 | ||
|
|
08c89cddcc | ||
|
|
d54fb01136 | ||
|
|
9da805f7a6 | ||
|
|
521566b514 | ||
|
|
eb2b208d71 | ||
|
|
2098fcf3e8 | ||
|
|
7117e29e2a | ||
|
|
642e2fd884 | ||
|
|
49390ac335 | ||
|
|
05f8581874 | ||
|
|
bca6c1e63d | ||
|
|
6c75ab8efe | ||
|
|
d3da87125a | ||
|
|
caf959f79c | ||
|
|
43a3c09982 | ||
|
|
d4c083a955 | ||
|
|
50017e4bfe | ||
|
|
8423870bde | ||
|
|
77c22b0d7f | ||
|
|
032393ae43 | ||
|
|
a6944dfe49 | ||
|
|
953a01d0f1 | ||
|
|
fbf99921ff | ||
|
|
59086543bc | ||
|
|
2b9c6f0a87 | ||
|
|
9247dc69ac | ||
|
|
ad93759c76 | ||
|
|
e8fe75b707 | ||
|
|
bb636242ca | ||
|
|
68ed6f1c7e | ||
|
|
a0c4aeb7f5 | ||
|
|
120b66c038 | ||
|
|
de5c6ffcdc | ||
|
|
e89c5c362e | ||
|
|
61af3cf5a4 | ||
|
|
998ec27c83 | ||
|
|
200b11eefb | ||
|
|
a9c15f4dde | ||
|
|
21ac6d0865 | ||
|
|
cd2ae14200 | ||
|
|
7c021b542b | ||
|
|
0c8c5d247d | ||
|
|
430198df4c | ||
|
|
791bba205f | ||
|
|
995be717bf | ||
|
|
8ade0e3b55 | ||
|
|
867d3c471c | ||
|
|
8acf7cecba | ||
|
|
2f9e5e067d | ||
|
|
a11383a93f | ||
|
|
e9d4e43d16 | ||
|
|
0cb383f7f8 | ||
|
|
11284029df | ||
|
|
a7111547c6 | ||
|
|
bf53f031c8 | ||
|
|
bcdac92ea9 | ||
|
|
e6477ed7bb | ||
|
|
19762e9417 | ||
|
|
85563cc35c | ||
|
|
0296f42d02 | ||
|
|
5a4d432c6d | ||
|
|
a73bfe774f | ||
|
|
4f65029e69 | ||
|
|
5eb4cc2cdd | ||
|
|
6eaeba8337 | ||
|
|
75be6467e0 | ||
|
|
802fd32f91 | ||
|
|
d3338ac34e | ||
|
|
f31fcafe11 | ||
|
|
fa8618178b | ||
|
|
e5327a406d | ||
|
|
c2b34298b9 | ||
|
|
a4621ede1c | ||
|
|
05549a14b3 | ||
|
|
0a3edb4702 | ||
|
|
8cb981c222 | ||
|
|
08b3a8917e | ||
|
|
4371d7c822 | ||
|
|
ebefecd9ac | ||
|
|
c9d3adb0b9 | ||
|
|
a8f3345e5a | ||
|
|
24aff819a4 | ||
|
|
fed5871039 | ||
|
|
175c69a462 | ||
|
|
79be71fa93 | ||
|
|
d1c08b6853 | ||
|
|
7e9f5e7b0c | ||
|
|
233e0f254a | ||
|
|
3fee480186 | ||
|
|
45f2de7a6b | ||
|
|
62fa0a4dd1 | ||
|
|
2709b6e43e | ||
|
|
db720b9dbf | ||
|
|
662ec46473 | ||
|
|
2d32df87c9 | ||
|
|
aa7eaeea2e | ||
|
|
a97678e7f3 | ||
|
|
8c9fe4533a | ||
|
|
493677de2d | ||
|
|
eefb25244c | ||
|
|
14072a7991 | ||
|
|
caa1423771 | ||
|
|
9b6911e9be | ||
|
|
3ade50f7e4 | ||
|
|
c538e14adf | ||
|
|
8c1cbf933f | ||
|
|
934f010333 | ||
|
|
55b7616223 | ||
|
|
f65a4a4832 | ||
|
|
679b959f90 | ||
|
|
e87854bc93 | ||
|
|
7996949c97 | ||
|
|
80db9814b7 | ||
|
|
7fdd4e0112 | ||
|
|
f8e5fa6eb4 | ||
|
|
eb448e0e97 | ||
|
|
acbb64ad48 | ||
|
|
c789bd8f58 | ||
|
|
e08604ee09 | ||
|
|
05d4dd0f73 | ||
|
|
11911ac2a3 | ||
|
|
f6838c4e6f | ||
|
|
75c2fb5635 | ||
|
|
8b07c901cd | ||
|
|
72ac3b61b8 | ||
|
|
a8e6e9cf3d | ||
|
|
d3b43976a9 | ||
|
|
d2fd11e1f1 | ||
|
|
e55508240a | ||
|
|
1d38a19877 | ||
|
|
2b1c2fc483 | ||
|
|
299a3ead2a | ||
|
|
15485cd306 | ||
|
|
1f8cc4383a | ||
|
|
174a043a62 | ||
|
|
60d8905398 | ||
|
|
1661ab9c70 | ||
|
|
12282531fa | ||
|
|
6d441cf65f | ||
|
|
58119355f8 | ||
|
|
17987c90fc | ||
|
|
2fa7da9ed8 | ||
|
|
990d63ea82 | ||
|
|
608a718ca8 | ||
|
|
56ec9aa133 | ||
|
|
12d9e69757 | ||
|
|
7f0a5683d9 | ||
|
|
abcd3febfa | ||
|
|
fd831038f6 | ||
|
|
130667fa1d | ||
|
|
00d0f46828 | ||
|
|
9d9458a18d | ||
|
|
d1dff51cdf | ||
|
|
ae83b38bc6 | ||
|
|
106ae37184 | ||
|
|
6a96311905 | ||
|
|
84cb2c8b8e | ||
|
|
ba82ec9a59 | ||
|
|
22c47e5a73 | ||
|
|
7595ec8761 | ||
|
|
f1a4637bd1 | ||
|
|
08b2e406c2 | ||
|
|
dccebdea85 | ||
|
|
6693996511 | ||
|
|
76ec842523 | ||
|
|
aacdfb11b6 | ||
|
|
68271820db | ||
|
|
ac1f49ffbe | ||
|
|
e670f8f6b7 | ||
|
|
c01e402c52 | ||
|
|
e360e806dc | ||
|
|
4f5b358522 | ||
|
|
d45b0e1aaa | ||
|
|
d34ada46c0 | ||
|
|
f796d1dff6 | ||
|
|
fb6d8f6ae6 | ||
|
|
d357579589 | ||
|
|
890f1034e0 | ||
|
|
031dfef23c | ||
|
|
1427e4083c | ||
|
|
1a286a874d | ||
|
|
af55abec61 | ||
|
|
b0d5432f8b | ||
|
|
9ff4834f74 | ||
|
|
5a5ceac84b | ||
|
|
f86028809f | ||
|
|
3bdc9e50db | ||
|
|
76420d3dc0 | ||
|
|
98a5e744bc | ||
|
|
c54c3b0a25 | ||
|
|
1ef100a5db | ||
|
|
6a5e4f302d | ||
|
|
5e510557e5 | ||
|
|
fb22c557dc | ||
|
|
469948a0b6 | ||
|
|
a454fe6e3e |
103
ChangeLog
103
ChangeLog
@@ -462,4 +462,105 @@
|
||||
* Fixed another FAT bug in implementation of FAT lseek; this prohibit correct
|
||||
random access to large files.
|
||||
|
||||
0.3.15 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
0.3.15 2008-09-20 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Added support for ROMFS filesystem.
|
||||
* Added a simple test the ROMFS filesystem (examples/romfs)
|
||||
* NSH: Use ROMFS to provide an option for a start-up script at /etc/init.d/rcS
|
||||
* Add definition of BIOC_XIPBASE ioctl and implement in RAM disk block driver.
|
||||
This is a low level requirement for eXecute In Place (XIP) support.
|
||||
* Add a FIOC_MMAP to perform memory mapping of a file and implemented the
|
||||
ioctl command in the ROMFS filesystem. This is a requirement for eXecute
|
||||
In Place (XIP) support.
|
||||
* Add mmap() API with restricted capability (only for XIP support)
|
||||
* Extend ROMFS test at /examples/romfs to verify mmap() and XIP support.
|
||||
* Add support for Intel Hex format output using objcopy
|
||||
* Completed the basic port of the NXP LPC2148 on the mcu123.com board.
|
||||
The basic port includes successful booting, timer interrupts, serial console,
|
||||
succesfully passing the examples/ostest, and a NuttShell (NSH) configuration.
|
||||
* ARM architectures now support drivers/lowconsole.c
|
||||
|
||||
0.3.16 2008-10-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Added header files defining a common USB device controller architecture
|
||||
* Added USB device side driver for the LPC214x
|
||||
* Correct the frequency of system timer interrupts in the NXP LPC214x port
|
||||
(off by 20x in nuttx-0.3.15)
|
||||
* Add an option to set aside a separate stack for interrupt handling (ARM only).
|
||||
This is useful when memory is constrained, there are multiple tasks, and
|
||||
the interrupt stack requirement is high (as when USB is enabled).
|
||||
* Added USB serial class device side driver (emulates Prolific PL2303
|
||||
serial-to-USB adaptor)
|
||||
* Add LPC214x USB serial configuration; Add examples/usbserial test
|
||||
* Added USB device side driver for the DM320 (untested at initial release)
|
||||
* Fixed an error in a previous (post 0.3.15) check-in that broke the LPC214x
|
||||
system timer.
|
||||
* Fixed serial driver bugs related to (1) open counts and (2) recognizing
|
||||
O_NONBLOCK on read.
|
||||
* Fixed an error in read(); it was not setting the errno on errors returned
|
||||
from the driver.
|
||||
|
||||
0.3.17 2008-10-28 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Incorporate patch "[2164503] nuttx-0.3.16 does not build for ARM with USB disabled"
|
||||
* Reduced the amount of memory reserved for USB serial control requests. It
|
||||
was unnecessarily large.
|
||||
* Added LPC214x SPI1 driver to interface with MMC on mcu123.com board.
|
||||
* Added a simple SPI-based MMC/SD block driver
|
||||
* NSH: Add LPC214x-specific support to NSH; NSH now mounts any SD cards in the slot.
|
||||
* FAT: Fix access to unaligned 32-bit values in partion table (start sector & size)
|
||||
* Fixed a problem with a un-initialized variable in the USB serial driver.
|
||||
* Added USB storage NXP LPC214x configuration
|
||||
* Added a test for USB storage under examples/usbstorage
|
||||
* Fixed a bug in the LPC214x USB driver: It was not properly clearing a HALTed
|
||||
endpoints (other than EP) on receipt of CLEAR FEATURES request.
|
||||
* Added USB storage class device side driver (BBB)
|
||||
* Fixed a bug in the LPC214x USB driver: It was not properly handling request buffers
|
||||
larger then the endpoint's max packet (DM320 driver also fixed, untested)
|
||||
* Added logic to the USB device interface: A bit is needed to force the driver to
|
||||
to terminate an IN transfer with a short packet (zero-length if necessary).
|
||||
* Fix an error in the NXP LPC214x USB device driver that was causing corruption of
|
||||
the request queue (M320 driver also fixed, untested)
|
||||
* Correct another error in the NXP LPC214x USB device driver that caused read failures
|
||||
when the request buffer size was larger than maxpacket.
|
||||
* Numerous corrections/extensions to the USB tracing logic included in 0.3.16 (but
|
||||
not integrated until 0.3.17)
|
||||
* Fixed another bug in the NXP LPC214x USB device driver: After a stalled endpoint
|
||||
is resumed (view CLEAR FEATURE), we must restart the IN (outgoing) queue.
|
||||
|
||||
0.3.18 2008-11-16 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Added port for the STMicro STR71x processor and configuration for the Olimex STR-P711
|
||||
board (STR71x testing is stalled because I have been unable to get OpenOCD to
|
||||
communicate with my JTAG wiggler on Linux).
|
||||
* Fix race condition workaround delay in LPC214X SPI logic. This was also the cause of the
|
||||
very bad MMC/SD performance.
|
||||
* Began port of the Hitachi SH-1 using the SH-1/US7032EVB1 board
|
||||
* Re-built all configurations that use SDCC and Zilog toolchains to make sure they still
|
||||
build (they didn't, but they do now).
|
||||
* Fixed several erroneous "list empty" checks in the CAN driver.
|
||||
* Hitachi SH-1 passes (reduced) examples/ostest; the examples/nsh test still fails.
|
||||
There are remaining instabilities that make the port un-usable. The nature of these is
|
||||
not understood; the behavior is that certain SH-1 instructions stop working as advertised.
|
||||
This could be a silicon problem, some pipeline issue that is not handled properly by the
|
||||
gcc 3.4.5 toolchain (which has very limit SH-1 support to begin with), or perhaps with the
|
||||
CMON debugger. At any rate, I have exhausted all of the energy that I am willing to put
|
||||
into this cool old processor for the time being.
|
||||
* Renamed configuration item CONFIG_PROC_STACK_SIZE as CONFIG_IDLETHREAD_STACKSIZE: It now
|
||||
only controls the size of the stack for the IDLE thread. Added CONFIG_USERMAIN_STACKSIZE:
|
||||
This is the size of stack used with the user_start() thread is created. The two stacks
|
||||
no longer have to be the same.
|
||||
* Add a loop device that converts a file into a block device.
|
||||
* Each NSH command can not be disabled through a configuration setting. All of these
|
||||
settings make the configuration of NSH potentially complex but also allow it to squeeze
|
||||
into very small memory footprints.
|
||||
* Added a block to character (BCH) driver. This is kind of the reverse of the loop
|
||||
device; it allows you access a block device like a character device.
|
||||
* Added strcasecmp() and strncasecmp()
|
||||
* NSH: Added the 'dd' command
|
||||
* NSH: Added the 'losetup' command
|
||||
* Fixed a FAT bug: After recent changes, it would mount a (invalid) FAT file system
|
||||
even if the medium is not formatted!
|
||||
* Corrected two important errors in FAT lseek implementation: (1) the sectors-per-cluster
|
||||
value was being reset to "1" and (2) important lseek logic was omitted when the seek
|
||||
position was zero.
|
||||
* Fixed a bug in getopt(). It would fail if on certain combinations of terminal argument
|
||||
types.
|
||||
|
||||
0.3.19 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -8,7 +8,7 @@
|
||||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
|
||||
<p>Last Updated: September 8, 2008</p>
|
||||
<p>Last Updated: November 16, 2008</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -356,7 +356,7 @@
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>Network, serial, CAN, driver architecture.</li>
|
||||
<li>Network, USB (device), serial, CAN, driver architecture.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
@@ -374,12 +374,25 @@
|
||||
<li>Mount-able volumes. Bind mountpoint, filesystem, and block device driver.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>VFAT filesystem support.</li>
|
||||
<li>FAT12/16/32 filesystem support.</li>
|
||||
</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>Generic driver for SPI-based MMC/SD cards.</li>
|
||||
</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>ROMFS filesystem support.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
@@ -389,7 +402,6 @@
|
||||
<b>C Library</b>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -404,7 +416,6 @@
|
||||
<b>Networking</b>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -412,7 +423,6 @@
|
||||
<li>TCP/IP, UDP, ICMP stacks.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -420,7 +430,6 @@
|
||||
<li>Small footprint (based on uIP).</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -428,7 +437,6 @@
|
||||
<li>BSD compatible socket layer.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -436,6 +444,42 @@
|
||||
<li>Networking utilities (DHCP, SMTP, TELNET, TFTP, HTTP)</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" width="22"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
<b>USB Device Support</b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li><i>Gadget</i>-like architecture for USB device controller drivers and device-dependent USB class drivers.</li>
|
||||
</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>USB device controller drivers available for the NXP LPC214x and TI DM320.</li>
|
||||
</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>Device-dependent USB class drivers available for USB serial and for USB mass storage.</li>
|
||||
</p>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<li>Bult-in USB trace functionality for USB debug.</li>
|
||||
</p>
|
||||
</tr>
|
||||
|
||||
</table></center>
|
||||
|
||||
<p>
|
||||
@@ -486,8 +530,8 @@
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p>
|
||||
The 26th release of NuttX (nuttx-0.3.14) is available for download
|
||||
<p><b>nuttx-0.3.18</b>.
|
||||
The 30<sup>th</sup> release of NuttX (nuttx-0.3.18) is available for download
|
||||
from the <a href="http://sourceforge.net/project/showfiles.php?group_id=189573">SourceForge</a>
|
||||
website.
|
||||
The change log associated with the release is available <a href="#currentrelease">here</a>.
|
||||
@@ -495,51 +539,47 @@
|
||||
These unreleased changes are listed <a href="#pendingchanges">here</a>.
|
||||
</p>
|
||||
<p>
|
||||
The nuttx-0.3.14 release includes some important bug fixes as well as a few new features.
|
||||
Critical bugs fixed include:
|
||||
This release includes two partially completed ports, several new features, and a
|
||||
couple of important bug fixes. The two partially completed ports are:
|
||||
<ul>
|
||||
<li>FAT FS:
|
||||
<ul>
|
||||
<li>Fixed several critical bugs with regard to fat reading and writing and FAT12
|
||||
accesses. Basically the FAT FS only worked with my tiny test files and test
|
||||
cases. A lot of stronger FAT tested is still needed!!</li>
|
||||
<li>Fixed another FAT bug in implementation of FAT lseek; this prohibit correct
|
||||
random access to large files.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Network:
|
||||
<ul>
|
||||
<li>Corrected a critical bug that may prevent <code>recvfrom()</code> from receiving
|
||||
packets from most remote UDP port numbers.</li>
|
||||
<li>Corrected an error in multi-threaded socket handling in <code>send()</code> and
|
||||
<code>sendto()</code>. Outgoing data could overwrite incoming data.</li>
|
||||
<li>Corrected IP checksum calculation in ICMP and UDP message send logic.
|
||||
<li>Corrected an error in <code>send()</code> timeout logic.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>The STMicro STR71x processor and configuration for the Olimex STR-P711 board, and</li>
|
||||
<li>The Hitachi SH-1 using the SH1_LCEVB1 (SH-1/US7032EVB1) board.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
New features were also added:
|
||||
Progress on these ports is stalled (as detailed in the ChangeLog).
|
||||
</p>
|
||||
<p>
|
||||
The new features focus primarily on management of block devices and extensions of
|
||||
the NuttShell (NSH). These new features include:
|
||||
<ul>
|
||||
<li>Network:
|
||||
<ul>
|
||||
<li>Added support for application access to ICMP protocol stacks; Added
|
||||
ping request logic (<code>net/uip</code>).
|
||||
<li>Added basic TFTP client logic (<code>netutils/tftpc</code>).
|
||||
</ul>
|
||||
</li>
|
||||
<li>NuttShell (NSH):
|
||||
<ul>
|
||||
<li>New commands: <code>test</code>, <code>[</code>, <code>ping</code>,
|
||||
<code>mkrd,</code> <code>xd</code>, andTFTP <code>get</code> and <code>put</code> commands.
|
||||
(See the new NuttShell User Guide for additional information).
|
||||
</ul>
|
||||
</li>
|
||||
<li>A loop device that converts a file into a block device,</li>
|
||||
<li>A block to character (BCH) driver that allow access a block device as if it were character device, </li>
|
||||
<li>Added strcasecmp() and strncasecmp() libc functions, and </li>
|
||||
<li>Added the 'dd' and 'losetup' commands to NSH. These commands (along with mkfatfs and mount),
|
||||
give good managment of filesystems on the target.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
As usual, any feedback about bugs or suggestions for improvement would be greatly appreciated.
|
||||
Several bugs were fixed, the most important of which are:
|
||||
<ul>
|
||||
<li>Fixd a race condition workaround delay in LPC214X SPI logic. This was also
|
||||
the cause of some bad MMC/SD performance on that platform.</li>
|
||||
<li>Fixed a recently introduced FAT file system problem: It would mount a (invalid)
|
||||
FAT file system even if the medium is not formatted!</li>
|
||||
<li>Corrected two iother important errors in the FAT lseek implementation:
|
||||
(1) the sectors-per-cluster value was being reset to "1" and (2) important
|
||||
lseek logic was omitted when the seek position was zero.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
The FAT filesystem has had many bugs fixed in it and, I think, is now maturing
|
||||
and becoming stable.
|
||||
</p>
|
||||
<p>
|
||||
These changes were verified only on the mcu123.com NXP LPC2148 board, the Hitachi
|
||||
SH1_LCEVB1 board, and the Linux simulator, all using a Linux development environment.
|
||||
Please report any errors to me.
|
||||
</p>
|
||||
|
||||
<table width ="100%">
|
||||
@@ -561,7 +601,7 @@
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
A user-mode port of NuttX to the x86 Linux platform is available.
|
||||
A user-mode port of NuttX to the x86 Linux/Cygwin platform is available.
|
||||
The purpose of this port is primarily to support OS feature development.
|
||||
</p>
|
||||
<p>
|
||||
@@ -591,6 +631,10 @@
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td><hr></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
@@ -598,14 +642,38 @@
|
||||
<b>NXP LPC214x</b>.
|
||||
Support is provided for the NXP LPC214x family of processors. In particular,
|
||||
support is provided for the mcu123.com lpc214x evaluation board (LPC2148).
|
||||
This port also used the GNU arm-eld toolchain* under Linux or Cygwin.
|
||||
This port also used the GNU arm-elf toolchain* under Linux or Cygwin.
|
||||
</p>
|
||||
<p>
|
||||
<b>STATUS:</b>
|
||||
Initial coding of this port code complete but has not yet been verified.
|
||||
This port boots and passes the OS test (examples/ostest).
|
||||
The port is complete and verifed. As of NuttX 0.3.17, the port includes:
|
||||
timer interrupts, serial console, USB driver, and SPI-based MMC/SD card
|
||||
support. A verifed NuttShell (NSH) configuration is also available.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td><hr></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<b>STMicro STR71x</b>.
|
||||
Support is provided for the STMicro STR71x family of processors. In particular,
|
||||
support is provided for the Olimex STR-P711 evaluation board.
|
||||
This port also used the GNU arm-elf toolchain* under Linux or Cygwin.
|
||||
</p>
|
||||
<p>
|
||||
<b>STATUS:</b>
|
||||
Coding is complete on the basic port (boot logic, system time, serial console),
|
||||
but no testing has been performed due to some problems I am having with my
|
||||
JTAG wiggler and OpenOCD on Linux.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
@@ -624,7 +692,9 @@
|
||||
</p>
|
||||
<p>
|
||||
<b>STATUS:</b>
|
||||
This port is complete and verified.
|
||||
The basic port (timer interrupts, serial ports, network, etc.) is complete.
|
||||
All implemented features have been verified with the exception of the USB device-side
|
||||
driver; that implementation is complete but completely untested.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -652,6 +722,33 @@
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
<b>Renesas/Hitachi SuperH</b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<p>
|
||||
<b>SH-1 SH7032</b>.
|
||||
This port uses the Hitachi SH-1 Low-Cost Evaluation Board (SH1_LCEVB1), US7032EVB,
|
||||
with a GNU arm-elf toolchain* under Linux or Cygwin.
|
||||
</p>
|
||||
<p>
|
||||
<b>STATUS:</b>
|
||||
This port is availble as of release 0.3.18 of NuttX. The port is basically complete
|
||||
and many examples run correctly. However, there are remaining instabilities that
|
||||
make the port un-usable. The nature of these is not understood; the behavior is
|
||||
that certain SH-1 instructions stop working as advertised. This could be a silicon
|
||||
problem, some pipeline issue that is not handled properly by the gcc 3.4.5 toolchain
|
||||
(which has very limit SH-1 support to begin with), or perhaps with the CMON debugger.
|
||||
At any rate, I have exhausted all of the energy that I am willing to put into this cool
|
||||
old processor for the time being.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
@@ -676,7 +773,7 @@
|
||||
<tr>
|
||||
<td valign="top"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
<b>Zilog eZ80Acclaim!</b>
|
||||
<b>Zilog eZ80 Acclaim!</b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -763,8 +860,9 @@
|
||||
</table></center>
|
||||
|
||||
<blockquote>* A highly modified <a href="http://buildroot.uclibc.org/">buildroot</a>
|
||||
is available that may be used to build a NuttX-compatible arm-elf toolchain under
|
||||
Linux or Cygwin.</blockquote>
|
||||
is available that may be used to build a NuttX-compatible ELF toolchain under
|
||||
Linux or Cygwin. Configurations are available in that buildroot to support ARM,
|
||||
m68k, m68hc11, m68hc12, and SuperH ports.</blockquote>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
@@ -791,8 +889,9 @@ Linux or Cygwin.</blockquote>
|
||||
available for download from the
|
||||
<a href="http://sourceforge.net/project/showfiles.php?group_id=189573">NuttX SourceForge</a>
|
||||
page.
|
||||
This download may be used to build a NuttX-compatible arm-elf toolchain under Linux or Cygwin.
|
||||
Additional support for m68k, m68hc11, and m68hc12 is available in the
|
||||
This download may be used to build a NuttX-compatible ELF toolchain under Linux or Cygwin.
|
||||
That toolchain will support ARM, m68k, m68hc11, m68hc12, and SuperH ports.
|
||||
The buildroot CVS may be accessed in the
|
||||
<a href="http://nuttx.cvs.sourceforge.net/nuttx/misc/buildroot/">NuttX CVS</a>.
|
||||
</p>
|
||||
</td>
|
||||
@@ -901,7 +1000,7 @@ Linux or Cygwin.</blockquote>
|
||||
<tr>
|
||||
<td valign="top"><img height="20" width="20" src="favicon.ico"></td>
|
||||
<td bgcolor="#5eaee1">
|
||||
<b>Others Environments?</b>
|
||||
<b>Other Environments?</b>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -1037,35 +1136,44 @@ Other memory:
|
||||
</table>
|
||||
|
||||
<pre><ul>
|
||||
nuttx-0.3.14 2008-09-08 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* FAT FS now uses position variable in struct file. This simplifies operations
|
||||
like ftell().
|
||||
* fseek() needs to discard bytes buffered by ungetc().
|
||||
* Corrected ftell() return value.
|
||||
* Added fsetpos() and fgetpos().
|
||||
* NSH: Now supports 'test' and '[' commands
|
||||
* Correct error in send() timeout logic.
|
||||
* Correct error in multi-threaded socket handling in send() and sendto().
|
||||
Outgoing data could overwrite incoming data.
|
||||
* Add support to uIP for application access to ICMP protocol stacks; Add
|
||||
ping request logic.
|
||||
* NSH: Add ping command
|
||||
* Correct IP checksum calculation in ICMP and UDP message send logic.
|
||||
* NSH: Created an HTML document and a more detailed README file describing NSH.
|
||||
* Added basic TFTP client logic (netutils/tftpc). Untested as of initial check-in.
|
||||
* NSH: Add get and put commands to support TFTP get and put operations.
|
||||
* NSH: Added a mkrd command that will create a RAMDISK that can be formatted
|
||||
and mounted.
|
||||
* Corrected a critical bug that prevent recvfrom from receiving packets from
|
||||
any remote UDP port.
|
||||
* NSH: Add hexadecimal dump command (xd)
|
||||
* Fixed several critical bugs with regard to fat reading and writing and FAT12
|
||||
accesses. Basically the FAT FS only worked with my tiny test files and test
|
||||
cases. A lot of stronger FAT tested is needed!!
|
||||
* Fixed another FAT bug in implementation of FAT lseek; this prohibit correct
|
||||
random access to large files.
|
||||
nuttx-0.3.18 2008-11-16 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
* Added port for the STMicro STR71x processor and configuration for the Olimex STR-P711
|
||||
board (STR71x testing is stalled because I have been unable to get OpenOCD to
|
||||
communicate with my JTAG wiggler on Linux).
|
||||
* Fix race condition workaround delay in LPC214X SPI logic. This was also the cause of the
|
||||
very bad MMC/SD performance.
|
||||
* Began port of the Hitachi SH-1 using the SH-1/US7032EVB1 board
|
||||
* Re-built all configurations that use SDCC and Zilog toolchains to make sure they still
|
||||
build (they didn't, but they do now).
|
||||
* Fixed several erroneous "list empty" checks in the CAN driver.
|
||||
* Hitachi SH-1 passes (reduced) examples/ostest; the examples/nsh test still fails.
|
||||
There are remaining instabilities that make the port un-usable. The nature of these is
|
||||
not understood; the behavior is that certain SH-1 instructions stop working as advertised.
|
||||
This could be a silicon problem, some pipeline issue that is not handled properly by the
|
||||
gcc 3.4.5 toolchain (which has very limit SH-1 support to begin with), or perhaps with the
|
||||
CMON debugger. At any rate, I have exhausted all of the energy that I am willing to put
|
||||
into this cool old processor for the time being.
|
||||
* Renamed configuration item CONFIG_PROC_STACK_SIZE as CONFIG_IDLETHREAD_STACKSIZE: It now
|
||||
only controls the size of the stack for the IDLE thread. Added CONFIG_USERMAIN_STACKSIZE:
|
||||
This is the size of stack used with the user_start() thread is created. The two stacks
|
||||
no longer have to be the same.
|
||||
* Add a loop device that converts a file into a block device.
|
||||
* Each NSH command can not be disabled through a configuration setting. All of these
|
||||
settings make the configuration of NSH potentially complex but also allow it to squeeze
|
||||
into very small memory footprints.
|
||||
* Added a block to character (BCH) driver. This is kind of the reverse of the loop
|
||||
device; it allows you access a block device like a character device.
|
||||
* NSH: Added the 'dd' command
|
||||
* NSH: Added the 'losetup' command
|
||||
* Fixed a FAT bug: After recent changes, it would mount a (invalid) FAT file system
|
||||
even if the medium is not formatted!
|
||||
* Corrected two important errors in FAT lseek implementation: (1) the sectors-per-cluster
|
||||
value was being reset to '1' and (2) important lseek logic was omitted when the seek
|
||||
position was zero.
|
||||
* Fixed a bug in getopt(). It would fail if on certain combinations of terminal argument
|
||||
types.
|
||||
|
||||
pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Add logic to build and link with the ZDS-II toolchain
|
||||
use with the z16f.
|
||||
@@ -1075,9 +1183,11 @@ pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
and eliminate a compiler bug
|
||||
* Changes so that runtime compiles with SDCC.
|
||||
|
||||
buildroot-0.1.0 2007-03-09 <spudmonkey@racsa.co.cr>
|
||||
buildroot-0.1.2 2007-11-06 <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Support for arm-elf toolchain
|
||||
* Support for m68k-elf and m68hc11 toolchain
|
||||
* Add patch to build older binutils with newer Texinfo version
|
||||
* Add support for SH-1 toolchain
|
||||
</pre></ul>
|
||||
|
||||
<table width ="100%">
|
||||
@@ -1089,13 +1199,13 @@ buildroot-0.1.0 2007-03-09 <spudmonkey@racsa.co.cr>
|
||||
</table>
|
||||
|
||||
<pre><ul>
|
||||
nuttx-0.3.15 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
nuttx-0.3.19 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
pascal-0.1.3 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
buildroot-0.1.1 2008-xx-xx <spudmonkey@racsa.co.cr>
|
||||
buildroot-0.1.3 2008-xx-xx <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Support for m68k-elf and m68hc11 toolchain
|
||||
* Add support for H8/300 toolchain
|
||||
</pre></ul>
|
||||
|
||||
<table width ="100%">
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<body background="backgd.gif">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td width="210">
|
||||
<td width="210" valign="top">
|
||||
<a href="http://sourceforge.net/">
|
||||
<img src="http://sflogo.sourceforge.net/sflogo.php?group_id=235&type=5" width="210" height="62" border="0" alt="SourceForge"/>
|
||||
</a>
|
||||
@@ -13,25 +13,27 @@
|
||||
<td>
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td bgcolor="#e4e4e4">
|
||||
<td bgcolor="#e4e4e4" colspan="2">
|
||||
<big><b><i><font color="#3c34ec">NuttX RTOS</font></i></b></big>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<td valign="top">
|
||||
<a href="http://sourceforge.net/projects/nuttx" target="_top">Project</a><br>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="http://nuttx.sourceforge.net" target="_top">Home</a>
|
||||
</td>
|
||||
<td valign="top">
|
||||
<a href="http://tech.groups.yahoo.com/group/nuttx" target="_top">Yahoo! Groups</a><br>
|
||||
<a href="freeports.html">Free Ports</a><br>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td width="210">
|
||||
<a href="freeports.html" target="_blank">
|
||||
<img src="freeports.gif" width="210" height="62" border="0"/>
|
||||
<td width="100" valign="top">
|
||||
<a href="http://groups.yahoo.com/group/nuttx/join" target="_top">
|
||||
<img src="http://us.i1.yimg.com/us.yimg.com/i/yg/img/i/us/ui/join.gif"
|
||||
style="border: 0px;"
|
||||
alt="Click to join nuttx"/>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
</b></big></h1>
|
||||
<p><small>by</small></p>
|
||||
<p>Gregory Nutt</p>
|
||||
<p><small>Last Update: September 1, 2008</small></p>
|
||||
<p><small>Last Update: November 14, 2008</small></p>
|
||||
</center>
|
||||
|
||||
<center><h1>Table of Contents</h1></center>
|
||||
@@ -601,13 +601,6 @@
|
||||
as described <a href="#configuringnuttx">below</a>.
|
||||
</p>
|
||||
<ul>
|
||||
<li><code>configs/sim</code>:
|
||||
A user-mode port of NuttX to the x86 Linux platform is available.
|
||||
The purpose of this port is primarily to support OS feature developement.
|
||||
This port does not support interrupts or a real timer (and hence no
|
||||
round robin scheduler) Otherwise, it is complete.
|
||||
</li>
|
||||
|
||||
<li><code>configs/c5471evm</code>:
|
||||
This is a port to the Spectrum Digital C5471 evaluation board. The
|
||||
C5471 is a dual core processor from TI with an ARM7TDMI general purpose
|
||||
@@ -616,12 +609,22 @@
|
||||
This port is complete, verified, and included in the NuttX release.
|
||||
</li>
|
||||
|
||||
<li><code>configs/ez80f0910200kitg</code>
|
||||
ez80Acclaim! Microcontroller. This port use the Zilog ez80f0910200kitg
|
||||
development kit, eZ80F091 part, and the Zilog ZDS-II Windows command line
|
||||
tools. The development environment is Cygwin under WinXP.
|
||||
</li>
|
||||
|
||||
<li><code>configs/m68322evb</code>:
|
||||
This is a work in progress for the venerable m68322evb board from
|
||||
Motorola.
|
||||
</li>
|
||||
|
||||
<li><code>configs/mcu123-lpc214x</code>:
|
||||
This port is for the NXP LPC2148 as provided on the mcu123.com
|
||||
lpc214x development board.
|
||||
This OS is also built with the arm-elf toolchain* under Linux or Cygwin.
|
||||
STATUS: This port is in progress and should be available in the
|
||||
nuttx-0.2.5 release.
|
||||
The port supports serial, timer0, spi, and usb.
|
||||
</li>
|
||||
|
||||
<li><code>configs/ntosd-dm320</code>:
|
||||
@@ -633,9 +636,12 @@
|
||||
NuttX 0.2.1 release.
|
||||
</li>
|
||||
|
||||
<li><code>configs/m68322evb</code>:
|
||||
This is a work in progress for the venerable m68322evb board from
|
||||
Motorola.
|
||||
<li><code>configs/olimex-strp711</code>:
|
||||
This port uses the Olimex STR-P711 board arm-elf toolchain* under Linux or Cygwin.
|
||||
See the <a href="http://www.olimex.com/dev/str-p711.html">Olimex</a> web site
|
||||
for futher information.
|
||||
STATUS: Coding for the basic port -- serial console and system timer -- is complete
|
||||
but untested to problems I am having using OpenOCD with a wiggler clone JTAG.
|
||||
</li>
|
||||
|
||||
<li><code>configs/pjrc-8051</code>:
|
||||
@@ -644,7 +650,19 @@
|
||||
This port is not quite ready for prime time.
|
||||
</li>
|
||||
|
||||
<li><code>configs/xtrs</code>
|
||||
<li><code>configs/sim</code>:
|
||||
A user-mode port of NuttX to the x86 Linux platform is available.
|
||||
The purpose of this port is primarily to support OS feature developement.
|
||||
This port does not support interrupts or a real timer (and hence no
|
||||
round robin scheduler) Otherwise, it is complete.
|
||||
</li>
|
||||
|
||||
<li><code>configs/us7032evb1</code>:
|
||||
This is a port of the Hitachi SH-1 on the Hitachi SH-1/US7032EVB1 board.
|
||||
STATUS: Work has just began on this port.
|
||||
</li>
|
||||
|
||||
<li><code>configs/xtrs</code>:
|
||||
TRS80 Model 3. This port uses a vintage computer based on the Z80.
|
||||
An emulator for this computer is available to run TRS80 programs on a
|
||||
linux platform (http://www.tim-mann.org/xtrs.html).
|
||||
@@ -657,10 +675,12 @@
|
||||
The development environment is Cygwin under WinXP.
|
||||
</li>
|
||||
|
||||
<li><code>configs/ez80f0910200kitg</code>
|
||||
ez80Acclaim! Microcontroller. This port use the Zilog ez80f0910200kitg
|
||||
development kit, eZ80F091 part, and the Zilog ZDS-II Windows command line
|
||||
tools. The development environment is Cygwin under WinXP.
|
||||
<li><code>configs/z80sim</code>:
|
||||
z80 Microcontroller. This port uses a Z80 instruction set simulator.
|
||||
That simulator can be found in the NuttX CVS
|
||||
<a href="http://nuttx.cvs.sourceforge.net/nuttx/misc/sims/z80sim/">here</a>.
|
||||
This port also the <a href="http://sdcc.sourceforge.net/">SDCC</a> toolchain
|
||||
under Linux or Cygwin(verfied with version 2.6.0).
|
||||
</li>
|
||||
|
||||
<li><code>configs/z8encore000zco</code>
|
||||
@@ -674,14 +694,6 @@
|
||||
development kit, Z8F6423 part, and the Zilog ZDS-II Windows command line
|
||||
tools. The development environment is Cygwin under WinXP.
|
||||
</li>
|
||||
|
||||
<li><code>configs/z80sim</code>:
|
||||
z80 Microcontroller. This port uses a Z80 instruction set simulator.
|
||||
That simulator can be found in the NuttX CVS
|
||||
<a href="http://nuttx.cvs.sourceforge.net/nuttx/misc/sims/z80sim/">here</a>.
|
||||
This port also the <a href="http://sdcc.sourceforge.net/">SDCC</a> toolchain
|
||||
under Linux or Cygwin(verfied with version 2.6.0).
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p><small><blockquote>
|
||||
@@ -1315,6 +1327,12 @@ The system can be re-made subsequently by just typing <code>make</code>.
|
||||
For use in C code</li>
|
||||
<li><code>CONFIG_ENDIAN_BIG</code>:
|
||||
Define if big endian (default is little endian).</li>
|
||||
<li><code>CONFIG_ARCH_NOINTC</code>:
|
||||
Define if the architecture does not support an interrupt controller
|
||||
or otherwise cannot support APIs like up_enable_irq() and up_disable_irq().</li>
|
||||
<li><code>CONFIG_ARCH_IRQPRIO</code>:
|
||||
Define if the architecture suports prioritizaton of interrupts and the
|
||||
up_prioritize_irq() API.</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
@@ -1334,7 +1352,17 @@ The system can be re-made subsequently by just typing <code>make</code>.
|
||||
</p>
|
||||
<ul>
|
||||
<li><code>CONFIG_RRLOAD_BINARY</code>:
|
||||
Make the rrload binary format used with BSPs from <a href="www.ridgerun.com">ridgerun.com</a>.</li>
|
||||
Make the rrload binary format used with BSPs from <a href="www.ridgerun.com">ridgerun.com</a>
|
||||
using the <code>tools/mkimage.sh</code> script.</li>
|
||||
<li><code>CONFIG_INTELHEX_BINARY</code>:
|
||||
Make the Intel HEX binary format used with many different loaders using the GNU objcopy program
|
||||
This option hould not be selected if you are not using the GNU toolchain.</li>
|
||||
<li><code>CONFIG_MOTOROLA_SREC</code>:
|
||||
Make the Motorola S-Record binary format used with many different loaders using the GNU objcopy program
|
||||
Should not be selected if you are not using the GNU toolchain.</li>
|
||||
<li><code>CONFIG_RAW_BINARY</code>:
|
||||
mmke a raw binary format file used with many different loaders using the GNU objcopy program.
|
||||
This option should not be selected if you are not using the GNU toolchain.</li>
|
||||
<li><code>CONFIG_HAVE_LIBM</code>:
|
||||
Toolchain supports libm.a</li>
|
||||
</ul>
|
||||
@@ -1515,6 +1543,29 @@ The system can be re-made subsequently by just typing <code>make</code>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>File Systems</h2>
|
||||
<ul>
|
||||
<li>
|
||||
<code>CONFIG_FS_FAT</code>: Enable FAT filesystem support.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_FAT_SECTORSIZE</code>: Max supported sector size.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_FS_ROMFS</code>: Enable ROMFS filesystem support
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>SPI-based MMC/SD driver<h2>
|
||||
<ul>
|
||||
<li>
|
||||
<code>CONFIG_MMCSD_NSLOTS</code>: Number of MMC/SD slots supported by the driver. Default is one.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_MMCSD_READONLY</code>: Provide read-only access. Default is Read/Write
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>Network Support</h2>
|
||||
<h3>TCP/IP and UDP support via uIP</h2>
|
||||
<ul>
|
||||
@@ -1607,6 +1658,98 @@ The system can be re-made subsequently by just typing <code>make</code>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>USB Device-Side Support</h2>
|
||||
<h3>USB Device Controller Driver</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV</code>: Enables USB device support
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_ISOCHRONOUS</code>: Build in extra support for isochronous endpoints
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_DUALSPEED</code>: Hardware handles high and full speed operation (USB 2.0)
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_SELFPOWERED</code>: Will cause USB features to indicate that the device is self-powered
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_MAXPOWER</code>: Maximum power consumption in mA
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_TRACE</code>: Enables USB tracing for debug
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBDEV_TRACE_NRECORDS</code>: Number of trace entries to remember
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3>USB Serial Device Class Driver</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<code>CONFIG_USBSER</code>: Enable compilation of the USB serial driver
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_EPINTIN</code>: The logical 7-bit address of a hardware endpoint that supports interrupt IN operation
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_EPBULKOUT</code>: The logical 7-bit address of a hardware endpoint that supports bulk OUT operation
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_EPBULKIN</code>: The logical 7-bit address of a hardware endpoint that supports bulk IN operation
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_NWRREQS</code> and <code>CONFIG_USBSER_NRDREQS</code>: The number of write/read requests that can be in flight
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_VENDORID</code> and <code>CONFIG_USBSER_VENDORSTR</code>: The vendor ID code/string
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_PRODUCTID</code> and <code>CONFIG_USBSER_PRODUCTSTR</code>: The product ID code/string
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSER_RXBUFSIZE</code> and <code>CONFIG_USBSER_TXBUFSIZE</code>: Size of the serial receive/transmit buffers
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3>USB Storage Device Configuration</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG</code>:
|
||||
Enable compilation of the USB storage driver
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_EP0MAXPACKET</code>:
|
||||
Max packet size for endpoint 0
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRGEPBULKOUT</code> and <code>CONFIG_USBSTRG_EPBULKIN</code>:
|
||||
The logical 7-bit address of a hardware endpoints that support bulk OUT and IN operations
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_NWRREQS</code> and <code>CONFIG_USBSTRG_NRDREQS</code>:
|
||||
The number of write/read requests that can be in flight
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_BULKINREQLEN</code> and <code>CONFIG_USBSTRG_BULKOUTREQLEN</code>:
|
||||
The size of the buffer in each write/read request.
|
||||
This value needs to be at least as large as the endpoint maxpacket and
|
||||
ideally as large as a block device sector.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_VENDORID</code> and <code>CONFIG_USBSTRG_VENDORSTR</code>:
|
||||
The vendor ID code/string
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_PRODUCTID</code> and <code>CONFIG_USBSTRG_PRODUCTSTR</code>:
|
||||
The product ID code/string
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USBSTRG_REMOVABLE</code>:
|
||||
Select if the media is removable
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2>Stack and heap information</h2>
|
||||
|
||||
<ul>
|
||||
@@ -1618,7 +1761,15 @@ The system can be re-made subsequently by just typing <code>make</code>.
|
||||
<code>CONFIG_STACK_POINTER</code>: The initial stack pointer
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_PROC_STACK_SIZE</code>: The size of the initial stack
|
||||
<code>CONFIG_IDLETHREAD_STACKSIZE</code>: The size of the initial stack.
|
||||
This is the thread that (1) performs the inital boot of the system up
|
||||
to the point where user_start() is spawned, and (2) there after is the
|
||||
IDLE thread that executes only when there is no other thread ready to
|
||||
run.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_USERMAIN_STACKSIZE</code>: The size of the stack to allocate
|
||||
for the main user thread that begins at the user_start() entry point.
|
||||
</li>
|
||||
<li>
|
||||
<code>CONFIG_PTHREAD_STACK_MIN</code>: Minimum pthread stack size
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -5,16 +5,20 @@
|
||||
<body background="backgd.gif">
|
||||
<center>
|
||||
<table border="1" width="80%" bgcolor="#eeeeee">
|
||||
<tr><td>
|
||||
<big><b><i>Free</i> Ports</b></big>.
|
||||
If you have a hardware platform that you would like to see NuttX ported to then have I got a deal for you:
|
||||
I am willing to port NuttX to run on your hardware <b><i>FREE</i></b>.
|
||||
You would, of course, have to provide all hardware, development tools, and documentation.
|
||||
The functionality would be limited to basic boot-up, serial console, networking, ...
|
||||
I would need to retain the hardware throught the support cycle.
|
||||
Of course, this offer depends the availability of free time to do the port.
|
||||
If you are interested, contact <a href="http://sourceforge.net/users/patacongo/">patacongo</a> at SourceForge.
|
||||
</td></tr></table>
|
||||
<tr>
|
||||
<td width="210">
|
||||
<a href="freeports.html" target="_blank">
|
||||
<img src="freeports.gif" width="210" height="62" border="0"/>
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
If you have a hardware platform that you would like to see NuttX ported to then have I got a deal for you:
|
||||
I am willing to port NuttX to run on your hardware <b><i>FREE</i></b>.
|
||||
If you are interested, contact
|
||||
<a href="http://sourceforge.net/users/patacongo/" target="_top">patacongo</a> at SourceForge.
|
||||
<a href="NuttXBanner.html">>>back<<</a>.
|
||||
</td>
|
||||
</tr></table>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
18
Makefile
18
Makefile
@@ -201,6 +201,24 @@ examples/$(CONFIG_EXAMPLE)/lib$(CONFIG_EXAMPLE)$(LIBEXT): context
|
||||
|
||||
$(BIN): context depend $(LINKLIBS)
|
||||
@$(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" LINKLIBS="$(LINKLIBS)" $(BIN)
|
||||
@if [ -w /tftpboot ] ; then \
|
||||
cp -f $(TOPDIR)/$@ /tftpboot/$@.${CONFIG_ARCH}; \
|
||||
fi
|
||||
ifeq ($(CONFIG_RRLOAD_BINARY),y)
|
||||
@$(TOPDIR)/tools/mkimage.sh --Prefix $(CROSSDEV) $(TOPDIR)/$@ $(TOPDIR)/$@.rr
|
||||
@if [ -w /tftpboot ] ; then \
|
||||
cp -f $(TOPDIR)/$@.rr /tftpboot/$@.rr.${CONFIG_ARCH}; \
|
||||
fi
|
||||
endif
|
||||
ifeq ($(CONFIG_INTELHEX_BINARY),y)
|
||||
@$(OBJCOPY) -O ihex $(TOPDIR)/$@ $(TOPDIR)/$@.ihx
|
||||
endif
|
||||
ifeq ($(CONFIG_MOTOROLA_SREC),y)
|
||||
@$(OBJCOPY) -O srec $(TOPDIR)/$@ $(TOPDIR)/$@.srec
|
||||
endif
|
||||
ifeq ($(CONFIG_RAW_BINARY),y)
|
||||
@$(OBJCOPY) -O binary $(TOPDIR)/$@ $(TOPDIR)/$@.bin
|
||||
endif
|
||||
|
||||
depend:
|
||||
@for dir in $(MAKEDIRS) ; do \
|
||||
|
||||
149
ReleaseNotes
149
ReleaseNotes
@@ -569,4 +569,153 @@ These changes were verified only on the Neuros OSD (ARM9). Please report any er
|
||||
|
||||
This tarball contains a complete CVS snapshot from September 8, 2008.
|
||||
|
||||
nutt-0.3.15
|
||||
^^^^^^^^^^^
|
||||
|
||||
This is the 27th release of NuttX. This release includes some new features:
|
||||
|
||||
* Adds support for the ROMFS filesystem
|
||||
* ROMFS supports mmap() to provide eXecute In Place (XIP) capability
|
||||
* NuttShell (NSH) can be configured to use ROMFS to provide a tiny read-only
|
||||
filesystem with a startup script in /etc.
|
||||
* Completed the basic port of the NXP LPC2148 on the mcu123.com board.
|
||||
The basic port includes successful booting, timer interrupts, serial console,
|
||||
succesfully passing the examples/ostest, and a NuttShell (NSH) configuration.
|
||||
|
||||
These changes were verified only on the mcu123.com NXP LPC2148 board. Please report
|
||||
any errors to me.
|
||||
|
||||
This tarball contains a complete CVS snapshot from September 20, 2008.
|
||||
|
||||
nutt-0.3.16
|
||||
^^^^^^^^^^^
|
||||
|
||||
This is the 28th release of NuttX. This release includes the first support for
|
||||
USB in NuttX. A set of USB APIs were added to support USB device controller
|
||||
drivers and bindings to USB device class drivers. The form of the interface
|
||||
was inspired by the Linux Gadget APIs.
|
||||
|
||||
At present USB device controller drivers are included for:
|
||||
|
||||
* The NXP LPC214x. This driver has been verified and is an early alpha
|
||||
stage in quality.
|
||||
* TI DM320. Coding for this driver is complete but it is completely untested
|
||||
as of this release.
|
||||
|
||||
A controller-independent class driver is also included for:
|
||||
|
||||
* USB serial class device driver (emulates the Prolific PL2303 serial-to-USB
|
||||
adaptor). This drver has only been verified with the Linux host PL2303
|
||||
driver.
|
||||
|
||||
Other new features include:
|
||||
|
||||
* Add an option to set aside a separate stack for interrupt handling (ARM only).
|
||||
This is useful when memory is constrained, there are multiple tasks, and
|
||||
the interrupt stack requirement is high (as when USB is enabled).
|
||||
|
||||
A few bugs were also fixed:
|
||||
|
||||
* Fixed the frequency of system timer interrupts in the NXP LPC214x port
|
||||
(off by 20x in nuttx-0.3.15)
|
||||
* Fixed serial driver bugs related to (1) open counts and (2) recognizing
|
||||
O_NONBLOCK on read.
|
||||
* Fixed an error in read(); it was not setting the errno on errors returned
|
||||
from the driver.
|
||||
|
||||
These changes were verified only on the mcu123.com NXP LPC2148 board using with
|
||||
a Linux host. Please report any errors to me.
|
||||
|
||||
This tarball contains a complete CVS snapshot from Octobor 10, 2008.
|
||||
|
||||
UPDATE
|
||||
^^^^^^
|
||||
This release does not build for the ARM target when USB is disabled. Here is the fix:
|
||||
|
||||
Index: arch/arm/src/common/up_internal.h
|
||||
===================================================================
|
||||
RCS file: /cvsroot/nuttx/nuttx/arch/arm/src/common/up_internal.h,v
|
||||
retrieving revision 1.13
|
||||
diff -u -r1.13 up_internal.h
|
||||
--- arch/arm/src/common/up_internal.h 6 Oct 2008 16:20:52 -0000 1.13
|
||||
+++ arch/arm/src/common/up_internal.h 13 Oct 2008 20:48:21 -0000
|
||||
@@ -200,7 +200,8 @@
|
||||
extern void up_usbinitialize(void);
|
||||
extern void up_usbuninitialize(void);
|
||||
#else
|
||||
-# define up_netinitialize()
|
||||
+# define up_usbinitialize()
|
||||
+# define up_usbuninitialize()
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
nuttx-0.3.17
|
||||
^^^^^^^^^^^^
|
||||
|
||||
This is the 29th release of NuttX. This release includes the additional support for
|
||||
USB in NuttX. The following new features were added:
|
||||
|
||||
* Added support for SPI-based MMC/SD cards (with an SPI driver for the NXP LPC214x).
|
||||
* Added USB storage class device side driver (BBB)
|
||||
* Added an example that demonstrates the USB storage class by exporting the SPI
|
||||
based MMC/SD card on the NXP LPC214x.
|
||||
|
||||
This is an early alpha release of these drivers. At present they only work with
|
||||
debug features enabled so there are probably some race conditions that occur only
|
||||
with debug features disabled (anyone out there with a USB analyzer? I would love
|
||||
to know what is happening).
|
||||
|
||||
Several important bugs were also fixed in the FAT file system, USB serial driver and
|
||||
NXP LPC214x USB controller driver (see the ChangeLog for details).
|
||||
|
||||
These changes were verified only on the mcu123.com NXP LPC2148 board using a Linux
|
||||
development environment. USB testing was performed using both a Linux host and a WinXP
|
||||
host. Please report any errors to me.
|
||||
|
||||
This tarball contains a complete CVS snapshot from Octobor 28, 2008.
|
||||
|
||||
nuttx-0.3.18
|
||||
^^^^^^^^^^^^
|
||||
|
||||
This is the 30th release of NuttX. This release includes two partially completed
|
||||
ports, several new features, and a couple of important bug fixes. The two partially
|
||||
completed ports are:
|
||||
|
||||
* The STMicro STR71x processor and configuration for the Olimex STR-P711
|
||||
board.
|
||||
* The Hitachi SH-1 using the SH1_LCEVB1 (SH-1/US7032EVB1) board
|
||||
|
||||
Progress on these ports is stalled (as detailed in the ChangeLog).
|
||||
|
||||
The new features focus primarily on management of block devices and extensions of
|
||||
the NuttShell (NSH). These include:
|
||||
|
||||
* A loop device that converts a file into a block device.
|
||||
* A block to character (BCH) driver that allow access a block device as
|
||||
if it were character device.
|
||||
* Added strcasecmp() and strncasecmp() libc functions.
|
||||
* Added the 'dd' and 'losetup' commands to NSH. These commands (along
|
||||
with mkfatfs and mount), give good managment of filesystems on the target.
|
||||
|
||||
Several bugs were fixed, the most important of which are:
|
||||
|
||||
* Fixd a race condition workaround delay in LPC214X SPI logic. This was also
|
||||
the cause of some bad MMC/SD performance on that platform.
|
||||
* Fixed a recently introduced FAT file system problem: It would mount a (invalid)
|
||||
FAT file system even if the medium is not formatted!
|
||||
* Corrected two iother important errors in the FAT lseek implementation:
|
||||
(1) the sectors-per-cluster value was being reset to "1" and (2) important
|
||||
lseek logic was omitted when the seek position was zero.
|
||||
|
||||
The FAT filesystem has had many bugs fixed in it and, I think, is now maturing
|
||||
and becoming stable.
|
||||
|
||||
These changes were verified only on the mcu123.com NXP LPC2148 board, the Hitachi
|
||||
SH1_LCEVB1 board, and the Linux simulator, all using a Linux development environment.
|
||||
Please report any errors to me.
|
||||
|
||||
This tarball contains a complete CVS snapshot from November 16, 2008.
|
||||
|
||||
|
||||
|
||||
|
||||
157
TODO
157
TODO
@@ -1,4 +1,4 @@
|
||||
NuttX TODO List (Last updated July 31, 2008)
|
||||
NuttX TODO List (Last updated November 13, 2008)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
(7) Task/Scheduler (sched/)
|
||||
@@ -8,20 +8,22 @@ NuttX TODO List (Last updated July 31, 2008)
|
||||
(1) pthreads (sched/)
|
||||
(1) C++ Support
|
||||
(12) Network (net/, netutils/)
|
||||
(2) USB (drivers/usbdev)
|
||||
(1) USB (drivers/usbdev)
|
||||
(3) Libraries (lib/)
|
||||
(4) File system/Generic drivers (fs/, drivers/)
|
||||
(5) File system/Generic drivers (fs/, drivers/)
|
||||
(1) Pascal add-on (pcode/)
|
||||
(2) Documentation (Documentation/)
|
||||
(3) Build system
|
||||
(2) NuttShell (NSH) (examples/nsh)
|
||||
(1) Other Applications & Tests (examples/)
|
||||
(1) ARM (arch/arm/)
|
||||
(2) ARM (arch/arm/)
|
||||
(1) ARM/C5471 (arch/arm/src/c5471/)
|
||||
(1) ARM/DM320 (arch/arm/src/dm320/)
|
||||
(2) ARM/LPC214x (arch/arm/src/lpc214x/)
|
||||
(6) ARM/LPC214x (arch/arm/src/lpc214x/)
|
||||
(3) ARM/STR71x (arch/arm/src/str71x/)
|
||||
(4) pjrc-8052 / MCS51 (arch/pjrc-8051/)
|
||||
(7) z80/z8 (arch/z80/)
|
||||
(1) SH-1 (arch/sh)
|
||||
(8) z80/z8/ez80 (arch/z80/)
|
||||
(8) z16 (arch/z16/)
|
||||
|
||||
o Task/Scheduler (sched/)
|
||||
@@ -149,7 +151,9 @@ o Network (net/, netutils/)
|
||||
Priority: Medium, The feature is not important, but it is important
|
||||
for NuttX to resolve the architectural issues.
|
||||
|
||||
Description: IPv6 support is incomplete
|
||||
Description: IPv6 support is incomplete. Adam Dunkels has recently announced
|
||||
IPv6 support for uIP (currently only as part of Contiki). Those
|
||||
changes need to be ported to NuttX.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
@@ -204,11 +208,11 @@ o Network (net/, netutils/)
|
||||
o USB (drivers/usbdev)
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description: Implement USB device support
|
||||
Status: Open
|
||||
Priority: High
|
||||
|
||||
Description: Implement USB bulk / serial device support
|
||||
Description: The USB bulk storage class driver configuration (examples/usbstorage)
|
||||
does not work reliably when debug is disabled (CONFIG_DEBUG+CONFIG_DEBUG_VERBOSE
|
||||
+CONFIG_DEBUG_USB) on WinXP (Linux appears to be fine). A race condition would
|
||||
would be a possibility. The symptom is that that WinXP sends a MODE SENSE (6)
|
||||
command with an unsupported mode page (0x1c/0x00)
|
||||
Status: Open
|
||||
Priority: High
|
||||
|
||||
@@ -233,7 +237,7 @@ o File system / Generic drivers (fs/, drivers/)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: FAT32: long file names
|
||||
Description: FAT: long file names
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
@@ -250,6 +254,22 @@ o File system / Generic drivers (fs/, drivers/)
|
||||
when there are not open references to the pipe/FIFO.
|
||||
Priority: Medium
|
||||
|
||||
Description: The ROMFS file system does not verify checksums on either
|
||||
volume header on on the individual files.
|
||||
Status: Open
|
||||
Priority: Low. I have mixed feelings about if NuttX should pay a
|
||||
performance penalty for better data integrity.
|
||||
|
||||
Description: FAT: FAT32 is untested -- because I don't have any large
|
||||
enough devices yet to support a FAT32 FS.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
Description: The simple SPI based MMCS/SD driver in fs/mmcsd does not
|
||||
yet handle multiple block transfers.
|
||||
Status: Open
|
||||
Priority: Medium-Low
|
||||
|
||||
o Pascal Add-On (pcode/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -290,6 +310,13 @@ o Build system
|
||||
Status: Open
|
||||
Priority: Medium (maybe higher for z80 target)
|
||||
|
||||
Description: It would be nice to de-couple some of the behaviors enabled by
|
||||
CONFIG_DEBUG. For example, CONFIG_DEBUG turns on debug output,
|
||||
but also disables optimization make the binary much bigger.
|
||||
Status: Low. There workaround is easy.. just edit the configuration's
|
||||
Make.def file to control the behavior that you want.
|
||||
Priority: Very low.
|
||||
|
||||
o NuttShell (NSH) (examples/nsh)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -315,11 +342,21 @@ o Other Applications & Tests (examples/)
|
||||
o ARM (arch/arm/)
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
Description: Add option to use a separate stack for interrupt handling. At
|
||||
present, each interrupt executes on top of the user stack
|
||||
allocation making each user stack allocation larger than needed.
|
||||
Description: ARM interrupt handling performance could be improved in many
|
||||
ways. One easy way is to use a pointer to the context save
|
||||
area in current_regs instead of using up_copystate so much.
|
||||
see handling of 'current_regs" in arch/sh/src/common/* for
|
||||
examples of how this might be done.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
Priority: Low
|
||||
|
||||
Description: The ARM interrupt handler restores all regisers upon return.
|
||||
This could be improved as well: If there is not context
|
||||
switch, then the static registers need not be restored
|
||||
because they will not be modified by the called C code.
|
||||
(see arch/sh/src/sh1/sh1_vector.S for example)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
o ARM/C5471 (arch/arm/src/c5471/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@@ -340,16 +377,61 @@ o ARM/DM320 (arch/arm/src/dm320/)
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
Description: A USB device controller driver was added but has never been tested.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
o ARM/LPC214x (arch/arm/src/lpc214x/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description: Finish bringup
|
||||
Description: Should use Vector Interrupts
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: USB DMA not fully implemented. Partial logic is in place but it is
|
||||
fragmentary and bogus.
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: USB Serial Driver reports wrong error when opened before the
|
||||
USB is connected (reports EBADF instead of ENOTCONN)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: The USB bulk storage class driver configuration (examples/usbstorage)
|
||||
does not work reliably when debug is disabled (CONFIG_DEBUG+CONFIG_DEBUG_VERBOSE
|
||||
+CONFIG_DEBUG_USB) on WinXP (Linux appears to be fine). A race condition would
|
||||
would be a possibility. The symptom is that that WinXP sends a MODE SENSE (6)
|
||||
command with an unsupported mode page (0x1c/0x00)
|
||||
Status: Open
|
||||
Priority: High
|
||||
|
||||
Description: Add MMC and USB support
|
||||
Description: At present the SPI driver is polled. Should it be interrupt driven?
|
||||
Status: Open
|
||||
Priority: Mediam
|
||||
Priority: Medium
|
||||
|
||||
Description: At present the SPI driver is polled -AND- there is a rather large, arbitrary,
|
||||
delay in one of the block access routines. The purpose of the delay is to
|
||||
avoid a race conditions. This begs for a re-design -OR- at a minimum, some
|
||||
optimiation of the delay time.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
o ARM/STR71x (arch/arm/src/str71x/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description: Basic port is complete but untested. Complete integration
|
||||
Status: Open
|
||||
Priority: High
|
||||
|
||||
Description: Add SPI driver and integrate with MMC/SD support.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
Description: Develop a USB driver and integrate with existing USB serial
|
||||
and storage class drivers.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
o pjrc-8052 / MCS51 (arch/pjrc-8051/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
@@ -386,8 +468,32 @@ o pjrc-8052 / MCS51 (arch/pjrc-8051/)
|
||||
Status: Open
|
||||
Priority: Low -- only because there as so many other issues with 8051
|
||||
|
||||
o z80/z8 (arch/z80)
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
o SH-1 (arch/sh)
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Description: There are instabilities that make the SH-1 port un-usable. The
|
||||
nature of these is not understood; the behavior is that certain SH-1
|
||||
instructions stop working as advertised. I have seen the following
|
||||
examples:
|
||||
|
||||
412b jmp @r1 - Set a return address in PR, i.e., it behaved like
|
||||
410b jsr @r1. Normally 412b works correctly, but in the failure
|
||||
condition, it reliably set the PR.
|
||||
69F6 mov.l @r15+,r9 - wrote the value of R1 to @r15+. This behavior
|
||||
does not correspond to any known SH-1 instruction
|
||||
|
||||
This could be a silicon problem, some pipeline issue that is not
|
||||
handled properly by the gcc 3.4.5 toolchain (which has very limit
|
||||
SH-1 support to begin with), or perhaps with the CMON debugger. At
|
||||
any rate, I have exhausted all of the energy that I am willing to put
|
||||
into this cool old processor for the time being.
|
||||
Status: Open
|
||||
Priority: Low -- because the SH-1, SH7032, is very old and only of historical
|
||||
interest.
|
||||
|
||||
o z80/z8/ez80 (arch/z80)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description: The SDCC version the same problems with interger overflow during
|
||||
compilation as described for pjrc-8051. At typical cause is code like
|
||||
@@ -446,6 +552,13 @@ o z80/z8 (arch/z80)
|
||||
Status: Open
|
||||
Priority: Low
|
||||
|
||||
Description: The XTRS target (configs/xtrs) has a clean problem. The clean
|
||||
rule removes .asm files. This works because there are no .asm
|
||||
files except in sub-directories that are provided from 'make clean' --
|
||||
except for XTRS: It has a .asm file in its src/ directory that
|
||||
gets removed everytime clean is performd.
|
||||
Status: Open
|
||||
Priority: High if you happen to be working with XTRS.
|
||||
|
||||
o z16 (arch/z16)
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -123,7 +123,7 @@ src/Makefile
|
||||
Supported Architectures
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
arch/sim - Linux simulation
|
||||
arch/sim - Linux/Cygwin simulation
|
||||
A user-mode port of NuttX to the x86 Linux platform is available.
|
||||
The purpose of this port is primarily to support OS feature development.
|
||||
This port does not support interrupts or a real timer (and hence no
|
||||
@@ -133,7 +133,7 @@ arch/arm - ARM-based micro-controllers
|
||||
This directory holds common ARM architectures. At present, this includes
|
||||
the following subdirectories:
|
||||
|
||||
arch/arm/include and arch/arm/common
|
||||
arch/arm/include and arch/arm/src/common
|
||||
Common ARM logic.
|
||||
|
||||
arch/arm/include/c5471 and arch/arm/src/c5471
|
||||
@@ -148,14 +148,29 @@ arch/arm - ARM-based micro-controllers
|
||||
|
||||
arch/arm/include/lpc214x and arch/arm/src/lpc214x
|
||||
These directories provide support for NXP LPC214x family of
|
||||
processors.
|
||||
STATUS: This port is in progress and should be available in the
|
||||
nuttx-0.2.5 release.
|
||||
processors. This port boots and passes the OS test (examples/ostest).
|
||||
The port is complete and verifed. As of NuttX 0.3.17, the port includes:
|
||||
timer interrupts, serial console, USB driver, and SPI-based MMC/SD card
|
||||
support. A verifed NuttShell (NSH) configuration is also available.
|
||||
|
||||
arch/arm/include/str71x and arch/arm/src/str71x
|
||||
These directories provide support for the STMicro STR71x processors.
|
||||
Coding is complete on the basic port (boot logic, system time, serial console),
|
||||
but no testing has been performed due to some problems I am having with my
|
||||
JTAG wiggler and OpenOCD on Linux.
|
||||
|
||||
arch/m68322
|
||||
A work in progress.
|
||||
STATUS: Stalled for the moment.
|
||||
|
||||
arch/sh - SuperH and related Hitachi/Renesas microcontrollers
|
||||
|
||||
arch/sh/include and arch/sh/src/common
|
||||
Common SuperH logic.
|
||||
|
||||
arch/sh/include/shs and arch/sh/src/sh1
|
||||
Support for the SH-1 processor.
|
||||
|
||||
arch/pjrc-8051 - 8051/52 microcontrollers
|
||||
8051 Microcontroller. This port is not quite ready for prime time.
|
||||
|
||||
@@ -163,7 +178,7 @@ arch/z16 - ZiLOG 16-bit processors
|
||||
This directory holds related, 16-bit architectures from ZiLOG. At
|
||||
present, this includes the following subdirectories:
|
||||
|
||||
arch/z16/include and arch/z16/common
|
||||
arch/z16/include and arch/z16/src/common
|
||||
Common microcontroller logic.
|
||||
|
||||
arch/z16/include/z16f and arch/z16/src/z16f
|
||||
@@ -175,7 +190,7 @@ arch/z80 - ZiLOG 8-bit microcontrollers
|
||||
This directory holds related, 8-bit architectures from ZiLOG. At
|
||||
present, this includes the following subdirectories:
|
||||
|
||||
arch/z80/include and arch/z80/common
|
||||
arch/z80/include and arch/z80/src/common
|
||||
Common microcontroller logic.
|
||||
|
||||
arch/z80/include/z80 and arch/z80/src/z80
|
||||
@@ -185,7 +200,9 @@ arch/z80 - ZiLOG 8-bit microcontrollers
|
||||
|
||||
arch/z80/include/z8 and arch/z80/src/z8
|
||||
ZiLOG Z8Encore! Microcontroller
|
||||
This is a work in progress.
|
||||
|
||||
arch/z80/include/ez80 and arch/z80/src/ez80
|
||||
ZiLOG ez80 Acclaim! Microcontroller
|
||||
|
||||
The following architecture directories are deprecated. They have been
|
||||
replaced by the logic in arm/arm and will deleted at some point in the
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/arch.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/arch.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,38 +31,38 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through nuttx/arch.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_ARCH_H
|
||||
#define __ARCH_ARCH_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_ARCH_H
|
||||
#define __ARCH_ARM_INCLUDE_ARCH_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Inline functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Variables
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define EXTERN extern "C"
|
||||
@@ -76,4 +76,4 @@ extern "C" {
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_ARCH_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_ARCH_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/c5471/irq.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/c5471/irq.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,22 +31,22 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through nuttx/irq.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_C5471_IRQ_H
|
||||
#define __ARCH_C5471_IRQ_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_C5471_IRQ_H
|
||||
#define __ARCH_ARM_INCLUDE_C5471_IRQ_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* C5471 Interrupts */
|
||||
|
||||
@@ -71,21 +71,21 @@
|
||||
#define C5471_IRQ_SYSTIMER C5471_IRQ_TIMER2
|
||||
#define NR_IRQS (C5471_IRQ_API+1)
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Inline functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Variables
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#ifdef __cplusplus
|
||||
@@ -101,5 +101,5 @@ extern "C" {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_C5471_IRQ_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_C5471_IRQ_H */
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/dm320/irq.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/dm320/irq.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,22 +31,22 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through nuttx/irq.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_DM320_IRQ_H
|
||||
#define __ARCH_DM320_IRQ_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_DM320_IRQ_H
|
||||
#define __ARCH_ARM_INCLUDE_DM320_IRQ_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* DM320 Interrupts */
|
||||
|
||||
@@ -100,21 +100,21 @@
|
||||
#define DM320_IRQ_SYSTIMER DM320_IRQ_TMR0
|
||||
#define NR_IRQS (DM320_IRQ_RSV+1)
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Inline functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Variables
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#ifdef __cplusplus
|
||||
@@ -130,5 +130,5 @@ extern "C" {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_DM320_IRQ_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_DM320_IRQ_H */
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/irq.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/irq.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,25 +31,25 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through nuttx/irq.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_IRQ_H
|
||||
#define __ARCH_IRQ_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_IRQ_H
|
||||
#define __ARCH_ARM_INCLUDE_IRQ_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/irq.h>
|
||||
#include <arch/chip/irq.h>
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* IRQ Stack Frame Format:
|
||||
*
|
||||
@@ -103,9 +103,9 @@
|
||||
#define REG_LR REG_R14
|
||||
#define REG_PC REG_R15
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This struct defines the way the registers are stored. We
|
||||
* need to save:
|
||||
@@ -136,7 +136,6 @@ struct xcptcontext
|
||||
|
||||
#ifndef CONFIG_DISABLE_SIGNALS
|
||||
void *sigdeliver; /* Actual type is sig_deliver_t */
|
||||
#endif
|
||||
|
||||
/* These are saved copies of LR and CPSR used during
|
||||
* signal processing.
|
||||
@@ -144,6 +143,7 @@ struct xcptcontext
|
||||
|
||||
uint32 saved_pc;
|
||||
uint32 saved_cpsr;
|
||||
#endif
|
||||
|
||||
/* Register save area */
|
||||
|
||||
@@ -151,9 +151,9 @@ struct xcptcontext
|
||||
};
|
||||
#endif
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Inline functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
@@ -203,13 +203,13 @@ static inline void system_call(swint_t func, int parm1,
|
||||
}
|
||||
#endif
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Variables
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#ifdef __cplusplus
|
||||
@@ -225,5 +225,5 @@ extern "C" {
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_IRQ_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_IRQ_H */
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* limits.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/limits.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,18 +31,18 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_LIMITS_H
|
||||
#define __ARCH_LIMITS_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_LIMITS_H
|
||||
#define __ARCH_ARM_INCLUDE_LIMITS_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#define CHAR_BIT 8
|
||||
#define SCHAR_MIN 0x80
|
||||
@@ -72,4 +72,4 @@
|
||||
#define LLONG_MIN 0x7fffffffffffffff
|
||||
#define ULLONG_MAX 0xffffffffffffffff
|
||||
|
||||
#endif /* __ARCH_LIMITS_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_LIMITS_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/****************************************************************************
|
||||
* arch/lpc214x/irq.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -81,7 +81,7 @@
|
||||
* following will be used by the system.
|
||||
*/
|
||||
|
||||
#define LPC214X_SYSTEMER_VEC 0 /* System timer */
|
||||
#define LPC214X_SYSTIMER_VEC 0 /* System timer */
|
||||
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/serial.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/serial.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,18 +31,18 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_SERIAL_H
|
||||
#define __ARCH_SERIAL_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_SERIAL_H
|
||||
#define __ARCH_ARM_INCLUDE_SERIAL_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* IOCTL commands supported by the ARM serial driver */
|
||||
|
||||
@@ -50,12 +50,12 @@
|
||||
#define TIOCCBRK 0x5402 /* " " " " */
|
||||
#define TIOCSERGSTRUCT 0x5403 /* Get up_dev_t for port */
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_SERIAL_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_SERIAL_H */
|
||||
|
||||
120
arch/arm/include/str71x/irq.h
Normal file
120
arch/arm/include/str71x/irq.h
Normal file
@@ -0,0 +1,120 @@
|
||||
/************************************************************************************
|
||||
* arch/arm/include/str71x/irq.h
|
||||
*
|
||||
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through nuttx/irq.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_ARM_INCLUDE_STR71X_IRQ_H
|
||||
#define __ARCH_ARM_INCLUDE_STR71X_IRQ_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/* IRQ channels */
|
||||
|
||||
#define STR71X_IRQ_T0TIMI (0)
|
||||
#define STR71X_IRQ_FLASH (1)
|
||||
#define STR71X_IRQ_RCCU (2)
|
||||
#define STR71X_IRQ_RTC (3)
|
||||
#define STR71X_IRQ_WDG (4)
|
||||
#define STR71X_IRQ_XTI (5)
|
||||
#define STR71X_IRQ_USBHP (6)
|
||||
#define STR71X_IRQ_I2C0ITERR (7)
|
||||
#define STR71X_IRQ_I2C1ITERR (8)
|
||||
#define STR71X_IRQ_UART0 (9)
|
||||
#define STR71X_IRQ_UART1 (10)
|
||||
#define STR71X_IRQ_UART2 (11)
|
||||
#define STR71X_IRQ_UART3 (12)
|
||||
#define STR71X_IRQ_SPI0 (13)
|
||||
#define STR71X_IRQ_SPI1 (14)
|
||||
#define STR71X_IRQ_I2C0 (15)
|
||||
#define STR71X_IRQ_I2C1 (16)
|
||||
#define STR71X_IRQ_CAN (17)
|
||||
#define STR71X_IRQ_ADC (18)
|
||||
#define STR71X_IRQ_T1TIMI (19)
|
||||
#define STR71X_IRQ_T2TIMI (20)
|
||||
#define STR71X_IRQ_T3TIMI (21)
|
||||
#define STR71X_IRQ_HDLC (25)
|
||||
#define STR71X_IRQ_USBLP (26)
|
||||
#define STR71X_IRQ_T0TOI (29)
|
||||
#define STR71X_IRQ_T0OC1 (30)
|
||||
#define STR71X_IRQ_T0OC2 (31)
|
||||
|
||||
#define STR71X_IRQ_SYSTIMER STR71X_IRQ_T0TIMI
|
||||
#define NR_IRQS 32
|
||||
|
||||
/* FIQ channels */
|
||||
|
||||
#define STR71X_FIQ_T0TIMI (0X00000001)
|
||||
#define STR71X_FIQ_WDG (0X00000002)
|
||||
#define STR71X_FIQ_WDGT0TIMIS (0X00000003)
|
||||
|
||||
/************************************************************************************
|
||||
* Public Types
|
||||
************************************************************************************/
|
||||
|
||||
/************************************************************************************
|
||||
* Public Data
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#ifdef __cplusplus
|
||||
#define EXTERN extern "C"
|
||||
extern "C" {
|
||||
#else
|
||||
#define EXTERN extern
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
* Public Functions
|
||||
************************************************************************************/
|
||||
|
||||
#undef EXTERN
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* __ARCH_ARM_INCLUDE_STR71X_IRQ_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* arch/types.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/types.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,26 +31,26 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* This file should never be included directed but, rather,
|
||||
* only indirectly through sys/types.h
|
||||
/* This file should never be included directed but, rather, only indirectly
|
||||
* through sys/types.h
|
||||
*/
|
||||
|
||||
#ifndef __ARCH_TYPES_H
|
||||
#define __ARCH_TYPES_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_TYPES_H
|
||||
#define __ARCH_ARM_INCLUDE_TYPES_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Type Declarations
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
@@ -75,8 +75,8 @@ typedef unsigned int irqstate_t;
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Global Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_TYPES_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_TYPES_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* watchdog.h
|
||||
/****************************************************************************
|
||||
* arch/arm/include/watchdog.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,33 +31,33 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ARCH_WATCHDOG_H
|
||||
#define __ARCH_WATCHDOG_H
|
||||
#ifndef __ARCH_ARM_INCLUDE_WATCHDOG_H
|
||||
#define __ARCH_ARM_INCLUDE_WATCHDOG_H
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* IOCTL commands supported by the C5471 watchdog driver */
|
||||
|
||||
#define WDIOC_KEEPALIVE 0x5701 /* Restart the watchdog timer */
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#endif /* __ARCH_WATCHDOG_H */
|
||||
#endif /* __ARCH_ARM_INCLUDE_WATCHDOG_H */
|
||||
|
||||
@@ -82,7 +82,12 @@ board/libboard$(LIBEXT):
|
||||
nuttx: $(HEAD_AOBJ) board/libboard$(LIBEXT)
|
||||
@echo "LD: nuttx"
|
||||
@$(LD) --entry=__start $(LDFLAGS) $(LDPATHES) -L$(BOARDDIR) -o $(TOPDIR)/$@ $(HEAD_AOBJ) \
|
||||
--start-group $(LDLIBS) -lboard --end-group $(EXTRA_LIBS) $(LIBGCC)
|
||||
--start-group $(LDLIBS) -lboard --end-group $(EXTRA_LIBS) $(LIBGCC)
|
||||
ifeq ($(CONFIG_BOOT_FROM_FLASH),y)
|
||||
@export flashloc=`$(OBJDUMP) --all-headers $(TOPDIR)/$@ | grep _eronly | cut -d' ' -f1`; \
|
||||
$(OBJCOPY) --adjust-section-vma=.data=0x$$flashloc $(TOPDIR)/$@ $(TOPDIR)/$@.flashimage
|
||||
@mv $(TOPDIR)/$@.flashimage $(TOPDIR)/$@
|
||||
endif
|
||||
@$(NM) $(TOPDIR)/$@ | \
|
||||
grep -v '\(compiled\)\|\(\$(OBJEXT)$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
|
||||
sort > $(TOPDIR)/System.map
|
||||
@@ -91,12 +96,6 @@ nuttx: $(HEAD_AOBJ) board/libboard$(LIBEXT)
|
||||
$(OBJCOPY) --adjust-section-vma=.vector=0x$$vflashstart $(TOPDIR)/$@ $(TOPDIR)/$@.flashimage; \
|
||||
mv $(TOPDIR)/$@.flashimage $(TOPDIR)/$@; \
|
||||
fi
|
||||
ifeq ($(CONFIG_RRLOAD_BINARY),y)
|
||||
@$(TOPDIR)/tools/mkimage.sh --Prefix $(CROSSDEV) $(TOPDIR)/$@ $(TOPDIR)/$@.rr
|
||||
@if [ -w /tftpboot ] ; then \
|
||||
cp -f $(TOPDIR)/$@.rr /tftpboot/$@.rr.${CONFIG_ARCH}; \
|
||||
fi
|
||||
endif
|
||||
|
||||
.depend: Makefile chip/Make.defs $(SRCS)
|
||||
@if [ -e board/Makefile ]; then \
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/**************************************************************************
|
||||
* c5471/c5471_lowputc.S
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/********************************************************************
|
||||
* c5471/c5471_vectors.S
|
||||
/************************************************************************************
|
||||
* arch/arm/src/c5471/c5471_vectors.S
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,23 +31,23 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <nuttx/irq.h>
|
||||
#include "up_arch.h"
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Global Data
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.data
|
||||
g_irqtmp:
|
||||
@@ -60,29 +60,29 @@ g_aborttmp:
|
||||
.word 0 /* Saved lr */
|
||||
.word 0 /* Saved spsr */
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Assembly Macros
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Private Functions
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.text
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Public Functions
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.text
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectorirq
|
||||
*
|
||||
* Description:
|
||||
* Interrupt excetpion. Entered in IRQ mode with spsr = SVC
|
||||
* CPSR, lr = SVC PC
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorirq
|
||||
.type up_vectorirq, %function
|
||||
@@ -156,7 +156,15 @@ up_vectorirq:
|
||||
|
||||
mov fp, #0 /* Init frame pointer */
|
||||
mov r1, sp /* Get r1=xcp */
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
ldr sp, .Lirqstackbase /* SP = interrupt stack base */
|
||||
str r1, [sp] /* Save the user stack pointer */
|
||||
bl up_doirq /* Call the handler */
|
||||
ldr sp, [sp] /* Restore the user stack pointer */
|
||||
#else
|
||||
bl up_doirq /* Call the handler */
|
||||
#endif
|
||||
|
||||
/* Restore the CPSR, SVC modr registers and return */
|
||||
.Lnoirqset:
|
||||
@@ -166,15 +174,18 @@ up_vectorirq:
|
||||
|
||||
.Lirqtmp:
|
||||
.word g_irqtmp
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
.Lirqstackbase:
|
||||
.word up_stackbase
|
||||
#endif
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Function: up_vectorswi
|
||||
*
|
||||
* Description:
|
||||
* SWI interrupt. We enter the SWI in SVC mode
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorswi
|
||||
.type up_vectorswi, %function
|
||||
@@ -222,7 +233,7 @@ up_vectorswi:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectordata
|
||||
*
|
||||
* Description:
|
||||
@@ -230,7 +241,7 @@ up_vectorswi:
|
||||
* abort handler. This function is entered in ABORT mode
|
||||
* with spsr = SVC CPSR, lr = SVC PC
|
||||
*
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectordata
|
||||
.type up_vectordata, %function
|
||||
@@ -290,13 +301,13 @@ up_vectordata:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectorprefetch
|
||||
*
|
||||
* Description:
|
||||
* Prefetch abort exception. Entered in ABT mode with
|
||||
* spsr = SVC CPSR, lr = SVC PC
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorprefetch
|
||||
.type up_vectorprefetch, %function
|
||||
@@ -356,14 +367,14 @@ up_vectorprefetch:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectorundefinsn
|
||||
*
|
||||
* Description:
|
||||
* Undefined instruction entry exception. Entered in
|
||||
* UND mode, spsr = SVC CPSR, lr = SVC PC
|
||||
*
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorundefinsn
|
||||
.type up_vectorundefinsn, %function
|
||||
@@ -422,28 +433,50 @@ up_vectorundefinsn:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectorfiq
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorfiq
|
||||
.type up_vectorfiq, %function
|
||||
up_vectorfiq:
|
||||
subs pc, lr, #4
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectoraddrexcption
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen
|
||||
*
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectoraddrexcptn
|
||||
.type up_vectoraddrexcptn, %function
|
||||
up_vectoraddrexcptn:
|
||||
b up_vectoraddrexcptn
|
||||
|
||||
/************************************************************************************
|
||||
* Name: up_interruptstack/g_userstack
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
.bss
|
||||
.align 4
|
||||
.globl g_userstack
|
||||
.type g_userstack, object
|
||||
up_interruptstack:
|
||||
.skip ((CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4)
|
||||
g_userstack:
|
||||
up_stackbase:
|
||||
.skip 4
|
||||
.size g_userstack, 4
|
||||
.size up_interruptstack, (CONFIG_ARCH_INTERRUPTSTACK & ~3)
|
||||
#endif
|
||||
.end
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************************************
|
||||
* common/arm.h
|
||||
* arch/arm/src/common/arm.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -33,8 +33,8 @@
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ARM_H
|
||||
#define __ARM_H
|
||||
#ifndef __ARCH_ARM_SRC_COMMON_ARM_H
|
||||
#define __ARCH_ARM_SRC_COMMON_ARM_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
@@ -249,6 +249,6 @@
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
#endif
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* __ARM_H */
|
||||
#endif /* __ARCH_ARM_SRC_COMMON_ARM_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_allocateheap.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_allocateheap.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,36 +31,39 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include <nuttx/arch.h>
|
||||
|
||||
#include "up_arch.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_allocate_heap
|
||||
*
|
||||
* Description:
|
||||
@@ -69,7 +72,7 @@
|
||||
* are not defined, then this function will be called to
|
||||
* dynamically set aside the heap region.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_allocate_heap(FAR void **heap_start, size_t *heap_size)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************************************
|
||||
* common/up_arch.h
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_arch.h
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,14 +31,14 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __UP_ARCH_H
|
||||
#define __UP_ARCH_H
|
||||
#ifndef ___ARCH_ARM_SRC_COMMON_UP_ARCH_H
|
||||
#define ___ARCH_ARM_SRC_COMMON_UP_ARCH_H
|
||||
|
||||
/************************************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#ifndef __ASSEMBLY__
|
||||
@@ -49,13 +49,13 @@
|
||||
#include <arch/board/board.h>
|
||||
#include "chip.h"
|
||||
|
||||
/************************************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************************************
|
||||
/****************************************************************************
|
||||
* Inline Functions
|
||||
************************************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
@@ -89,4 +89,4 @@ static inline void putreg16(uint16 val, unsigned int addr)
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* __UP_ARCH_H */
|
||||
#endif /* ___ARCH_ARM_SRC_COMMON_UP_ARCH_H */
|
||||
|
||||
@@ -94,50 +94,37 @@ static inline uint32 up_getsp(void)
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_ARCH_STACKDUMP
|
||||
static void up_stackdump(void)
|
||||
static void up_stackdump(uint32 sp, uint32 stack_base)
|
||||
{
|
||||
_TCB *rtcb = (_TCB*)g_readytorun.head;
|
||||
uint32 sp = up_getsp();
|
||||
uint32 stack_base;
|
||||
uint32 stack_size;
|
||||
uint32 stack ;
|
||||
|
||||
if (rtcb->pid == 0)
|
||||
for (stack = sp & ~0x1f; stack < stack_base; stack += 32)
|
||||
{
|
||||
stack_base = g_heapbase - 4;
|
||||
stack_size = CONFIG_PROC_STACK_SIZE;
|
||||
}
|
||||
else
|
||||
{
|
||||
stack_base = (uint32)rtcb->adj_stack_ptr;
|
||||
stack_size = (uint32)rtcb->adj_stack_size;
|
||||
uint32 *ptr = (uint32*)stack;
|
||||
lldbg("%08x: %08x %08x %08x %08x %08x %08x %08x %08x\n",
|
||||
stack, ptr[0], ptr[1], ptr[2], ptr[3],
|
||||
ptr[4], ptr[5], ptr[6], ptr[7]);
|
||||
}
|
||||
}
|
||||
#else
|
||||
# define up_stackdump()
|
||||
#endif
|
||||
|
||||
lldbg("stack_base: %08x\n", stack_base);
|
||||
lldbg("stack_size: %08x\n", stack_size);
|
||||
lldbg("sp: %08x\n", sp);
|
||||
/****************************************************************************
|
||||
* Name: up_registerdump
|
||||
****************************************************************************/
|
||||
|
||||
if (sp >= stack_base || sp < stack_base - stack_size)
|
||||
{
|
||||
lldbg("ERROR: Stack pointer is not within allocated stack\n");
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
uint32 stack = sp & ~0x1f;
|
||||
|
||||
for (stack = sp & ~0x1f; stack < stack_base; stack += 32)
|
||||
{
|
||||
uint32 *ptr = (uint32*)stack;
|
||||
lldbg("%08x: %08x %08x %08x %08x %08x %08x %08x %08x\n",
|
||||
stack, ptr[0], ptr[1], ptr[2], ptr[3],
|
||||
ptr[4], ptr[5], ptr[6], ptr[7]);
|
||||
}
|
||||
}
|
||||
#ifdef CONFIG_ARCH_STACKDUMP
|
||||
static inline void up_registerdump(void)
|
||||
{
|
||||
/* Are user registers available from interrupt processing? */
|
||||
|
||||
if (current_regs)
|
||||
{
|
||||
int regs;
|
||||
|
||||
/* Yes.. dump the interrupt registers */
|
||||
|
||||
for (regs = REG_R0; regs <= REG_R15; regs += 8)
|
||||
{
|
||||
uint32 *ptr = (uint32*)¤t_regs[regs];
|
||||
@@ -149,7 +136,101 @@ static void up_stackdump(void)
|
||||
}
|
||||
}
|
||||
#else
|
||||
# define up_stackdump()
|
||||
# define up_registerdump()
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_dumpstate
|
||||
****************************************************************************/
|
||||
|
||||
#ifdef CONFIG_ARCH_STACKDUMP
|
||||
static void up_dumpstate(void)
|
||||
{
|
||||
_TCB *rtcb = (_TCB*)g_readytorun.head;
|
||||
uint32 sp = up_getsp();
|
||||
uint32 ustackbase;
|
||||
uint32 ustacksize;
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
uint32 istackbase;
|
||||
uint32 istacksize;
|
||||
#endif
|
||||
|
||||
/* Get the limits on the user stack memory */
|
||||
|
||||
if (rtcb->pid == 0)
|
||||
{
|
||||
ustackbase = g_heapbase - 4;
|
||||
ustacksize = CONFIG_IDLETHREAD_STACKSIZE;
|
||||
}
|
||||
else
|
||||
{
|
||||
ustackbase = (uint32)rtcb->adj_stack_ptr;
|
||||
ustacksize = (uint32)rtcb->adj_stack_size;
|
||||
}
|
||||
|
||||
/* Get the limits on the interrupt stack memory */
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
istackbase = (uint32)&g_userstack;
|
||||
istacksize = (CONFIG_ARCH_INTERRUPTSTACK & ~3) - 4;
|
||||
|
||||
/* Show interrupt stack info */
|
||||
|
||||
lldbg("sp: %08x\n", sp);
|
||||
lldbg("IRQ stack:\n");
|
||||
lldbg(" base: %08x\n", istackbase);
|
||||
lldbg(" size: %08x\n", istacksize);
|
||||
|
||||
/* Does the current stack pointer lie within the interrupt
|
||||
* stack?
|
||||
*/
|
||||
|
||||
if (sp <= istackbase && sp > istackbase - istacksize)
|
||||
{
|
||||
/* Yes.. dump the interrupt stack */
|
||||
|
||||
up_stackdump(sp, istackbase);
|
||||
|
||||
/* Extract the user stack pointer which should lie
|
||||
* at the base of the interrupt stack.
|
||||
*/
|
||||
|
||||
sp = g_userstack;
|
||||
lldbg("sp: %08x\n", sp);
|
||||
}
|
||||
|
||||
/* Show user stack info */
|
||||
|
||||
lldbg("User stack:\n");
|
||||
lldbg(" base: %08x\n", ustackbase);
|
||||
lldbg(" size: %08x\n", ustacksize);
|
||||
#else
|
||||
lldbg("sp: %08x\n", sp);
|
||||
lldbg("stack base: %08x\n", ustackbase);
|
||||
lldbg("stack size: %08x\n", ustacksize);
|
||||
#endif
|
||||
|
||||
/* Dump the user stack if the stack pointer lies within the allocated user
|
||||
* stack memory.
|
||||
*/
|
||||
|
||||
if (sp > ustackbase || sp <= ustackbase - ustacksize)
|
||||
{
|
||||
#if !defined(CONFIG_ARCH_INTERRUPTSTACK) || CONFIG_ARCH_INTERRUPTSTACK < 4
|
||||
lldbg("ERROR: Stack pointer is not within allocated stack\n");
|
||||
#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
up_stackdump(sp, ustackbase);
|
||||
}
|
||||
|
||||
/* Then dump the registers (if available) */
|
||||
|
||||
up_registerdump();
|
||||
}
|
||||
#else
|
||||
# define up_dumpstate()
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
@@ -201,7 +282,7 @@ void up_assert(const ubyte *filename, int lineno)
|
||||
lldbg("Assertion failed at file:%s line: %d\n",
|
||||
filename, lineno);
|
||||
#endif
|
||||
up_stackdump();
|
||||
up_dumpstate();
|
||||
_up_assert(EXIT_FAILURE);
|
||||
}
|
||||
|
||||
@@ -223,6 +304,6 @@ void up_assert_code(const ubyte *filename, int lineno, int errorcode)
|
||||
lldbg("Assertion failed at file:%s line: %d error code: %d\n",
|
||||
filename, lineno, errorcode);
|
||||
#endif
|
||||
up_stackdump();
|
||||
up_dumpstate();
|
||||
_up_assert(errorcode);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_blocktask.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_blocktask.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -45,23 +45,23 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_block_task
|
||||
*
|
||||
* Description:
|
||||
@@ -79,7 +79,7 @@
|
||||
* task_state: Specifies which waiting task list should be
|
||||
* hold the blocked task TCB.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_block_task(_TCB *tcb, tstate_t task_state)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_copystate.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_copystate.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,36 +31,38 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_undefinedinsn
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* A little faster than most memcpy's */
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_createstack.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_createstack.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,34 +31,37 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sched.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include <nuttx/kmalloc.h>
|
||||
#include <nuttx/arch.h>
|
||||
|
||||
#include "up_arch.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Global Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_create_stack
|
||||
*
|
||||
* Description:
|
||||
@@ -77,7 +80,7 @@
|
||||
* tcb: The TCB of new task
|
||||
* stack_size: The requested stack size. At least this much
|
||||
* must be allocated.
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
STATUS up_create_stack(_TCB *tcb, size_t stack_size)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_dataabort.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_dataabort.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -44,9 +44,9 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* Output debug info if stack dump is selected -- even if
|
||||
* debug is not selected.
|
||||
@@ -57,21 +57,21 @@
|
||||
# define lldbg lib_lowprintf
|
||||
#endif
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_dataabort
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_dataabort(uint32 *regs)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_doirq.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_doirq.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -46,25 +46,25 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
void up_doirq(int irq, uint32* regs)
|
||||
{
|
||||
|
||||
@@ -148,7 +148,7 @@ void _exit(int status)
|
||||
|
||||
(void)irqsave();
|
||||
|
||||
slldbg("TCB=%p exitting\n", tcb);
|
||||
slldbg("TCB=%p exitting\n", g_readytorun.head);
|
||||
|
||||
#if defined(CONFIG_DUMP_ON_EXIT) && defined(CONFIG_DEBUG)
|
||||
slldbg("Other tasks:\n");
|
||||
@@ -164,7 +164,6 @@ void _exit(int status)
|
||||
*/
|
||||
|
||||
tcb = (_TCB*)g_readytorun.head;
|
||||
slldbg("New Active Task TCB=%p\n", tcb);
|
||||
|
||||
/* Then switch contexts */
|
||||
|
||||
|
||||
@@ -284,7 +284,7 @@ __start:
|
||||
#endif
|
||||
/* Perform early serial initialization */
|
||||
|
||||
#if defined(CONFIG_DEV_CONSOLE) && CONFIG_NFILE_DESCRIPTORS > 0
|
||||
#ifdef CONFIG_USE_EARLYSERIALINIT
|
||||
bl up_earlyserialinit
|
||||
#endif
|
||||
|
||||
@@ -297,7 +297,7 @@ __start:
|
||||
* _sbss is the start of the BSS region (see ld.script)
|
||||
* _ebss is the end of the BSS regsion (see ld.script)
|
||||
* The idle task stack starts at the end of BSS and is
|
||||
* of size CONFIG_PROC_STACK_SIZE. The heap continues
|
||||
* of size CONFIG_IDLETHREAD_STACKSIZE. The heap continues
|
||||
* from there until the end of memory. See g_heapbase
|
||||
* below.
|
||||
*/
|
||||
@@ -305,7 +305,7 @@ __start:
|
||||
.Linitparms:
|
||||
.long _sbss
|
||||
.long _ebss
|
||||
.long _ebss+CONFIG_PROC_STACK_SIZE-4
|
||||
.long _ebss+CONFIG_IDLETHREAD_STACKSIZE-4
|
||||
.size .Lvstart, .-.Lvstart
|
||||
|
||||
/* This global variable is unsigned long g_heapbase and is
|
||||
@@ -318,7 +318,7 @@ __start:
|
||||
.globl g_heapbase
|
||||
.type g_heapbase, object
|
||||
g_heapbase:
|
||||
.long _ebss+CONFIG_PROC_STACK_SIZE
|
||||
.long _ebss+CONFIG_IDLETHREAD_STACKSIZE
|
||||
.size g_heapbase, .-g_heapbase
|
||||
.end
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_idle.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_idle.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,34 +31,34 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
#include <nuttx/arch.h>
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_idle
|
||||
*
|
||||
* Description:
|
||||
@@ -71,7 +71,7 @@
|
||||
* this is where power management operations might be
|
||||
* performed.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_idle(void)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/****************************************************************************
|
||||
* common/up_initialize.c
|
||||
* arch/arm/src/common/up_initialize.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -38,10 +38,13 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include <nuttx/arch.h>
|
||||
#include <nuttx/fs.h>
|
||||
|
||||
#include "up_arch.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
@@ -135,10 +138,19 @@ void up_initialize(void)
|
||||
|
||||
/* Initialize the serial device driver */
|
||||
|
||||
#ifdef CONFIG_USE_SERIALDRIVER
|
||||
up_serialinit();
|
||||
#elif defined(CONFIG_DEV_LOWCONSOLE)
|
||||
lowconsole_init();
|
||||
#endif
|
||||
|
||||
/* Initialize the netwok */
|
||||
|
||||
up_netinitialize();
|
||||
|
||||
/* Initializ USB */
|
||||
|
||||
up_usbinitialize();
|
||||
|
||||
up_ledon(LED_IRQSENABLED);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_initialstate.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_initialstate.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -44,23 +44,23 @@
|
||||
#include "up_internal.h"
|
||||
#include "up_arch.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_initial_state
|
||||
*
|
||||
* Description:
|
||||
@@ -72,7 +72,7 @@
|
||||
* and/or stack so that execution will begin at tcb->start
|
||||
* on the next context switch.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_initial_state(_TCB *tcb)
|
||||
{
|
||||
|
||||
@@ -55,6 +55,22 @@
|
||||
#undef CONFIG_SUPPRESS_UART_CONFIG /* DEFINED: Do not reconfig UART */
|
||||
#undef CONFIG_DUMP_ON_EXIT /* DEFINED: Dump task state on exit */
|
||||
|
||||
/* Determine which (if any) console driver to use */
|
||||
|
||||
#if CONFIG_NFILE_DESCRIPTORS == 0 || defined(CONFIG_DEV_LOWCONSOLE)
|
||||
# undef CONFIG_USE_SERIALDRIVER
|
||||
# undef CONFIG_USE_EARLYSERIALINIT
|
||||
#elif defined(CONFIG_DEV_CONSOLE) && CONFIG_NFILE_DESCRIPTORS > 0
|
||||
# define CONFIG_USE_SERIALDRIVER 1
|
||||
# define CONFIG_USE_EARLYSERIALINIT 1
|
||||
#endif
|
||||
|
||||
/* Check if an interrupt stack size is configured */
|
||||
|
||||
#ifndef CONFIG_ARCH_INTERRUPTSTACK
|
||||
# define CONFIG_ARCH_INTERRUPTSTACK 0
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Public Types
|
||||
****************************************************************************/
|
||||
@@ -82,13 +98,18 @@ extern uint32 *current_regs;
|
||||
*/
|
||||
|
||||
extern uint32 g_heapbase;
|
||||
|
||||
/* Address of the saved user stack pointer */
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
extern uint32 g_userstack;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/****************************************************************************
|
||||
* Inline Functions
|
||||
****************************************************************************/
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
@@ -110,12 +131,9 @@ extern void up_sigdeliver(void);
|
||||
extern void up_syscall(uint32 *regs);
|
||||
extern int up_timerisr(int irq, uint32 *regs);
|
||||
extern void up_undefinedinsn(uint32 *regs);
|
||||
|
||||
#ifdef CONFIG_DEBUG
|
||||
extern void up_lowputc(char ch);
|
||||
#else
|
||||
# define up_lowputc(ch)
|
||||
#endif
|
||||
extern void up_puts(const char *str);
|
||||
extern void up_lowputs(const char *str);
|
||||
|
||||
/* Defined in up_vectors.S */
|
||||
|
||||
@@ -137,6 +155,14 @@ extern void up_serialinit(void);
|
||||
# define up_serialinit()
|
||||
#endif
|
||||
|
||||
/* Defined in drivers/lowconsole.c */
|
||||
|
||||
#ifdef CONFIG_DEV_LOWCONSOLE
|
||||
extern void lowconsole_init(void);
|
||||
#else
|
||||
# define lowconsole_init()
|
||||
#endif
|
||||
|
||||
/* Defined in up_watchdog.c */
|
||||
|
||||
extern void up_wdtinit(void);
|
||||
@@ -168,6 +194,16 @@ extern void up_netinitialize(void);
|
||||
#else
|
||||
# define up_netinitialize()
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef CONFIG_USBDEV
|
||||
extern void up_usbinitialize(void);
|
||||
extern void up_usbuninitialize(void);
|
||||
#else
|
||||
# define up_usbinitialize()
|
||||
# define up_usbuninitialize()
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* __UP_INTERNAL_H */
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_interruptcontext.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_interruptcontext.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -43,24 +43,24 @@
|
||||
#include <nuttx/irq.h>
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Global Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_interrupt_context
|
||||
*
|
||||
* Description: Return TRUE is we are currently executing in
|
||||
* the interrupt handler context.
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
boolean up_interrupt_context(void)
|
||||
{
|
||||
|
||||
75
arch/arm/src/common/up_lowputs.c
Normal file
75
arch/arm/src/common/up_lowputs.c
Normal file
@@ -0,0 +1,75 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_lowputs.c
|
||||
*
|
||||
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "up_internal.h"
|
||||
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_lowputs
|
||||
*
|
||||
* Description:
|
||||
* This is a low-level helper function used to support debug.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void up_lowputs(const char *str)
|
||||
{
|
||||
while(*str)
|
||||
{
|
||||
up_lowputc(*str++);
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
/****************************************************************************
|
||||
* common/up_mdelay.c
|
||||
* arch/arm/src/common/up_mdelay.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
|
||||
@@ -105,10 +105,10 @@ __start:
|
||||
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_DEV_CONSOLE) && CONFIG_NFILE_DESCRIPTORS >0
|
||||
/* Perform early serial initialization */
|
||||
|
||||
mov fp, #0
|
||||
#ifdef CONFIG_USE_EARLYSERIALINIT
|
||||
bl up_earlyserialinit
|
||||
#endif
|
||||
|
||||
@@ -132,14 +132,14 @@ __start:
|
||||
* _sbss is the start of the BSS region (see ld.script)
|
||||
* _ebss is the end of the BSS regsion (see ld.script)
|
||||
* The idle task stack starts at the end of BSS and is
|
||||
* of size CONFIG_PROC_STACK_SIZE. The heap continues
|
||||
* of size CONFIG_IDLETHREAD_STACKSIZE. The heap continues
|
||||
* from there until the end of memory. See g_heapbase
|
||||
* below.
|
||||
*/
|
||||
|
||||
LC0: .long _sbss
|
||||
.long _ebss
|
||||
.long _ebss+CONFIG_PROC_STACK_SIZE-4
|
||||
.long _ebss+CONFIG_IDLETHREAD_STACKSIZE-4
|
||||
|
||||
#ifdef CONFIG_BOOT_FROM_FLASH
|
||||
LC2: .long _eronly /* Where .data defaults are stored in FLASH */
|
||||
@@ -158,7 +158,7 @@ LC2: .long _eronly /* Where .data defaults are stored in FLASH */
|
||||
.globl g_heapbase
|
||||
.type g_heapbase, object
|
||||
g_heapbase:
|
||||
.long _ebss+CONFIG_PROC_STACK_SIZE
|
||||
.long _ebss+CONFIG_IDLETHREAD_STACKSIZE
|
||||
.size g_heapbase, .-g_heapbase
|
||||
|
||||
.end
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_prefetchabort.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_prefetchabort.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -44,9 +44,9 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/* Output debug info if stack dump is selected -- even if
|
||||
* debug is not selected.
|
||||
@@ -57,21 +57,21 @@
|
||||
# define lldbg lib_lowprintf
|
||||
#endif
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_prefetchabort
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_prefetchabort(uint32 *regs)
|
||||
{
|
||||
|
||||
76
arch/arm/src/common/up_puts.c
Normal file
76
arch/arm/src/common/up_puts.c
Normal file
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_puts.c
|
||||
*
|
||||
* Copyright (C) 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
||||
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
||||
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
||||
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
||||
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
#include <nuttx/arch.h>
|
||||
|
||||
#include "up_internal.h"
|
||||
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Name: up_puts
|
||||
*
|
||||
* Description:
|
||||
* This is a low-level helper function used to support debug.
|
||||
*
|
||||
****************************************************************************/
|
||||
|
||||
void up_puts(const char *str)
|
||||
{
|
||||
while(*str)
|
||||
{
|
||||
up_putc(*str++);
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_releasepending.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_releasepending.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -45,23 +45,23 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_release_pending
|
||||
*
|
||||
* Description:
|
||||
@@ -70,7 +70,7 @@
|
||||
* context switch if a new task is placed at the head of
|
||||
* the ready to run list.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_release_pending(void)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_releasestack.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_releasestack.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -45,26 +45,26 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Global Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_release_stack
|
||||
*
|
||||
* Description:
|
||||
* A task has been stopped. Free all stack
|
||||
* related resources retained int the defunct TCB.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_release_stack(_TCB *dtcb)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_reprioritizertr.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_reprioritizertr.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,11 +31,11 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
#include <sys/types.h>
|
||||
@@ -45,23 +45,23 @@
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_reprioritize_rtr
|
||||
*
|
||||
* Description:
|
||||
@@ -79,7 +79,7 @@
|
||||
* tcb: The TCB of the task that has been reprioritized
|
||||
* priority: The new task priority
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_reprioritize_rtr(_TCB *tcb, ubyte priority)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* common/up_schedulesigaction.c
|
||||
*
|
||||
* Copyright (C) 2007 Gregory Nutt. All rights reserved.
|
||||
* Copyright (C) 2007, 2008 Gregory Nutt. All rights reserved.
|
||||
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -14,7 +14,7 @@
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
* 3. Neither the name Gregory Nutt nor the names of its contributors may be
|
||||
* 3. Neither the name NuttX nor the names of its contributors may be
|
||||
* used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
@@ -31,38 +31,43 @@
|
||||
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
* POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Included Files
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sched.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include <nuttx/arch.h>
|
||||
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
#include "up_arch.h"
|
||||
|
||||
/************************************************************
|
||||
#ifndef CONFIG_DISABLE_SIGNALS
|
||||
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_schedule_sigaction
|
||||
*
|
||||
* Description:
|
||||
@@ -93,7 +98,7 @@
|
||||
* currently executing task -- just call the signal
|
||||
* handler now.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_schedule_sigaction(_TCB *tcb, sig_deliver_t sigdeliver)
|
||||
{
|
||||
@@ -188,3 +193,5 @@ void up_schedule_sigaction(_TCB *tcb, sig_deliver_t sigdeliver)
|
||||
irqrestore(flags);
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* !CONFIG_DISABLE_SIGNALS */
|
||||
|
||||
@@ -38,15 +38,20 @@
|
||||
****************************************************************************/
|
||||
|
||||
#include <nuttx/config.h>
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sched.h>
|
||||
#include <debug.h>
|
||||
|
||||
#include <nuttx/irq.h>
|
||||
#include <nuttx/arch.h>
|
||||
|
||||
#include "os_internal.h"
|
||||
#include "up_internal.h"
|
||||
#include "up_arch.h"
|
||||
|
||||
#ifndef CONFIG_DISABLE_SIGNALS
|
||||
|
||||
/****************************************************************************
|
||||
* Definitions
|
||||
****************************************************************************/
|
||||
@@ -60,7 +65,7 @@
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
* Public Functions
|
||||
****************************************************************************/
|
||||
|
||||
/****************************************************************************
|
||||
@@ -135,3 +140,6 @@ void up_sigdeliver(void)
|
||||
up_fullcontextrestore(regs);
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif /* !CONFIG_DISABLE_SIGNALS */
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user