diff --git a/ChangeLog b/ChangeLog
index c4e0f0c4372..73ac116ccd6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -913,7 +913,7 @@
LCD driver and NX bringup on the eval board's display and MicroSD support. An SPI
driver was included in the 0.4.12 release, but is not yet tested.
-0.4.13 2009-xx-xx Gregory Nutt nuttx-0.4.12.
- This 44th release of NuttX was made on October 17, 2009 and is available for download from the
+ This 45th release of NuttX was made on November 4, 2009 and 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.
- This release adds basic support for the STMicro STM32, Cortex-M3 MCU.
- The specific port is to the STMicro STM3210E-EVAL development board based around the STM32F103ZET6 MCU.
- Some highlights of this port:
+ The release extends the support for the STMicro STM32 microcontroller.
+ Minimul support for the STM3210E-EVAL development board based around the STM32F103ZET6
+ MCU was released in NuttX-0.4.12.
+ This release adds:
-
- It is planned to extend this basic STM32 port for the 0.4.13 NuttX release. - Additional functionality needed for complete STM32 support includes: - USB device driver, LCD driver and NX bringup on the development board's display and MicroSD support. - An SPI driver and a DMA support was included in this 0.4.12 release, but is not yet tested. + This release also corrects some important bugs in the early STM32 release: +
+
+ DMA and external memory support are included in the 0.4.13 release, but is not yet tested. + This basic STM32 port will be further extended in the 0.4.14 NuttX release to include + MicroSD support and verified USB mass storage class support.
-0.4.12 2009-10-17 Gregory Nutt+nuttx-0.4.13 2009-11-04 Gregory Nutt <spudmonkey@racsa.co.cr> - * arch/arm/src/stm32 and configs/stm3210e-eval. Added basic support for the - STMicro STM32, Cortex-M3 MCU. The specific port is to the STMicro STM3210E-EVAL - development board based around the STM32F103ZET6 MCU. - * configs/stm3210e-eval/RIDE. Added a basic STMicro RIDE7 project that can be - used to perform basic STM32 board bring-up (due to RIDE7 size limitations, it - cannot be used for the full NuttX bring-up). - * configs/stm3210e-eval/ostest. The STM32 now passes the basic NuttX OS test - at examples/ostest. The rest should be a piece of cake. - * configs/stm3210e-eval/nsh. Added NuttShell (NSH) example. - * configs/stm3210e-eval/src/stm32102e-internal.h. Fix on-board LED GPIO definitions. - * arch/arm/src/stm32/src/stm32/stm32_dma.c. Added DMA channel support for the STM32 - * arch/arm/src/stm32/src/stm32/stm32_spi.c. Added a DMA-based SPI driver for the STM32. - * arch/arm/src/stm32/src/stm32/stm32_serial.c. Finished interrupt-drivent, - USART console driver. This makes NSH work perfectly. - * Things left to do for the STM32 deferred to the 0.4.13 release: USB device driver, - LCD driver and NX bringup on the eval board's display and MicroSD support. An SPI - driver was included in the 0.4.12 release, but is not yet tested. + * include/nuttx/mtd.h. Added a simple interface definition to support some + FLASH, EEPROM, NVRAM, etc. devices. + * driver/mtd/m25px.c. Added a driver for SPI based FLASH parts M25P64 and M25P128. + * configs/stm3210e-eval/usbserial. Add a USB serial configuration for the STM32. + Depends on the STM32 USB driver. + * arch/arm/src/cortexm3/up_switchcontext.S & up_svccall.c. Made an improvement + to context switching. There are two types of context switches: interrupt + context switches and background/user context switches. This change should + improve the performance of those background/user context switches by a factor + of about two. + * arch/arm/src/stm32/ - fix several typos in the serial logic. It turns out + that these typose don't make any difference as long as you use only one + serial port and all uarts are configured the same. But the typos are bugs + waiting to happen in any other configuration. + * arch/arm/src/stm32/ - You have to configure CTS/RTS function pins for USART + 2 and USART 3 even if you are not using flow control. + * arch/arm/src/stm32/stm32_usbdev.c - Added a USB device-side driver for the + STM32. NOTE: This is an early release of the USB driver. There is at least + one known issue. The examples/usbserial test only executes correctly under + certain conditions (see the full bug description in the TODO list). + * arch/arm/src/stm32/stm32_rcc.c - Fixed an error in clock initialization. + On some boards (none of mine), the HSE (high speed external clock) delay + loop times out if the optimization level is high. The STM32 then falls + back to the HSI (internal clock), and the system clock is too slow by a + factor of 11.1%. This was fixed by simply add the volatile storage class + to the timeout loop counter + * arch/arm/src/stm32/stm32_irq.c - Fixed a critical bug in the interrupt + control logic. The wrong register was being used for interrupts in a + certain range. Worked fine until you try to use an interrupt in that + range! pascal-0.1.2 2008-02-10 Gregory Nutt <spudmonkey@racsa.co.cr> @@ -1565,39 +1594,7 @@ buildroot-0.1.7 2009-06-26 <spudmonkey@racsa.co.cr> -nuttx-0.4.13 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> - - * include/nuttx/mtd.h. Added a simple interface definition to support some - FLASH, EEPROM, NVRAM, etc. devices. - * driver/mtd/m25px.c. Added a driver for SPI based FLASH parts M25P64 and M25P128. - * configs/stm3210e-eval/usbserial. Add a USB serial configuration for the STM32. - Depends on the STM32 USB driver. - * arch/arm/src/cortexm3/up_switchcontext.S & up_svccall.c. Made an improvement - to context switching. There are two types of context switches: interrupt - context switches and background/user context switches. This change should - improve the performance of those background/user context switches by a factor - of about two. - * arch/arm/src/stm32/ - fix several typos in the serial logic. It turns out - that these typose don't make any difference as long as you use only one - serial port and all uarts are configured the same. But the typos are bugs - waiting to happen in any other configuration. - * arch/arm/src/stm32/ - You have to configure CTS/RTS function pins for USART - 2 and USART 3 even if you are not using flow control. - * arch/arm/src/stm32/stm32_usbdev.c - Added a USB device-side driver for the - STM32. - - NOTE: This STM32 USB driver is not yet fully tested - - * arch/arm/src/stm32/stm32_rcc.c - Fixed an error in clock initialization. - On some boards (none of mine), the HSE (high speed external clock) delay - loop times out if the optimization level is high. The STM32 then falls - back to the HSI (internal clock), and the system clock is too slow by a - factor of 11.1%. This was fixed by simply add the volatile storage class - to the timeout loop counter - * arch/arm/src/stm32/stm32_irq.c - Fixed a critical bug in the interrupt - control logic. The wrong register was being used for interrupts in a - certain range. Worked fine until you try to use an interrupt in that - range! +nuttx-0.4.14 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> pascal-0.1.3 2009-xx-xx Gregory Nutt <spudmonkey@racsa.co.cr> diff --git a/ReleaseNotes b/ReleaseNotes index 83bf4573510..9e1e920dff7 100644 --- a/ReleaseNotes +++ b/ReleaseNotes @@ -1003,3 +1003,29 @@ in this 0.4.12 release, but is not yet tested. This tarball contains a complete CVS snapshot from October 17, 2009 +nuttx-0.4.13 +^^^^^^^^^^^^ + +This is the 45th release of NuttX. The release extends the support for the STMicro +STM32 microcontroller. Minimul support for the STM3210E-EVAL development board based +around the STM32F103ZET6 MCU was released in NuttX-0.4.12. This release adds: + + * A simple interface definition to support some FLASH, EEPROM, NVRAM, etc. devices. + * Verified SPI operation using driver for SPI based FLASH parts M25P64 and M25P128. + * Improved Cortex-M3 context switching. This should improve context switching + performance be 2x in certain cases. + * Added a USB device-side driver for the STM32. This is an early release of a + very complex driver; some bugs are expected. + * The USB driver has been verified against the USB serial device class driver. + There is at least one known outstanding issue (see the full bug description in + the TODO list). + +This release also corrects some important bugs in the early STM32 release: + + * Fixed several errors the prevented operation of NuttX on an STM32 development + board using USART2 as the serial console. + * Fixed and optimization-dependent race condition in the clock initialization. + * Fixed a critical bug in the interrupt control logic that could cause interrupt + operations to failed used for interrupts in a certain range. + +This tarball contains a complete CVS snapshot from November 4, 2009 diff --git a/TODO b/TODO index 6a8ebbca8ee..72681e742fa 100644 --- a/TODO +++ b/TODO @@ -1,4 +1,4 @@ -NuttX TODO List (Last updated October 20, 2009) +NuttX TODO List (Last updated November 4, 2009) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (5) Task/Scheduler (sched/) @@ -657,16 +657,28 @@ o ARM/STM32 (arch/arm/src/stm32/) Status: Open Priority: Medium - Description USB device-side driver + Description A USB device-side driver is in place but not well tested. At + present, the examples/usbserial test sometimes fails. The situation + that causes the failure is: + + - Host-side of the test started after the target side sends the + first serial message. + + The general failure is as follows: + + - The target message pends in the endpoint packet memory + - When the host-side of the test is stated, it correctly + reads this pending data. + - an EP correct transfer interrupt occurs and the next + pending outgoing message is setup + - But, the host never receives the next message + + If the host-side driver is started before the first target message + is sent, the driver works fine. Status: Open Priority: Medium-High - Description: Framebuffer/LCD driver needed (I don't know if it can handle a - framebuffer or not). - Status: Open - Priority: High - - Description: FSMC externmal memory support is untested + Description: FSMC external memory support is untested Status: Opon Priority: Low