2.5.x development branch

Stable and Unstable release events.

2.5.x development branch

Postby Giovanni » Sun Sep 09, 2012 9:35 am

Hello,

ChibiOS/RT 2.5.0 has been released. This release is the start of the new development branch even if the development started many months ago without an "official" unstable release, most people interested in the latest code use the repository.

The huge list of changes:
Code: Select all
*** 2.5.0 ***
- FIX: Fixed anomaly in USB enumeration (bug 3565325)(backported to 2.4.3).
- FIX: Fixed problem with lwIP statistics (bug 3564134)(backported to 2.4.3).
- FIX: Fixed packed structures macros not functional in IAR and RVCT port
  (bug 3561279)(backported to 2.4.3 and 2.2.10).
- FIX: Fixed Problem in FatFs demos related to LFN (bug 3560980)(backported
  to 2.4.3 and 2.2.10).
- FIX: Fixed problem in STM32 DMA1 stream1 IRQ handler (bug 3538468)
  (backported to 2.4.2).
- FIX: Fixed TIM8 not working in STM32 GPT driver (bug 3536523)(
- FIX: Fixed wrong priority assigned to TIM8 in STM32 ICU driver (bug 3536950)
  (backported to 2.4.2).
- FIX: Fixed TIM8 not working in STM32 GPT driver (bug 3536523)(backported
  to 2.4.2).
- FIX: Fixed timer overflow not working in STM32 ICU driver for TIM1/TIM8 (bug
  3536522)(backported to 2.4.2).
- FIX: Fixed wrong DMA channels on USART2 in STM32F10X_MD_VL devices (bug
  3536070)(backported to 2.4.2).
- FIX: Fixed issue with DMA channel init in STM32 ADC and SPI drivers (bug
  3535938)(backported to 2.2.10 and 2.4.2).
- FIX: Fixed issue debugging mmc_spi (bug 3535887)(trunk only).
- FIX: Fixed unreliable PHY initialization (bug 3534819)(backported to 2.4.2).
- FIX: Fixed wrong ADC callback buffer pointer in ADC driver (bug 3534767)
  (backported to 2.2.10 and 2.4.2).
- FIX: Fixed STM32F2 RTC subseconds (bug 3533414)(trunk only).
- FIX: Fixed problem with arm-v6m and state checker (bug 3532591)(backported
  to 2.4.2).
- FIX: Fixed wrong MAC divider setting in STM32 MAC driver (bug 3531290)
  (backported to 2.4.2).
- FIX: Fixed wrong MCO1 divider in STM32F2/F4 HAL (bug 3531289)(backported
  to 2.4.2).
- FIX: Fixed missing "break" in AVR PAL driver (bug 3530924)(backported
  to 2.4.2).
- FIX: Fixed timeout related race condition in STM32 I2C driver (bug 3530043)
  (backported to 2.4.2).
- FIX: Fixed wrong macro check in STM32 MAC driver (bug 3527179)(backported
  to 2.4.2).
- FIX: Fixed error in STM32L-Discovery board.h file (bug 3526918)(backported
  to 2.4.2).
- FIX: Fixed inconsistent LPCxxx Internal RC oscillator names (bug 3524138)
  (backported to 2.2.10 and 2.4.1).
- FIX: Fixed wrong frequency limit checks vs VDD in STM32F2xx HAL (bug 3524094)
  (backported to 2.4.1).
- FIX: Fixed STM32 I2C1 wrong alternate TX DMA setting (bug 3524088)
  (backported to 2.4.1).
- FIX: Fixed system state check problem related to FatFS (bug 3523769).
- FIX: Fixed three testhal builds fail (bug 3523322)(backported to 2.4.1).
- FIX: Fixed MAC driver functions with invalid name (bug 3522808)(backported
  to 2.2.10 and 2.4.1).
- FIX: Fixed code coverage crashes with Linux/gcc-4.4.5 (bug 3522301)
  (backported to 2.4.1).
- FIX: Fixed macro dmaWaitCompletion() fails to compile in STM32 HAL (bug
  3519202)(backported to 2.4.1).
- FIX: Fixed ARM addresses generated in vectors table (bug 3519037)(backported
  to 2.2.10 and 2.4.1).
- FIX: Fixed missing serial driver functionality for SAM7S64, SAM7S128 and
  SAM7S512 (bug 3517648)(backported to 2.2.10 and 2.4.1).
- FIX: Fixed a few more spelling fixes (bug 3515531)(backported to 2.4.1).
- FIX: Fixed spurious ) char in STM32 serial_lld.h (bug 3514138)(backported
  to 2.2.10 and 2.4.1).
- FIX: Fixed problem with FPU initialization in GCC Cortex-M4 port (bug
  3513897)(backported to 2.4.1).
- FIX: Spelling fixes (bug 3510812)(backported to 2.4.1).
- FIX: Fixed STM32 ICUD8 not functional because wrong initialization (bug
  3508758)(backported to 2.4.1).
- FIX: Fixed chMBFetchI does not decrement mb_fullsem (bug 3504450)(backported
  to 2.2.9 and 2.4.1).
- FIX: Fixed STM32 PLLI2S initialization error (bug 3503490)(backported
  to 2.4.1).
- FIX: Fixed USART3 not working on STM32F2/F4 UART driver (bug 3496981)
  (backported to 2.4.1).
- FIX: Fixed stack misalignment on Posix-MacOSX (bug 3495487)(backported
  to 2.4.1).
- FIX: Fixed STM8S HSI clock initialization error (bug 3489727)(backported to
  2.2.9 and 2.4.1).
- FIX: Fixed MMC over SPI driver performs an unnecessary SPI read (bug
  3486930)(backported to 2.2.9 and 2.4.1).
- FIX: Fixed Realtime counter initialization in STM32 HALs (bug 3485500)
  (backported to 2.4.1).
- FIX: Fixed PPC port broken when CH_DBG_SYSTEM_STATE_CHECK is activated
  (bug 3485667)(backported to 2.4.1).
- FIX: Fixed missing PLL3 check in STM32F107 HAL (bug 3485278)(backported
  to 2.4.1).
- FIX: Fixed ADC maximum frequency limit in STM32F2/F4 ADC drivers (bug
  3484947)(backported to 2.4.1).
- FIX: Fixed various minor documentation errors (bug 3484942)(backported
  to 2.4.1).
- NEW: Added Eclipse project files to most demos. The project are setup to
  have paths relative to a variable named CHIBIOS that must point to the
  ChibiOS/RT installation path. The variable must be defined under
  Window->Preferences->General->Workspace->Linked_Resources and must contain
  a path without the trailing slash character.
- NEW: Added memory signature record to the registry in order to simplify
  the implementation of ad-hoc debuggers.
- NEW: Small andjustment in chcore.h files under ./os/ports/GCC required by a
  difference in GCC 4.7.x.
- NEW: Added another STM32F4-Discovery demo using the on-board MEMS, SPI
  and PWM. Removed MEMS handling from the old demo because code size limits
  on non-free compilers.
- NEW: Added configuration wizard plugin under ./tools/eclipse/plugins. This
  first version is able to configure the board files for STM32F0xx, STM32F4xx
  and STM32L1xx.
- NEW: Added USART6 support to the STM32 UARTv1 driver, contributed by Erik
  van der Zalm.
- NEW: Added demo for Arduino Mega, contributed by Fabio Utzig.
- NEW: Added support for ATmega1280, contributed by Fabio Utzig.
- NEW: Added I2C driver for AVR, contributed by Fabio Utzig.
- NEW: Added FatFs demo for the Olimex STM32-P107 board.
- NEW: Added support for the Olimex STM32-E407 board. Added an integrated
  demo including USB-CDC, lwIP with web server, FatFs and shell, all running
  together.
- NEW: Added an experimental and unsupported STM8 port for the IAR compiler,
  contributed by "king2".
- NEW: Updated STM8 header files to latest versions from ST.
- NEW: Reorganized the STM32 EXT driver to have a sub-platform specific
  part containing all the ISR related code, this has been necessary because
  the significant differences among the various sub-families.
- NEW: Validated CAN driver on STM32F2/F4 (backported to 2.4.2).
- NEW: USB implementation for STM32F105/F107/2xx/F4xx devices.
- NEW: Improved SerialUSB driver using the new queued mode, much smaller
  than the previous driver.
- NEW: Improved USB driver model supporting also queues for endpoint I/O,
  packet mode removed.
- NEW: Added an application-defined field to I/O queues (a void pointer).
- NEW: Added board files for Maple Mini STM32F103, contributed by Wagner
  Sartori Junior.
- NEW: Added SSP1 capability to the LPC13xx SPI driver.
- NEW: Updated vendor headers for LPC11xx and LPC13xx, the new headers
  support several new devices.
- NEW: Demo for STM32F0-Discovery board.
- NEW: Initial support for STM32F0xx devices, added a specific ADC driver.
  Validated EXT, GPT, ICU, PAL, PWM, Serial, SPI, UART drivers.
- NEW: Added a common ancestor class to the SDC and MMC_SPI drivers. This
  allows to share code and definitions.
- NEW: Modified the SDC driver to implement the new block devices abstract
  interface.
- NEW: Added two new functions to the MMC_SPI driver: mmcSync() and
  mmcGetInfo(). Also implemented the new block devices abstract
  interface. Moved the configuration parameters from mmcObjectInit() to
  the configuration structure saving some RAM space. Updated demos.
- NEW: Added an abstract interface for block devices in the HAL. This
  abstraction layer is meant to unify the access protocol to the SDC and
  MMC_SPI (and potentially others) device drivers.
- NEW: Added an abstract interface for serial devices in the HAL. This
  interface is meant to replace the equivalent class already present in the
  kernel. access macros are similar except for the prefix, "chn" instead
  of "chIO".
- NEW: Updated the MSP port to work with the latest MSPGCC compiler (4.6.3
  LTS 20120406 unpatched), now the old MSPGCC 3.2.3 is no more supported
  (backported to 2.4.1).
- NEW: EXT driver improved, now it is possible to reprogram channels at
  runtime without necessarily specifying a new configuration.
  TODO: Update AT91SAM7 EXT driver.
- NEW: Integrated FatFS 0.9, now the FatFS integration files are centralized
  under ./os/various/fatfs_bindings and shared among all demos. The FatFS
  file ffconf.h is now application-specific like all the other configuration
  files.
- NEW: Added an new option CORTEX_PRIGROUP_INIT to the Cortex-Mx ports in
  order to make priority organization configurable, the default is to
  assign all the available priority bits to preemption priority with no
  sub-priorities.
- NEW: Added a new function chPoolLoadArray() to the Memory Pools subsystem,
  it allows to load an entire array element's into a pool with a single
  operation.
- NEW: Addes support for .S patch in the GCC ARM ports, by Ayman El-Khashab.
- NEW: Added a switch to the STM32F4 Makefile files in order to enable or
  disable the FPU support in a single place.
- NEW: Added float support (optional) to chprintf(), by Fabio Utzig.
- NEW: Added overflow handling in the ICU driver (contributed by Xo).
- NEW: Updated debug plugin 1.0.8 (backported to 2.4.0).
- NEW: Added more accurate UBRR calculation in AVR serial driver (backported
  to 2.4.0).
- NEW: Revision of the round-robin scheduling, now threads do not lose their
  time slice when preempted. Each thread has its own time slices counter.
  TODO: Seek optimizations.
- NEW: Modified the Virtual Timers management, now the callback is invoked
  not in lock mode. This change reduces the interrupt jitter caused by
  multiple timers used at same time.
- NEW: Added board files and demo for Olimex LPC-P1343 (contributed by
  Johnny Halfmoon).
- NEW: Added handling of input 2 to the STM32 ICU driver (contributed by
  Fabio).
- NEW: STM32 Ethernet driver completed. Added STM32F107 and STM32F407
  lwIP demos (backported to 2.4.1).
- NEW: lwIP related code is not centralized into a single place, no need to
  duplicate the code in each application or demo (backported to 2.4.1).
- CHANGE: Added two new methods to the BaseSequentialStream interface:
  chSequentialStreamPut() and chSequentialStreamGet().
- CHANGE: Removed the chioch.h header from the kernel, now channels interface
  is exported by the HAL. Removed functions chPutWouldBlock() and
  chGetWouldBlock().
- CHANGE: Removed macro chMsgGetS(), chMsgGet() is still available.
- CHANGE: chprintf() now takes a BaseSequentialStream as parameter instead
  of a BaseChannel making it more generic.
- CHANGE: Now the shell requires a BaseSequentialStream instead of a
  BaseChannel for communications making it more generic.
- CHANGE: Kernel memory pools now do not check the alignment of the inserted
  objects, it is responsibility of the application to insert properly
  aligned objects.
- CHANGE: The PORT_INT_REQUIRED_STACK parameter for the Cortex-Mx ports has
  been increased to 32 from 16 because the stack frame sizes are increased
  when compiling with optimizations disabled, which is common during
  debugging. In order to save RAM trim back this value when compiling with
  optimizations enabled (backported to 2.4.1).
- CHANGE: Renamed Ethernet driver in AT91 HAL ETHD1 (backported to 2.4.1).
- CHANGE: Macros icuGetWidthI() and icuGetPeriodI() renamed to icuGetWidth()
  and icuGetPeriod().
- Various documentation fixes and improvements.


Giovanni
User avatar
Giovanni
Site Admin
 
Posts: 4903
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy

Re: 2.5.x development branch

Postby Giovanni » Sun Dec 16, 2012 8:05 pm

Hello,

ChibiOS/RT 2.5.1 has been released. This release includes many bug fixes and countless improvements to the code base. Please refer to the readme for a detailed list of changes.

Code: Select all
*** 2.5.1 ***
- FIX: Fixed typo in chOQGetEmptyI() macro (bug 3595910)(backported to 2.2.10
  and 2.4.3).
- FIX: Fixed possible false detect of loaded prescaler in RTCv1 driver (bug
  3595489)(backported to 2.4.3).
- FIX: Fixed unneeded RTC initialization when HAL_USE_RTC disabled
  (bug 3594620)(backported to 2.4.3).
- FIX: Fixed compilation issue with HAL_USE_RTC disabled (bug 3594083)
  (backported to 2.4.3).
- FIX: Fixed wasting of BKP registers in RTCv1 driver (bug 3594005)(backported
  to 2.4.3).
- FIX: Fixed potential problem with RTC_CRL_RSF bit (bug 3593972)(backported
  to 2.4.3).
- FIX: Fixed STM32F1x rtc_lld_init not functional (bug 3592817)(backported
  to 2.4.3).
- FIX: Fixed DMA reconfiguration problem in STM32 SPI driver (bug 3592809)
  (backported to 2.4.3).
- FIX: Fixed STM32 UART driver redundant initialization (bug 3592764)
  (backported to 2.4.3).
- FIX: Fixed wrong stack initializations in GCC STM32L1xx port files (bug
  3591321)(backported to 2.4.3).
- FIX: Fixed different redefinition for __main_stack_end__ symbol (bug
  3591317)(backported to 2.4.3).
- FIX: Fixed errors in STM32F0xx UART driver (bug 3589412)(backported
  to 2.4.3).
- FIX: Fixed MSP430 port_switch code for MSPGCC issue (bug 3587633)(backported
  to 2.4.3).
- FIX: Fixed workaround for errata in STM32F4-A devices (bug 3586425)
  (backported to 2.4.3).
- FIX: Fixed error in palWritePad() macro (bug 3586230)(backported to 2.2.10
  and 2.4.3).
- FIX: Fixed missing ; in testmbox.c (bug 3585979)(backported to 2.4.3).
- FIX: Fixed STM32F4xx: Wrong CAN1 SCE interrupt number definition (bug
  3581571).
- FIX: Fixed STM32_P407: implement mmc_lld_is_card_inserted (bug 3581929)
  (backported to 2.4.3).
- FIX: Fixed double chSysInit() call in MSP430F1611 demo (bug 3581304)
  (backported to 2.2.10 and 2.4.3).
- FIX: Fixed patch for various demos (bug 3579734).
- FIX: Fixed bug in abstract file interface (bug 3579660)(backported to
  2.2.10 and 2.4.3).
- FIX: Fixed wrong type for UART config registers (bug 3579434).
- FIX: Fixed various typos and wrong limits in the STM32F4/F2 HAL driver
  (bug 3578944)(backported to 2.4.3).
- FIX: Fixed ARM CMx crt0.c fails at low optimization levels (bug 3578927)
  (backported to 2.4.3).
- FIX: Fixed compilation issue in chregistry.c (bug 3576776).
- FIX: Fixed compilation issue in syscalls.c (bug 3576771)(backported
  to 2.4.3).
- FIX: Fixed Typos in STM32F0xx EXT driver (bug 3576193).
- FIX: Fixed STM32F10X_CL: Wrong CAN1 interrupt number definitions (bug
  3575766).
- FIX: Fixed superfluous pack #defines cause nasty warning (bug 3575662)
  (backported to 2.4.3).
- FIX: Fixed mac.c won't compile due to misplaced declarations (bug 3575657)
  (backported to 2.4.3).
- FIX: Fixed STM32F4 ADC prescaler incorrectly initialized (bug 3575297)
  (backported to 2.4.3).
- FIX: Fixed RCC_APB2ENR_IOPEEN undeclared on STM32F10X_LD_VL devices (bug
  3575098)(backported to 2.4.3).
- FIX: Fixed misplaced declarations in lwip_bindings sys_arch.c (bug 3571053)
  (backported to 2.4.3).
- FIX: Fixed double definition of sd1fel and sd2fel breaks Posix simulator
  (bug 3570532).
- FIX: Fixed Ethernet PHY power down scheme prevents using LAN8720A (bug
  3570335).
- FIX: Fixed FatFS won't compile with _FS_REENTRANT enabled (bug 3570135)
  (backported to 2.4.3).
- FIX: Fixed mmc_spi.c won't compile due to misplaced declaration (bug
  3570035)(backported to 2.4.3).
- FIX: Fixed problem in STM32F1xx USB driver after revision 4598 (bug 3569374).
- FIX: Fixed GPIO glitch during PAL initialization (bug 3569347)(backported
  to 2.4.3).
- FIX: Fixed FatFS timestamp incorrect (bug 3568626).
- FIX: Fixed Data available event not generated in serial_usb driver (bug
  3567992).
- FIX: Fixed STM32F1x rtc_lld_init glitches rtc on hard reset (bug 3567597)
  (backported to 2.4.3).
- FIX: Fixed STM8L, cosmic compiler: c_lreg not saved (bug 3566342)(backported
  to 2.2.10 and 2.4.3).
- NEW: Initial support for STM32F30x (HAL, PAL, CAN, GPT, ICU, PWM, Serial,
  SPI, UART, USB).
- NEW: AT91SAM7A3 I2C support.
- NEW: AT91SAM7A3 basic support.
- NEW: Unified the STM32F4xx and STM32F2xx platform code. The STM32F2xx now is
  only supported as an STM32F4xx variant and not tested separately.
- NEW: Updated STM32F1, F2, F4, L1 ADC drivers to allow HW triggering.
- NEW: Added a new option STM32_ETH1_CHANGE_PHY_STATE to the STM32 MAC driver,
  this change is connected to bug 3570335.
- NEW: Modified the CAN drivers to use the new event flags mechanism, the
  previous flags handling has been removed.
- NEW: Modified serial and serial_usb drivers to use the new event flags
  mechanism, the previous flags handling in BaseAsynchronousChannel has
  been removed.
- NEW: Improved the kernel events subsystem, now event sources can associate
  source-specific flags to the listener, the flags can then be retrieved
  using the new APIs chEvtGetAndClearFlags() and chEvtGetAndClearFlagsI().
  Some old APIs have been renamed to increase consistency of the module.
- NEW: Added VLE support to the Power Architecture GCC port.
- NEW: Reorganized the Power Architecture GCC port along the lines of the
  ARMCMx port, now it can support multiple core types.
- NEW: Updated the Power Architecture rules.mk file to put object and listing
  files into a ./build directory like ARM ports already do.
- CHANGE: The STM32 Serial driver has been split in two distinct versions,
  one for older devices up the STM32F4xx, the other for new devices starting
  from the STM32F0xx.
  (TODO: Update IAR and Keil projects because different paths, update
         documentation projects).


Giovanni
User avatar
Giovanni
Site Admin
 
Posts: 4903
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy


Return to Releases

Who is online

Users browsing this forum: No registered users and 1 guest