diff --git a/ChangeLog b/ChangeLog index 3ceb813c5e..eeca57d398 100644 --- a/ChangeLog +++ b/ChangeLog @@ -479,20 +479,24 @@ succesfully passing the examples/ostest, and a NuttShell (NSH) configuration. * ARM architectures now support drivers/lowconsole.c -0.3.16 2008-xx-xx Gregory Nutt +0.3.16 2008-10-10 Gregory Nutt * Added header files defining a common USB device controller architecture - * Added USB device side driver for the LPC214x (untested at initial checkin) - * Correct the frequency of system timer interrupts (off by 20x in nuttx-0.3.15) + * 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). - * Basic LPC214x USB device side driver basically functional (but probably still buggy) - * Initial USB serial class device side driver check in (not well tested at initial checkin) - * Add LPC214x USB serial configuration; Add examples/usbserial test (still a work in progress) - * Added USB device side driver for the DM320 (untested at initial checkin) - * Fixed an error in a previous (post 0.3.15) check-in that broke the LPC214x system timer. - * Fixed serial drive 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. - + * 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-xx-xx Gregory Nutt diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html index 7445634d04..c88174735a 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -8,7 +8,7 @@

NuttX RTOS

-

Last Updated: October 9, 2008

+

Last Updated: October 10, 2008

@@ -443,6 +443,38 @@
  • Networking utilities (DHCP, SMTP, TELNET, TFTP, HTTP)
  • + + + + + USB Device Support + + + + +
    + +

    +

  • Gadget-like architecture for USB device controller drivers and device-dependent USB class drivers.
  • +

    + + + +
    + +

    +

  • USB device controller drivers available for the NXP LPC214x and TI DM320.
  • +

    + + + +
    + +

    +

  • Device-dependent USB class drivers available for USB serial.
  • +

    + +

    @@ -493,38 +525,63 @@ -

    - The 27th release of NuttX (nuttx-0.3.15) is available for download +

    nuttx-0.3.16. + The 28th release of NuttX (nuttx-0.3.16) is available for download from the SourceForge website. The change log associated with the release is available here. Unreleased changes after this release are available in CVS. These unreleased changes are listed here.

    +

    USB Support. + The nuttx-0.3.16 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. +

    - The nuttx-0.3.15 release includes some new features: + At present USB device controller drivers are included for:

      -
    • ROMFS -
        -
      • - Adds support for the ROMFS filesystem -
      • -
      • R - ROMFS supports mmap() to provide eXecute In Place (XIP) capability -
      • -
      • - The NuttShell (NSH) can be configured to use ROMFS to provide a tiny read-only - filesystem with a startup script in /etc. -
      • -
    • -
    • NXP LPC2148 -
        -
      • - The basic port of the NXP LPC2148 on the mcu123.com board was completed. - That basic port includes successful booting, timer interrupts, serial console, - succesfully passing the OS test, and a NuttShell (NSH) configuration. -
      • -
    • +
    • + 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. + 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). +
    • +
    +

    +

    Bugs Fixed. + 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. +

    @@ -592,7 +649,7 @@

    STATUS: The basic port includes successful booting, timer interrupts, serial console, - succesfully passing the OS test, and a NuttShell (NSH) configuration. + USB driver, succesfully passing the OS test, and a NuttShell (NSH) configuration. Additional driver development is underway.

    @@ -615,7 +672,9 @@

    STATUS: - This port is complete and verified. + The basic port (timer interrupts, serial ports, 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.

    @@ -1028,24 +1087,26 @@ Other memory:
      -nuttx-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 +nuttx-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. -pascal-0.1.2 2008-02-10 Gregory Nutt +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. @@ -1069,20 +1130,7 @@ buildroot-0.1.0 2007-03-09 <spudmonkey@racsa.co.cr>
        -nuttx-0.3.16 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> - * Added header files defining a common USB device controller architecture - * Added USB device side driver for the LPC214x (untested at initial checkin) - * Correct the frequency of system timer interrupts (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). - * Basic LPC214x USB device side driver basically functional (but probably still buggy) - * Initial USB serial class device side driver check in (not well tested at initial checkin) - * Add LPC214x USB serial configuration; Add examples/usbserial test (still a work in progress) - * Added USB device side driver for the DM320 (untested at initial checkin) - * Fixed an error in a previous (post 0.3.15) check-in that broke the LPC214x system timer. - * Fixed serial drive 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. +nuttx-0.3.17 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> pascal-0.1.3 2008-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> diff --git a/ReleaseNotes b/ReleaseNotes index 3e94ae65e2..331f63ff33 100644 --- a/ReleaseNotes +++ b/ReleaseNotes @@ -587,6 +587,45 @@ 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. diff --git a/TODO b/TODO index 31b79278e6..fc9cfff035 100644 --- a/TODO +++ b/TODO @@ -336,6 +336,10 @@ 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/) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^