mirror of
https://github.com/apache/nuttx.git
synced 2025-12-12 22:05:54 +08:00
Compare commits
199 Commits
nuttx-3.14
...
nuttx-3.17
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
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 |
67
ChangeLog
67
ChangeLog
@@ -462,4 +462,69 @@
|
||||
* 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-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr>
|
||||
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<tr align="center" bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<h1><big><font color="#3c34ec"><i>NuttShell (NSH)</i></font></big></h1>
|
||||
<p>Last Updated: September 5, 2008</p>
|
||||
<p>Last Updated: October 15, 2008</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -67,6 +67,12 @@
|
||||
<a href="#environvars">1.6 Environment Variables</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><br></td>
|
||||
<td>
|
||||
<a href="#startupscript">1.7 NSH Start-Up Script</a>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td valign="top" width="22"><img height="20" width="20" src="favicon.ico"></td>
|
||||
@@ -470,6 +476,129 @@ fi
|
||||
</tr>
|
||||
</table></ul>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<td>
|
||||
<a name="startupscript"><h2>1.7 NSH Start-Up Scrip</h2></a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p>
|
||||
<b>NSH Start-Up Script</b>.
|
||||
NSH supports options to provide a start up script for NSH. In general
|
||||
this capability is enabled with <code>CONFIG_EXAMPLES_NSH_ROMFSETC</code>, but has
|
||||
several other related configuration options as described with the
|
||||
<a href="#nshconfiguration">NSH-specific configuration settings</a>.
|
||||
This capability also depends on:
|
||||
<ul>
|
||||
<li><code>CONFIG_DISABLE_MOUNTPOINT</code> not set
|
||||
<li><code>CONFIG_NFILE_DESCRIPTORS</code> < 4
|
||||
<li><code>CONFIG_FS_ROMFS</code> enabled
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<b>Default Start-Up Behavior</b>.
|
||||
The implementation that is provided is intended to provide great flexibility
|
||||
for the use of Start-Up files. This paragraph will discuss the general
|
||||
behavior when all of the configuration options are set to the default
|
||||
values.
|
||||
</p>
|
||||
<p>
|
||||
In this default case, enabling <code>CONFIG_EXAMPLES_NSH_ROMFSETC</code> will cause
|
||||
NSH to behave as follows at NSH startup time:
|
||||
<ul>
|
||||
<li>
|
||||
NSH will create a read-only RAM disk (a ROM disk), containing a tiny
|
||||
ROMFS filesystem containing the following:
|
||||
<ul><pre>
|
||||
`--init.d/
|
||||
`-- rcS
|
||||
</pre></ul>
|
||||
Where rcS is the NSH start-up script.
|
||||
</li>
|
||||
<li>
|
||||
NSH will then mount the ROMFS filesystem at <code>/etc</code>, resulting in:
|
||||
<ul><pre>
|
||||
|--dev/
|
||||
| `-- ram0
|
||||
`--etc/
|
||||
`--init.d/
|
||||
`-- rcS
|
||||
</pre></ul>
|
||||
</li>
|
||||
<li>
|
||||
By default, the contents of rcS script are:
|
||||
<ul><pre>
|
||||
# Create a RAMDISK and mount it at XXXRDMOUNTPOUNTXXX
|
||||
|
||||
mkrd -m 1 -s 512 1024
|
||||
mkfatfs /dev/ram1
|
||||
mount -t vfat /dev/ram1 /tmp
|
||||
</pre></ul>
|
||||
</li>
|
||||
<li>
|
||||
NSH will execute the script at <code>/etc/init.d/rcS</code> at start-up (before the
|
||||
first NSH prompt. After execution of the script, the root FS will look
|
||||
like:
|
||||
<ul><pre>
|
||||
|--dev/
|
||||
| |-- ram0
|
||||
| `-- ram1
|
||||
|--etc/
|
||||
| `--init.d/
|
||||
| `-- rcS
|
||||
`--tmp/
|
||||
</pre></ul>
|
||||
</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
<b>Modifying the ROMFS Image</b>.
|
||||
The contents of the <code>/etc</code> directory are retained in the file
|
||||
<code>examples/nsh/nsh_romfsimg.h</code>. In order to modify the start-up
|
||||
behavior, there are three things to study:
|
||||
<ol>
|
||||
<li>
|
||||
<b>Configuration Options.</b>
|
||||
The additional <code>CONFIG_EXAMPLES_NSH_ROMFSETC</code> configuration options
|
||||
discussed with the other <a href="#nshconfiguration">NSH-specific configuration settings</a>.
|
||||
</li>
|
||||
<li>
|
||||
<p>
|
||||
<b><code>mkromfsimg.sh</code> Script</b>.
|
||||
The script <code>examples/nsh/mkromfsimg.sh</code> creates <code>nsh_romfsimg.h</code>.
|
||||
It is not automatically executed. If you want to change the
|
||||
configuration settings associated with creating and mounting
|
||||
the <code>/tmp</code> directory, then it will be necessary to re-generate
|
||||
this header file using the <code>mkromfsimg.sh</code> script.
|
||||
</p>
|
||||
<p>
|
||||
The behavior of this script depends upon three things:
|
||||
<ul>
|
||||
<li>The configuration settings then installed configuration.
|
||||
<li>The <code>genromfs<code> tool (available from <a href="http://romfs.sourceforge.net">http://romfs.sourceforge.net</a>).
|
||||
<li>The file <code>examples/nsh/rcS.template</code>.
|
||||
</ul>
|
||||
</p>
|
||||
</li>
|
||||
<li>
|
||||
<b><code>rcS.template</code></b>.
|
||||
The file <code>examples/nsh/rcS.template</code> contains the general form
|
||||
of the <code>rcS</code> file; configurated values are plugged into this
|
||||
template file to produce the final <code>rcS</code> file.
|
||||
</li>
|
||||
</ol>
|
||||
</p>
|
||||
<p>
|
||||
All of the startup-behavior is contained in <code>rcS.template</code>. The
|
||||
role of <code>mkromfsimg.sh</code> is to (1) apply the specific configuration
|
||||
settings to <code>rcS.template</code> to create the final <code>rcS</code>, and (2) to
|
||||
generate the header file <code>nsh_romfsimg.h</code> containg the ROMFS
|
||||
file system image.
|
||||
</p>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<td>
|
||||
@@ -1485,7 +1614,7 @@ nsh>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>cd</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_ENVIRON</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0</td>
|
||||
<td>!<code>CONFIG_DISABLE_ENVIRON</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>cp</code></b></td>
|
||||
@@ -1530,11 +1659,11 @@ nsh>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>mkdir</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0</td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_WRITABLE</code><sup>4</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>mkfatfs</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_FAT</code></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_FAT</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>mkfifo</code></b></td>
|
||||
@@ -1542,11 +1671,11 @@ nsh>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>mkrd</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_FAT</code></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_WRITABLE</code><sup>4</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>mount</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_FAT</code></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_READABLE</code><sup>3</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>ping</code></b></td>
|
||||
@@ -1569,11 +1698,11 @@ nsh>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>rm</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0</td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_WRITABLE</code><sup>4</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>rmdir</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0</td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_WRITABLE</code><sup>4</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>set</code></b></td>
|
||||
@@ -1593,7 +1722,7 @@ nsh>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>umount</code></b></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_FAT</code></td>
|
||||
<td>!<code>CONFIG_DISABLE_MOUNTPOINT</code> && <code>CONFIG_NFILE_DESCRIPTORS</code> > 0 && <code>CONFIG_FS_READABLE</code><sup>3</sup></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><b><code>unset</code></b></td>
|
||||
@@ -1606,10 +1735,18 @@ nsh>
|
||||
</table></center>
|
||||
|
||||
<p><sup>1</sup><small>
|
||||
Because of hardware padding, the actual required packet size may be larger</small></p>
|
||||
<p><sup>2</sup><small>
|
||||
Because of hardware padding, the actual required packet size may be larger</small><br>
|
||||
<sup>2</sup><small>
|
||||
Special TFTP server start-up optionss will probably be required to permit
|
||||
creation of files for the correct operation of the <code>put</code> command.</small></p>
|
||||
creation of files for the correct operation of the <code>put</code> command.</small><br>
|
||||
<sup>3</sup><small>
|
||||
<code>CONFIG_FS_READABLE</code> is not a user configuration but is set automatically
|
||||
if any readable filesystem is selected. At present, this is either <code>CONFIG_FS_FAT</code>
|
||||
or <code>CONFIG_FS_ROMFS</code>.</small><br>
|
||||
<sup>4</sup><small>
|
||||
<code>CONFIG_FS_WRITABLE</code> is not a user configuration but is set automatically
|
||||
if any writable filesystem is selected. At present, this is only <code>CONFIG_FS_FAT</code>.</small><br>
|
||||
</p>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
@@ -1633,7 +1770,7 @@ nsh>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_FILEIOSIZE</code></b></td>
|
||||
<td>
|
||||
Size of a static I/O buffer used for file access (ignored if
|
||||
there is no filesystem).
|
||||
there is no filesystem). Default is 1024.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -1683,6 +1820,25 @@ nsh>
|
||||
where a minimal footprint is a necessity and background command execution is not.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_MMCSDMINOR</code></b></td>
|
||||
<td>
|
||||
If the architecture supports an MMC/SD slot and if the NSH
|
||||
architecture specific logic is present, this option will provide
|
||||
the MMC/SD minor number, i.e., the MMC/SD block driver will
|
||||
be registered as <code>/dev/mmcsd</code><i>N</i> where <i>N</i> is the minor number.
|
||||
Default is zero.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_ROMFSETC</code></b></td>
|
||||
<td>
|
||||
Mount a ROMFS filesystem at <code>/etc</code> and provide a startup script
|
||||
at <code>/etc/init.d/rcS</code>. The default startup script will mount
|
||||
a FAT FS RAMDISK at <code>/tmp</code> but the logic is
|
||||
<a href="#startupscript">easily extensible</a>.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_CONSOLE</code></b></td>
|
||||
<td>
|
||||
@@ -1712,6 +1868,7 @@ nsh>
|
||||
<th align="left" width="25%">Configuration</th>
|
||||
<th align="left">Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_IOBUFFER_SIZE</code></b></td>
|
||||
<td>
|
||||
Determines the size of the I/O buffer to use for sending/
|
||||
@@ -1752,6 +1909,76 @@ nsh>
|
||||
</tr>
|
||||
</table></center>
|
||||
|
||||
<p>
|
||||
If <code>CONFIG_EXAMPLES_NSH_ROMFSETC</code> is selected, then the following additional
|
||||
configuration setting apply:
|
||||
</p>
|
||||
|
||||
<center><table width="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<th align="left" width="25%">Configuration</th>
|
||||
<th align="left">Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_ROMFSMOUNTPT</code></b></td>
|
||||
<td>
|
||||
The default mountpoint for the ROMFS volume is <code>"/etc"</code>, but that
|
||||
can be changed with this setting. This must be a absolute path
|
||||
beginning with '<code>/</code>' and enclosed in quotes.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_INITSCRIPT</code></b></td>
|
||||
<td>
|
||||
This is the relative path to the startup script within the mountpoint.
|
||||
The default is <code>"init.d/rcS"</code>. This is a relative path and must not
|
||||
start with '<code>/</code>' but must be enclosed in quotes.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_ROMFSDEVNO</code></b></td>
|
||||
<td>
|
||||
This is the minor number of the ROMFS block device. The default is
|
||||
'<code>0</code>' corresponding to <code>/dev/ram0</code>.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_ROMFSSECTSIZE</code></b></td>
|
||||
<td>
|
||||
This is the sector size to use with the ROMFS volume. Since the
|
||||
default volume is very small, this defaults to 64 but should be
|
||||
increased if the ROMFS volume were to be become large. Any value
|
||||
selected must be a power of 2.
|
||||
</td>
|
||||
</tr>
|
||||
</table></center>
|
||||
|
||||
<p>
|
||||
When the default <code>rcS</code> file used when <code>CONFIG_EXAMPLES_NSH_ROMFSETC</code> is
|
||||
selected, it will mount a FAT FS under <code>/tmp</code>. The following selections
|
||||
describe that FAT FS.
|
||||
</p>
|
||||
|
||||
<center><table width="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<th align="left" width="25%">Configuration</th>
|
||||
<th align="left">Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_FATDEVNO</code></b></td>
|
||||
<td>
|
||||
This is the minor number of the FAT FS block device. The default is
|
||||
'<code>1</code>' corresponding to <code>/dev/ram1</code>.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td valign="top"><b><code>CONFIG_EXAMPLES_NSH_FATSECTSIZE</code></b></td>
|
||||
<td>
|
||||
This is the sector size use with the FAT FS. Default is 512.
|
||||
</td>
|
||||
</tr>
|
||||
</table></center>
|
||||
|
||||
<table width ="100%">
|
||||
<tr bgcolor="#e4e4e4">
|
||||
<td>
|
||||
@@ -1777,13 +2004,22 @@ nsh>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_DISABLEBG</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_DISABLESCRIPT</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_DRIPADDR</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_FATDEVNO</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_FATMOUNTPT</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_FATNSECTORS</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_FATSECTSIZE</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_FILEIOSIZE</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_INITSCRIPT</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_IOBUFFER_SIZE</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_IPADDR</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_LINELEN</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_NESTDEPTH</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_NETMASK</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_NOMAC</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_ROMFSDEVNO</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_ROMFSETC</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_ROMFSMOUNTPT</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_ROMFSSECTSIZE</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_STACKSIZE</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_STRERROR</code></a></li>
|
||||
<li><a href="#nshconfiguration"><code>CONFIG_EXAMPLES_NSH_TELNET</code></a></li>
|
||||
@@ -1794,11 +2030,12 @@ nsh>
|
||||
<li><a href="#currentwd">Current working directory</a></li>
|
||||
<li><a href="#cmdecho"><code>echo</code></a></li>
|
||||
<li><a href="#environvars">Environment Variables</a></li>
|
||||
<li><a href="#startupscript"><code>/etc/init.d/rcS</code></a>
|
||||
</ul></td>
|
||||
<td></ul>
|
||||
<li><a href="#cmdexec"><code>exec</code></a></li>
|
||||
<li><a href="#cmdexit"><code>exit</code></a></li>
|
||||
<li><a href="#cmdget"><code>get</code></a></li>
|
||||
</ul></td>
|
||||
<td></ul>
|
||||
<li><a href="#frontend">Greeting</a></li>
|
||||
<li><a href="#cmdhelp"><code>help</code></a></li>
|
||||
<li><a href="#conditional"><code>if-then[-else]-fi</code></a></li>
|
||||
@@ -1829,6 +2066,7 @@ nsh>
|
||||
<li><a href="#cmdsh"><code>sh</code></a></li>
|
||||
<li><a href="#cmdoverview">Simple commands</a></li>
|
||||
<li><a href="#cmdsleep"><code>sleep</code></a></li>
|
||||
<li><a href="#startupscript">start-up script</a>
|
||||
<li><a href="#cmdtest"><code>test</code></a></li>
|
||||
<li><a href="#cmdunmount"><code>umount</code></a></li>
|
||||
<li><a href="#cmdunset"><code>unset</code></a></li>
|
||||
|
||||
@@ -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: October 28, 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,59 +530,36 @@
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<p>
|
||||
The 26th release of NuttX (nuttx-0.3.14) is available for download
|
||||
<p><b>nuttx-0.3.17</b>.
|
||||
The 29th release of NuttX (nuttx-0.3.16) 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>.
|
||||
Unreleased changes after this release are available in CVS.
|
||||
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:
|
||||
<p><b>MMC/SD and USB Mass Storage Support</b>.
|
||||
The nuttx-0.3.17 release includes additional support for USB in NuttX.
|
||||
The following new features were added:
|
||||
<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>Added support for SPI-based MMC/SD cards (with an SPI driver for the NXP LPC214x).</li>
|
||||
<li>Added USB storage class device side driver (BBB)</li>
|
||||
<li>Added an example that demonstrates the USB storage class by exporting the SPI based MMC/SD card on the NXP LPC214x.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
New features were also added:
|
||||
<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>
|
||||
</ul>
|
||||
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).
|
||||
</p>
|
||||
<p><b>Bugs Fixed</b>
|
||||
Several important bugs were also fixed in the FAT file system, USB serial driver and
|
||||
NXP LPC214x USB controller driver (see the current <a href="#currentrelease">ChangeLog</a> for details).
|
||||
</p>
|
||||
<p>
|
||||
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.
|
||||
As usual, any feedback about bugs or suggestions for improvement would be greatly appreciated.
|
||||
</p>
|
||||
|
||||
@@ -598,11 +619,13 @@
|
||||
<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.
|
||||
The basic port includes successful booting, timer interrupts, serial console,
|
||||
USB driver, succesfully passing the OS test, and a NuttShell (NSH) configuration.
|
||||
Additional driver development is underway.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -624,7 +647,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>
|
||||
@@ -1037,35 +1062,34 @@ 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.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.
|
||||
|
||||
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.
|
||||
@@ -1089,11 +1113,11 @@ 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.18 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.1 2008-xx-xx <spudmonkey@racsa.co.cr>
|
||||
|
||||
* Support for m68k-elf and m68hc11 toolchain
|
||||
</pre></ul>
|
||||
|
||||
@@ -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: October 22, 2008</small></p>
|
||||
</center>
|
||||
|
||||
<center><h1>Table of Contents</h1></center>
|
||||
@@ -1334,8 +1334,15 @@ 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>
|
||||
<li><code>CONFIG_HAVE_LIBM</code>:
|
||||
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_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 +1522,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 +1637,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>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
15
Makefile
15
Makefile
@@ -201,6 +201,21 @@ 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_RAW_BINARY),y)
|
||||
@$(OBJCOPY) -O binary $(TOPDIR)/$@ $(TOPDIR)/$@.bin
|
||||
endif
|
||||
|
||||
depend:
|
||||
@for dir in $(MAKEDIRS) ; do \
|
||||
|
||||
110
ReleaseNotes
110
ReleaseNotes
@@ -569,4 +569,114 @@ 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).
|
||||
|
||||
At present USB device controller drivers are included for:
|
||||
|
||||
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.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
63
TODO
63
TODO
@@ -8,18 +8,18 @@ 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/)
|
||||
(0) ARM (arch/arm/)
|
||||
(1) ARM/C5471 (arch/arm/src/c5471/)
|
||||
(1) ARM/DM320 (arch/arm/src/dm320/)
|
||||
(2) ARM/LPC214x (arch/arm/src/lpc214x/)
|
||||
(5) ARM/LPC214x (arch/arm/src/lpc214x/)
|
||||
(4) pjrc-8052 / MCS51 (arch/pjrc-8051/)
|
||||
(7) z80/z8 (arch/z80/)
|
||||
(8) z16 (arch/z16/)
|
||||
@@ -204,11 +204,10 @@ 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). Race conditions are suspected (probably in the NXP LPC214x
|
||||
USB controller driver).
|
||||
Status: Open
|
||||
Priority: High
|
||||
|
||||
@@ -233,7 +232,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 +249,17 @@ 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
|
||||
|
||||
o Pascal Add-On (pcode/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -315,12 +325,6 @@ 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.
|
||||
Status: Open
|
||||
Priority: Medium
|
||||
|
||||
o ARM/C5471 (arch/arm/src/c5471/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -340,16 +344,37 @@ 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). Race conditions are suspected (probably in the NXP LPC214x
|
||||
USB controller driver).
|
||||
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
|
||||
|
||||
o pjrc-8052 / MCS51 (arch/pjrc-8051/)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -83,6 +83,11 @@ 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)
|
||||
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_PROC_STACK_SIZE;
|
||||
}
|
||||
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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_doirq(int irq, uint32* regs)
|
||||
{
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
|
||||
|
||||
@@ -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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* 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
|
||||
****************************************************************************/
|
||||
@@ -135,3 +140,6 @@ void up_sigdeliver(void)
|
||||
up_fullcontextrestore(regs);
|
||||
#endif
|
||||
}
|
||||
|
||||
#endif /* !CONFIG_DISABLE_SIGNALS */
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_syscall.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_syscall.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,23 +57,23 @@
|
||||
# define lldbg lib_lowprintf
|
||||
#endif
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* vectors
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_syscall
|
||||
*
|
||||
* Description:
|
||||
@@ -84,7 +84,7 @@
|
||||
* the return address saved in the xcp and decoding
|
||||
* the SWI instruction
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_syscall(uint32 *regs)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/****************************************************************************
|
||||
* common/up_udelay.c
|
||||
* arch/arm/src/common/up_udelay.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.
|
||||
*
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_unblocktask.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_unblocktask.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,23 +46,23 @@
|
||||
#include "clock_internal.h"
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Definitions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Data
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Public Funtions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_unblock_task
|
||||
*
|
||||
* Description:
|
||||
@@ -76,7 +76,7 @@
|
||||
* the ready-to-run list and, if it is the highest priority
|
||||
* ready to run taks, executed.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_unblock_task(_TCB *tcb)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_undefinedinsn.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_undefinedinsn.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 Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_undefinedinsn
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
void up_undefinedinsn(uint32 *regs)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************
|
||||
* common/up_usestack.c
|
||||
/****************************************************************************
|
||||
* arch/arm/src/common/up_usestack.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,19 +45,19 @@
|
||||
#include <nuttx/arch.h>
|
||||
#include "up_internal.h"
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Types
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Private Function Prototypes
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Global Functions
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
/************************************************************
|
||||
/****************************************************************************
|
||||
* Name: up_use_stack
|
||||
*
|
||||
* Description:
|
||||
@@ -76,7 +76,7 @@
|
||||
* tcb: The TCB of new task
|
||||
* stack_size: The allocated stack size.
|
||||
*
|
||||
************************************************************/
|
||||
****************************************************************************/
|
||||
|
||||
STATUS up_use_stack(_TCB *tcb, void *stack, size_t stack_size)
|
||||
{
|
||||
|
||||
83
arch/arm/src/common/up_vectoraddrexcptn.S
Normal file
83
arch/arm/src/common/up_vectoraddrexcptn.S
Normal file
@@ -0,0 +1,83 @@
|
||||
/************************************************************************************
|
||||
* arch/arm/src/common/up_vectoraddrexceptn.S
|
||||
*
|
||||
* 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 <nuttx/irq.h>
|
||||
#include "up_arch.h"
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/************************************************************************************
|
||||
* Global Data
|
||||
************************************************************************************/
|
||||
|
||||
/************************************************************************************
|
||||
* Assembly Macros
|
||||
************************************************************************************/
|
||||
|
||||
/************************************************************************************
|
||||
* Private Functions
|
||||
************************************************************************************/
|
||||
|
||||
.text
|
||||
|
||||
/************************************************************************************
|
||||
* Public Functions
|
||||
************************************************************************************/
|
||||
|
||||
.text
|
||||
|
||||
/************************************************************************************
|
||||
* Name: up_vectoraddrexcption
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen. This exception handler is in a separate file from other
|
||||
* vector handlers because some processors (e.g., lpc2148) do not support the
|
||||
* the Address Exception vector.
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectoraddrexcptn
|
||||
.type up_vectoraddrexcptn, %function
|
||||
up_vectoraddrexcptn:
|
||||
b up_vectoraddrexcptn
|
||||
.size up_vectoaddrexcptn, . - up_vectoraddrexcptn
|
||||
.end
|
||||
@@ -1,7 +1,7 @@
|
||||
/********************************************************************
|
||||
* common/up_vectors.S
|
||||
/************************************************************************************
|
||||
* arch/arm/src/common/up_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
|
||||
@@ -128,7 +128,15 @@ up_vectorirq:
|
||||
|
||||
mov fp, #0 /* Init frame pointer */
|
||||
mov r0, sp /* Get r0=xcp */
|
||||
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
ldr sp, .Lirqstackbase /* SP = interrupt stack base */
|
||||
str r0, [sp] /* Save the user stack pointer */
|
||||
bl up_decodeirq /* Call the handler */
|
||||
ldr sp, [sp] /* Restore the user stack pointer */
|
||||
#else
|
||||
bl up_decodeirq /* Call the handler */
|
||||
#endif
|
||||
|
||||
/* Restore the CPSR, SVC modr registers and return */
|
||||
.Lnoirqset:
|
||||
@@ -138,16 +146,19 @@ up_vectorirq:
|
||||
|
||||
.Lirqtmp:
|
||||
.word g_irqtmp
|
||||
#if CONFIG_ARCH_INTERRUPTSTACK > 3
|
||||
.Lirqstackbase:
|
||||
.word up_stackbase
|
||||
#endif
|
||||
.size up_vectorirq, . - up_vectorirq
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Function: up_vectorswi
|
||||
*
|
||||
* Description:
|
||||
* SWI interrupt. We enter the SWI in SVC mode
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorswi
|
||||
.type up_vectorswi, %function
|
||||
@@ -188,7 +199,7 @@ up_vectorswi:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectordata
|
||||
*
|
||||
* Description:
|
||||
@@ -196,7 +207,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
|
||||
@@ -257,13 +268,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
|
||||
@@ -324,14 +335,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
|
||||
@@ -391,12 +402,12 @@ up_vectorundefinsn:
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
/************************************************************************************
|
||||
* Name: up_vectorfiq
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectorfiq
|
||||
.type up_vectorfiq, %function
|
||||
@@ -404,19 +415,25 @@ up_vectorfiq:
|
||||
subs pc, lr, #4
|
||||
.size up_vectofiq, . - up_vectorfiq
|
||||
|
||||
.align 5
|
||||
|
||||
/********************************************************************
|
||||
* Name: up_vectoraddrexcption
|
||||
/************************************************************************************
|
||||
* Name: up_interruptstack/g_userstack
|
||||
*
|
||||
* Description:
|
||||
* Shouldn't happen
|
||||
*
|
||||
********************************************************************/
|
||||
************************************************************************************/
|
||||
|
||||
.globl up_vectoraddrexcptn
|
||||
.type up_vectoraddrexcptn, %function
|
||||
up_vectoraddrexcptn:
|
||||
b up_vectoraddrexcptn
|
||||
.size up_vectoaddrexcptn, . - up_vectoraddrexcptn
|
||||
#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
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
HEAD_ASRC = up_head.S
|
||||
|
||||
CMN_ASRCS = up_cache.S up_fullcontextrestore.S up_saveusercontext.S \
|
||||
up_vectors.S up_vectortab.S
|
||||
up_vectors.S up_vectoraddrexcptn.S up_vectortab.S
|
||||
CMN_CSRCS = up_assert.c up_blocktask.c up_copystate.c up_createstack.c \
|
||||
up_dataabort.c up_mdelay.c up_udelay.c up_exit.c up_idle.c \
|
||||
up_initialize.c up_initialstate.c up_interruptcontext.c \
|
||||
@@ -49,3 +49,6 @@ CHIP_ASRCS = dm320_lowputc.S dm320_restart.S
|
||||
CHIP_CSRCS = dm320_allocateheap.c dm320_boot.c dm320_decodeirq.c \
|
||||
dm320_irq.c dm320_serial.c dm320_timerisr.c
|
||||
|
||||
ifeq ($(CONFIG_USBDEV),y)
|
||||
CHIP_CSRCS += dm320_usbdev.c
|
||||
endif
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************************************
|
||||
* dm320/chip.h
|
||||
* arch/arm/src/dm320/chip.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.
|
||||
*
|
||||
@@ -41,10 +41,14 @@
|
||||
************************************************************************************/
|
||||
|
||||
#include "dm320_memorymap.h"
|
||||
#include "dm320_clkc.h"
|
||||
#include "dm320_ahb.h"
|
||||
#include "dm320_busc.h"
|
||||
#include "dm320_uart.h"
|
||||
#include "dm320_timer.h"
|
||||
#include "dm320_intc.h"
|
||||
#include "dm320_gio.h"
|
||||
#include "dm320_usb.h"
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
|
||||
63
arch/arm/src/dm320/dm320_ahb.h
Normal file
63
arch/arm/src/dm320/dm320_ahb.h
Normal file
@@ -0,0 +1,63 @@
|
||||
/************************************************************************************
|
||||
* dm320/dm320_uart.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.
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_DM320_DM320_AHB_H
|
||||
#define __ARCH_ARM_SRC_DM320_DM320_AHB_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
# include <sys/types.h>
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/* AHB Bus Controller (AHBBUSC) Registers *******************************************/
|
||||
|
||||
#define DM320_AHB_SDRAMSA (DM320_AHB_VADDR+0x0f00) /* SDRAM start address */
|
||||
#define DM320_AHB_SDRAMEA (DM320_AHB_VADDR+0x0f04) /* SDRAM end address */
|
||||
#define DM320_AHB_BUSCONTROL (DM320_AHB_VADDR+0x0f08) /* Bus endianess control */
|
||||
#define DM320_AHB_RSV1 (DM320_AHB_VADDR+0x0f0c) /* Reserved */
|
||||
#define DM320_AHB_USBCTL (DM320_AHB_VADDR+0x0f10) /* USB control register (ES1.1) */
|
||||
|
||||
/************************************************************************************
|
||||
* Inline Functions
|
||||
************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_DM320_DM320_AHB_H */
|
||||
62
arch/arm/src/dm320/dm320_busc.h
Normal file
62
arch/arm/src/dm320/dm320_busc.h
Normal file
@@ -0,0 +1,62 @@
|
||||
/************************************************************************************
|
||||
* dm320/dm320_busc.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.
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_DM320_DM320_BUSC_H
|
||||
#define __ARCH_ARM_SRC_DM320_DM320_BUSC_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
# include <sys/types.h>
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/* Bus Controller Register Map (BUSC) ***********************************************/
|
||||
|
||||
#define DM320_BUSC_ECR (DM320_BUSC_REGISTER_BASE+0x0000) /* Endian Conversion Register */
|
||||
#define DM320_BUSC_EBYTER (DM320_BUSC_REGISTER_BASE+0x0002) /* Endian Byte Reverse Register */
|
||||
#define DM320_BUSC_EBITR (DM320_BUSC_REGISTER_BASE+0x0004) /* Endian Bit Reverse Register */
|
||||
#define DM320_BUSC_REVR (DM320_BUSC_REGISTER_BASE+0x0006) /* Device Revision Register */
|
||||
|
||||
/************************************************************************************
|
||||
* Inline Functions
|
||||
************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_DM320_DM320_BUSC_H */
|
||||
85
arch/arm/src/dm320/dm320_clkc.h
Normal file
85
arch/arm/src/dm320/dm320_clkc.h
Normal file
@@ -0,0 +1,85 @@
|
||||
/************************************************************************************
|
||||
* dm320/dm320_clkc.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.
|
||||
*
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ARCH_ARM_SRC_DM320_DM320_CLKC_H
|
||||
#define __ARCH_ARM_SRC_DM320_DM320_CLKC_H
|
||||
|
||||
/************************************************************************************
|
||||
* Included Files
|
||||
************************************************************************************/
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
# include <sys/types.h>
|
||||
#endif
|
||||
|
||||
/************************************************************************************
|
||||
* Definitions
|
||||
************************************************************************************/
|
||||
|
||||
/* Clock Controller Register Map (CLKC) *********************************************/
|
||||
|
||||
#define DM320_CLKC_PLLA (DM320_CLKC_REGISTER_BASE+0x0000) /* PLLA Configuration */
|
||||
#define DM320_CLKC_PLLB (DM320_CLKC_REGISTER_BASE+0x0002) /* PLLB Configuration */
|
||||
#define DM320_CLKC_SEL0 (DM320_CLKC_REGISTER_BASE+0x0004) /* Input Clock Source Selection #0 */
|
||||
#define DM320_CLKC_SEL1 (DM320_CLKC_REGISTER_BASE+0x0006) /* Input Slock Source Selection #1 */
|
||||
#define DM320_CLKC_SEL2 (DM320_CLKC_REGISTER_BASE+0x0008) /* Input Clock Source Selection #2 */
|
||||
#define DM320_CLKC_DIV0 (DM320_CLKC_REGISTER_BASE+0x000a) /* Clock Divisor Settings #0 */
|
||||
#define DM320_CLKC_DIV1 (DM320_CLKC_REGISTER_BASE+0x000c) /* Clock Divisor Settings #1 */
|
||||
#define DM320_CLKC_DIV2 (DM320_CLKC_REGISTER_BASE+0x000e) /* Clock Divisor Settings #2 */
|
||||
#define DM320_CLKC_DIV3 (DM320_CLKC_REGISTER_BASE+0x0010) /* Clock Divisor Settings #3 */
|
||||
#define DM320_CLKC_DIV4 (DM320_CLKC_REGISTER_BASE+0x0012) /* Clock Divisor Settings #4 */
|
||||
#define DM320_CLKC_BYP (DM320_CLKC_REGISTER_BASE+0x0014) /* Bypass Control */
|
||||
#define DM320_CLKC_INV (DM320_CLKC_REGISTER_BASE+0x0016) /* Inverse Control */
|
||||
#define DM320_CLKC_MOD0 (DM320_CLKC_REGISTER_BASE+0x0018) /* Module Clock Enables #0 */
|
||||
#define DM320_CLKC_MOD1 (DM320_CLKC_REGISTER_BASE+0x001a) /* Module ClockEnables #1 */
|
||||
#define DM320_CLKC_MOD2 (DM320_CLKC_REGISTER_BASE+0x001c) /* Module ClockEnables #1 */
|
||||
#define DM320_CLKC_LPCTL0 (DM320_CLKC_REGISTER_BASE+0x001e) /* Low Power Control #0 */
|
||||
#define DM320_CLKC_LPCTL1 (DM320_CLKC_REGISTER_BASE+0x0020) /* Low Power Control #1 */
|
||||
#define DM320_CLKC_OSEL (DM320_CLKC_REGISTER_BASE+0x0022) /* Output Clock Selector */
|
||||
#define DM320_CLKC_O0DIV (DM320_CLKC_REGISTER_BASE+0x0024) /* Output Clock #0 Divider */
|
||||
#define DM320_CLKC_O1DIV (DM320_CLKC_REGISTER_BASE+0x0026) /* Output Clock #1 Divider */
|
||||
#define DM320_CLKC_O2DIV (DM320_CLKC_REGISTER_BASE+0x0028) /* Output Clock #2 Divider */
|
||||
#define DM320_CLKC_PWM0C (DM320_CLKC_REGISTER_BASE+0x002a) /* PWM #0 Cycle Count */
|
||||
#define DM320_CLKC_PWM0H (DM320_CLKC_REGISTER_BASE+0x002c) /* PWM #0 High Period */
|
||||
#define DM320_CLKC_PWM1C (DM320_CLKC_REGISTER_BASE+0x002e) /* PWM #1 Cycle Count */
|
||||
#define DM320_CLKC_PWM1H (DM320_CLKC_REGISTER_BASE+0x0030) /* PWM #1 Cycle Period */
|
||||
#define DM320_CLKC_TEST0 (DM320_CLKC_REGISTER_BASE+0x08FE) /* Test #0 */
|
||||
#define DM320_CLKC_TEST1 (DM320_CLKC_REGISTER_BASE+0x08FE) /* Test #1 */
|
||||
|
||||
/************************************************************************************
|
||||
* Inline Functions
|
||||
************************************************************************************/
|
||||
|
||||
#endif /* __ARCH_ARM_SRC_DM320_DM320_CLKC_H */
|
||||
@@ -1,7 +1,7 @@
|
||||
/************************************************************************************
|
||||
* dm320/dm320_intc.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.
|
||||
*
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user