18.2.x stable branch

Stable and Unstable release events. This forum is NOT for support.
User avatar
Giovanni
Site Admin
Posts: 14444
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 1074 times
Been thanked: 921 times
Contact:

18.2.x stable branch

Postby Giovanni » Sun Feb 11, 2018 6:12 pm

Hello,

New development branch for 2018, the first release is named "Amalfi".

Note, this release has to be considered a Release Candidate, see the release note for more details:

Code: Select all

******************************************************************************
*** ChibiOS 18.2.0 release Notes.                                          ***
******************************************************************************

ChibiOS 18.2.0 is composed of several independent but inter-operable
sub-projects: RT, NIL, HAL, EX. Plus several external libraries
integrated in our structure: WolfSSL, FatFS and lwIP.

*** ChibiOS 18.2.0 highlights ****

This release is focused on features and  general improvements, HAL, RT and NIL
received a series of important improvements, new features have been added.

*** ChibiOS 18.2.0 general improvements ***

- WolfSSL 1.12.2 has been integrated. HTTPS demo added.
- FatFS 0.13 has been integrated.
- lwIP 2.0.3 has been integrated.
- CMSIS 5.1.1 has been integrated.
- Improved build system based on make.
- Improved integration with Eclipse, launch configurations have been
  centralized for many projects.
- Several HAL and test applications have become "multi projects", a single
  project is able to build for multiple targets/boards.
- Improved test engine.
- Added a test suite generator written in FTL, now it is possible to generate
  test code without the need of SPC5Studio.
- Added a board files generator written in FTL, now it is possible to generate
  board files without the need of ChibiStudio.

*** What's new in RT/NIL ports ***

- GHS compiler support added to the Power e200z port.

*** What's new in OS Library ***

- OS library now has its own test suite.
- Mailbox API names changed by adding "Timeout" to those function that have
  timeout capability, for consistency with the rest of the system.
- Added an "Objects Factory" to the OS Library, it allows to dynamically
  allocate reference-counted kernel objects/buffers or to register
  static objects. Allocated/registered objects can be retrieved by name.
- Added an "Objects FIFO" object to the OS Library, it allows to
  exchange complex objects between threads/ISRs. It is based on a
  mailbox and a guarded memory pool.
- Added alignment handling to memory pools.
- Added a new chGuardedPoolAllocI() API to the guarded memory pools.

*** What's new in RT 5.0.0 ***

- The type systime_t has been split in systime_t and sysinterval_t, the
  two can have different size. The system is now more rigorous in time
  handling, an absolute time is something different from an interval,
  sysinterval_t can be larger than the systime_t, this means that it is
  now possible to use very long intervals when the system time uses a small
  counter.
- Time conversion macros have been renamed in TIME_S2I(), TIME_MS2I(),
  TIME_US2(), TIME_I2S(), TIME_I2MS() and TIME_I2US. Conversion is now done
  by casting all operands to a large time_conv_t type improving safety by
  eliminating integer truncations.
- Time conversion functions have been renamed in: chTimeS2I(), chTimeMS2I(),
  chTimeUS2I(), chTimeI2S(), chTimeI2MS() and chTimeI2US().
- New functions have been added for dealing with operations with time and
  intervals: chTimeAddX() and chTimeDiffX().
- All functions that have a timeout parameter now take a sysinterval_t type
  instead of systime_t.
- Improved test suite.
- Enhanced Events API, added chEvtGetAndClearEventsI() and chEvtAddEventsI().
- The chconf.h configuration files now are tagged with the version
  number for safety. The system rejects obsolete files during
  compilation. Stronger checks are performed on chconf.h, now missing
  settings trigger an error instead of getting a default.

*** What's new in NIL 3.0.0 ***

- The type systime_t has been split in systime_t and sysinterval_t. The
  system is now more rigorous in time handling, an absolute time is
  something different from an interval.
- Time conversion macros have been renamed in TIME_S2I(), TIME_MS2I(),
  TIME_US2(), TIME_I2S(), TIME_I2MS() and TIME_I2US. Conversion is now done
  by casting all operands to a large time_conv_t type improving safety by
  eliminating integer truncations.
- New functions have been added for dealing with operations with time and
  intervals: chTimeAddX() and chTimeDiffX().
- All functions that have a timeout parameter now take a sysinterval_t type
  instead of systime_t.
- Improved test suite.
- The chconf.h configuration files now are tagged with the version
  number for safety. The system rejects obsolete files during
  compilation.

*** What's new in HAL 6.0.0 ***

- Added a Managed Flash Storage module to the HAL. This modules handles
  garbage collection, storage self-repair and wear leveling.
- Improved serial driver.
  - Added a "control" function to the channels interface, it allows to add
    custom features to the various implementations.
  - Added I-class functions to the serial driver: sdGetI(), sdReadI(),
    sdPutI() and sdWriteI().
- Improved PAL driver.
  - Added an user parameter to the PAL callbacks for consistency with other
    drivers.
  - Added blocking functions for edge synchronization: palWaitLineTimeout()
    and palWaitLineTimeoutS().
- Improved SPI driver.
  - Now there are multiple modes for CS handling: by PAL pad (previous one), by
    PAL line, by PAL port mask and LLD-specific.
  - Added circular continuous mode to the SPI driver.
- Improved CAN driver.
  - Added callback capability to the CAN driver. Now it is possible to use
    callbacks in place of classic events.
- Improved USB driver.
  - Added a usbWakeupHost() function for standby exit.
- Improved HAL queues to increase performance. Added new functions: iqGetI(),
  iqReadI(), oqPutI() and oqWriteI().

*** What's new in EX 1.0.1 ***

- No changes, few bug fixes.

*** What's new in AVR HAL support ***

- Added initial ATtiny167 support.
- Added initial ATXmega128a4u support.
- Improvement of SPI, EXT, PAL low level drivers.

*** What's new in STM32 HAL support ***

- Updated SPI drivers to implement the new circular mode of the HAL SPI
  driver model.
- Updated STM32F1xx headers to 1.6, STM32F3xx to 1.9, STM32L0xx to 1.10,
  STM32L4xx to 1.9, STM32H7xx to 1.1.
- Implemented PAL enhancements in GPIOv1, GPIOv2 and GPIOv3 implementations.
- Modified the STM32 OTGv1 driver to work without pump thread, transfers
  are now done in the ISR. The driver is now greatly simplified.
- Added STM32L496xx/STM32L4A6xx support.
- Added STM32F030x4 support.
- Added initial STM32H7xx support.


Branch 17.6.x is still in maintenance mode.
Branch 16.1.x is now unmaintained.

Giovanni

User avatar
Giovanni
Site Admin
Posts: 14444
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 1074 times
Been thanked: 921 times
Contact:

Re: 18.2.x stable branch

Postby Giovanni » Tue May 01, 2018 10:23 am

Hello,

First official release in the 18.2 branch, many bugs fixed, mainly in EX and HAL, some new features have been back-ported from trunk.

This release is composed by:
- RT 5.0.0.
- NIL 3.0.0.
- HAL 6.0.1.
- EX 1.1.0.

Code: Select all

*** 18.2.1 ***
- NEW: Added HAL support for STM32L443.
- NEW: Improved some EX drivers and related test applications.
- NEW: Improved VMT mechanisms to allow multiple interfaces.
- NEW: Updated make mechanisms in demos/STM32, testhal/STM32 and testex/STM32:
       now makefile are more shorter and inclusion are easier to do.
- EX:  Updated HTS221 to 1.1.0.
- EX:  Updated L3GD20 to 1.1.0.
- EX:  Updated LIS3DSH to 1.1.0.
- EX:  Updated LIS3MDL to 1.1.0.
- EX:  Updated LIS302DL to 1.1.0.
- EX:  Updated LPS25H to 1.1.0.
- EX:  Updated LSM303DLHC to 1.1.0.
- HAL: Fixed invalid settings in STM32F769I-Discovery board files (bug #942).
- OTH: Fixed short branch to _unhandled_exception in vectors.S (bug #941).
- HAL: Fixed IOBus PAL functions missing the const qualifier (bug #940).
- HAL: Fixed STM32 USBv1 driver does not reset data toggling bits on endpoint
       initialization (bug #939).
- HAL: Fixed incorrect behavior of USB driver on SET CONFIGURATION (bug #938).
- HAL: Fixed macro expansion problem in SPI high level driver (bug #937)
- HAL: Fixed missing CAN2 macros from STM32L4xx stm32_rcc.h file (bug #936).
- OTH: Fixed inclusion order problem in STM32L4 cmparams.h file (bug #935).
- HAL: Fixed problem clearing UIF timer flag in STM32 PWM driver (bug #934).
- HAL: Fixed USB Serial driver problem with zero-size OUT transactions
       (bug #933).
- HAL: Fixed race condition in STM32 QSPI driver (bug #932).
- HAL: Fixed function mfsReadRecord() causes memory corruption because a
       buffer overflow (bug #931).
- HAL: Fixed silence GCC 7.3.0 warning (bug #930).
- HAL: Fixed invalid SAI1 clock selection on STM32F7xx (bug #929).
- HAL: Fixed invalid clock checks for SDMMC1 and SDMMC2 on STM32F7xx
       (bug #928).
- HAL: Fixed useless writes in read-only CFGR_SWS field on all STM32Fxx
       (bug #927).
- HAL: Fixed typo in hal_pal.h (bug #926).
- HAL: Fixed UART driver stop functions confusing returned value (bug #925).
- HAL: Fixed USB driver not stopped (bug #924).
- HAL: Fixed I2C address not accepted (bug #923).
- HAL: Fixed problem with HSI48 on STM32L4xx (bug #922).
- HAL: Fixed invalid implementation of palWaitPadTimeoutS() and
       palWaitLineTimeoutS() APIs (bug #921).
- HAL: Fixed wrong DMA settings for STM32F76x I2C3 and I2C4 (bug #920).
- HAL: Fixed wrong flash waiting state for STM32F7xx (bug #918).


Giovanni

User avatar
Giovanni
Site Admin
Posts: 14444
Joined: Wed May 27, 2009 8:48 am
Location: Salerno, Italy
Has thanked: 1074 times
Been thanked: 921 times
Contact:

Re: 18.2.x stable branch

Postby Giovanni » Sun Jan 20, 2019 9:14 am

Hello,

ChibiOS 18.2.2 has been released, the list of fixes/changes is quite long.

This release is composed by:
- RT 5.1.0.
- NIL 3.1.0.
- HAL 6.1.0.
- EX 1.1.0.

Code: Select all

*** 18.2.2 ***
- NEW: Added analog watchdog functionality to STM32 ADCv2 driver.
- NEW: Added a termination check to the shell.
- NEW: Updated CMSIS to version 5.3.0.
- NEW: Now chconf.h files have preprocessor checks around each definition,
       this allows to override settings from makefiles.
- NEW: Added new functions to I/O queues: qSetLink().
- NEW: Added new functions to objects fifos: chFifoReturnObjectS(),
       chFifoSendObjectAheadI(), chFifoSendObjectAheadS() and
       chFifoSendObjectAhead().
- HAL: Fixed invalid checks in STM32H7 HAL (bug #1000).
- OTH: Fixed problem in STM32H743 GCC linker file (bug #998).
- HAL: Fixed extra parenthesis in STM32F4 registry (bug #997).
- HAL: Fixed timing problem in STM32 OTGv1 driver (bug #996).
- HAL: Fixed restrictive check in MMC-SPI driver (bug #995).
- HAL: Fixed misplaced check in STM32 ST driver (bug #994).
- OTH: Fixed ARM CMx vectors table without thumb bit set for unused vectors
       (bug #993).
- HAL: Fixed STM32F7xx I2SPLL not fully initialized (bug #992).
- HAL: Fixed ethernet registry error for STM32F469/479 (bug #990).
- RT:  Fixed bug in chEvtBroadcastFlagsI (bug #989).
- HAL: Fixed NULL pointer dereferenced in N25Q driver (bug #988).
- HAL: Fixed OS-Less Cortex-M HAL functionality broken (bug #987).
- HAL: Fixed broken functionality of MFS module (bug #986).
- NIL: Fixed scheduler misbehaving in rare cases (bug #983).
- NIL: Fixed function chThdSuspendTimeoutS() ignoring TIME_IMMEDIATE (bug #982).
- HAL: Fixed STM32L071/72 entries in registry (bug #981).
- HAL: Fixed TIM3 missing from STM32L0xx RCC macros (bug #980)
- HAL: Fixed invalid STM32 ADCv3 clock selection for L4 and L4+ (bug #979).
- HAL: Fixed wrong number of endpoints for STM32F412/413 (bug #978).
- RT:  Fixed chEvtGetAndClearFlags(...) does not mask events (bug #977).
- HAL: Fixed HAL channels chnControl() macro broken (bug #976).
- OTH: Fixed wrong timeout handling in CMSIS OS layer (bug #975).
- HAL: Fixed mii_find_phy excludes PHY address 31 (bug #971).
- HAL: Fixed invalid checks in STM32F37x HAL related to SDADC (bug #974).
- HAL: Fixed option STM32_LSCOSEL not written in STM32L4 HAL (bug #970).
- HAL: Fixed invalid DFSDM1SEL option in STM32L4 HAL (bug #969).
- HAL: Fixed incorrect checks on STM32_SAI2SEL option in STM32L4 HAL
       (bug #968).
- HAL: Fixed incorrect handling of PDIV dividers in STM32L4 HAL (bug #967).
- HAL: Fixed documentation error in spiStop() (bug #966).
- HAL: Fixed missing parenthesis in STM32L073 registry entry (bug #965).
- HAL: Fixed problem with STM32 RTCv1 and GCC7 compiler (bug #964).
- HAL: Fixed invalid timeout calculation in hal_buffers (bug #963).
- RT:  Fixed invalid parameter in CH_CFG_SYSTEM_INIT_HOOK hook macro
       (bug #962).
- OTH: Fixed demos failing to compile (bug #961).
- HAL: Fixed issue in hal_queues (bug #960).
- HAL: Fixed incorrect state change in I2S driver (bug #959).
- HAL: Fixed incorrect TCIE handling in STM32 serial drivers (bug #958).
- HAL: Fixed invalid period calculation in STM32 GPT driver (bug #957).
- HAL: Fixed missing USART7/8 definitions in STM32F0 HAL (bug #956).
- LIB: Fixed heap allocation issue (bug #955).
- HAL: Fixed win32 simulator HAL broken because a typo (bug #954).
- HAL: Fixed race condition in STM32 ADCv3 driver (bug #953).
- HAL: Fixed wrong registry entries for STM32F030x4 (bug #952).
- HAL: Fixed invalid divider settings in Serial and UART STM32 drivers
       when USART_CR1_OVER8 is specified (bug #951).
- NIL: Fixed missing extern declaration in IAR Cortex-M port (bug #950).
- HAL: Fixed ASCR register invalid handling in STM32 GPIOv3 driver (bug #949).
- HAL: Fixed missing definition in UART driver (bug #948).
- OTH: Fixed wrong macro check in GCC Cortex-M startup files (bug #947).
- NEW: Added optional support for character match callback in the UART
       high level driver.
- NEW: Added support for LDM303AGR 6 axis Accelerometer\Magnetometer MEMS.
- NEW: Added support for LSM6DSL 6 axis Accelerometer\Gyroscope MEMS.
- NEW: Added support for LPS22HB 2 axis Barometer\Thermometer MEMS.
- EX.  Global version number moved to 1.1.0.
- EX:  Updated HTS221 to 1.1.1.
- EX:  Updated L3GD20 to 1.1.1.
- EX:  Updated LIS3DSH to 1.1.1.
- EX:  Updated LIS3MDL to 1.1.1.
- EX:  Updated LPS25H to 1.1.1.
- EX:  Updated LSM303DLHC to 1.1.1.
- EX:  Updated LSM6DS0 to 1.1.1.
- HAL: Fixed binary instead of logic operator in STM32F4 HAL (bug #946).
- HAL: Fixed Mikroe clicker 2 misaligned board file (bug #945).
- EX:  Fixed ChibiOS/EX documentation misalignments (bug #943).


Giovanni


Return to “Releases”

Who is online

Users browsing this forum: No registered users and 2 guests