Release Notes for STM32CubeMP1xx HAL and LL drivers

Copyright ©  2021 STMicroelectronics

Purpose

The STM32Cube HAL and LL, an STM32 abstraction layer embedded software, ensure maximized portability across STM32 portfolio.

The portable APIs layer provides a generic, multi instanced and simple set of APIs to interact with the upper layer (application, libraries and stacks). It is composed of native and extended APIs set. It is directly built around a generic architecture and allows the build-upon layers, like the middleware layer, to implement its functions without knowing in-depth the used STM32 device. This improves the library code reusability and guarantees an easy portability on other devices and STM32 families.

The Low Layer (LL) drivers are part of the STM32Cube firmware HAL that provides a basic set of optimized and one-shot services. The Low layer drivers, contrary to the HAL ones are not fully portable across the STM32 families; the availability of some functions depends on the physical availability of the relative features on the product. The Low Layer (LL) drivers are designed to offer the following features:

Update History

Main Changes

  • Maintenance release of HAL and LL drivers for STM32MP15xx devices

Contents

  • General updates to fix known defects and enhancements implementation
  • Major update of drivers for STM32MP15xx devices:
    • All HAL and LL Drivers
      • Update the way to declare licenses in Cube
    • ADC
      • fix TEMPSENSOR_CAL_VREFANALOG value ( 3000 => 3300)
      • fix VREFINT_CAL_ADDR in stm32mp1xx_ll_adc.h
      • fix ADC_CALIBRATION_TIMEOUT value for CPU Max at 800MHz
    • I2C, LPTIM, RNG, SPI
      • Alignment with other STM32 families (No API Change)
    • RCC
      • fix MISRA warnings [MISRAC2012-Rule-20.7]
      • fix some MISRA warnings
    • RTC
      • fix MISRA warnings [MISRAC2012-Rule-20.7]
    • QSPI:
      • Force the MDMA Source Increment to disable

Known Limitations

  • N/A

Supported Devices

  • The drivers provided support the following devices :
    • STM32MP157Cxx, STM32MP157Axx, STM32MP157Dxx, STM32MP157Fxx
    • STM32MP153Cxx, STM32MP153Axx, STM32MP153Dxx, STM32MP153Fxx
    • STM32MP151Cxx, STM32MP151Axx, STM32MP151Dxx, STM32MP151Fxx

Main Changes

Maintenance release of HAL and LL drivers for STM32MP15xx devices

Contents

  • General updates to fix known defects and enhancements implementation
  • Major update of drivers for STM32MP15xx devices:
    • DTS (TMPSENS)
      • Add Register Callback feature
    • EXTI
      • Remove management of C1EMRx registers which does not exist on the silicon
      • Fix typo issue with EXTI_LINE_20
    • GENERIC
      • Fix issue on the HAL_SYSCFG_DisableIOCompensation function
      • Replace SET_BIT usage in some condition (set/clear register pairs)
    • RCC
      • LL - Fix compilation issue ( Align CMSIS Device and LL definitions removing LL_APB3_GRP1_PERIPH_PMBCTRL and LL_AHB5_GRP1_PERIPH_AXIMC)
    • SMARTCARD:
      • Alignment with other STM32 families (some API Change)
    • USART
      • Alignment with other STM32 families (No API Change)

Known Limitations

  • None

Dependencies

  • None

Supported Devices

  • The drivers provided support the following devices :
    • STM32MP157Cxx, STM32MP157Axx, STM32MP157Dxx, STM32MP157Fxx
    • STM32MP153Cxx, STM32MP153Axx, STM32MP153Dxx, STM32MP153Fxx
    • STM32MP151Cxx, STM32MP151Axx, STM32MP151Dxx, STM32MP151Fxx

Main Changes

Maintenance release of HAL and LL drivers for STM32MP15xx devices

Contents

  • General updates to fix known defects and enhancements implementation
  • Major update of drivers for STM32MP15xx devices:
    • ADC: No API change
      • Typo corrections in HAL & LL drivers
      • LL - assert_param should check constraint between modes continuous and discontinuous
      • HAL - Fix IRQ handler in case of injected conversion + IT mode + trigger timer
    • DFSDM: No API change
      • MISRA update
      • rework “Callback registration” section
    • EXTI: No API change
      • Define missing EXTI_REG3
    • GENERIC: No API change
      • HAL configuration file : add SMARTCARD and SRAM in template file
    • RCC: No API change
      • Important define update to be compliant with Header file update ( CMSIS device)
      • Fix compilation issue ( to be compliant with Header file update on CMSIS device)
    • SAI
      • HAL: Alignment for inter STM32 families portability:
        • some API’s change to take in consideration
    • SDMMC: No API change
      • HAL - Fix loop increment in SD_HighSpeed and SD_UltraHighSpeed function
    • SMARTCARD
      • HAL: Implement SMARTCARD Driver: New API
      • HAL - rename UART_FIFOMODE_ENABLE into SMARTCARD_FIFOMODE_ENABLE

Known Limitations

  • None

Dependencies

  • None

Supported Devices

  • The drivers provided support the following devices :
    • STM32MP157Cxx, STM32MP157Axx, STM32MP157Dxx, STM32MP157Fxx
    • STM32MP153Cxx, STM32MP153Axx, STM32MP153Dxx, STM32MP153Fxx
    • STM32MP151Cxx, STM32MP151Axx, STM32MP151Dxx, STM32MP151Fxx

Main Changes

Maintenance release of HAL and LL drivers for STM32MP15xx devices

Contents

  • General updates to fix known defects and enhancements implementation
  • Major update of drivers for STM32MP15xx devices:
    • ADC
      • Update HAL_ADC_Start_DMA() API to enable DMA mode
      • LL : new function to add or remove paths.
        • LL_ADC_SetCommonPathInternalChAdd and LL_ADC_SetCommonPathInternalChAdd : New API
    • CORTEX
      • Implement LL Driver
    • FMC
      • Implement PSRAM Driver: New API
    • GENERIC
      • Add EXTERNAL_CLOCK_VALUE in conf_template file.
    • RTC
      • HAL&LL : Implement RTC Driver (including TAMP) : New API
    • TIM
      • HAL&LL: Remove reference to COMP1 and COMP2
      • LL:
        • Fix TIM Break source definition
        • RepetitionCounter value depends on GP or Advanced tmers
    • UART
      • HAL: Alignment with STM32F0/F3/H7 (for inter STM32 families portability)
        • some API’s change to take in consideration
    • UTILS
      • LL: Add new Part Number defines related to LL_GetDevicePartNumber()consideration

Known Limitations

  • None

Dependencies

  • None

Supported Devices

  • The drivers provided support the following devices :
    • STM32MP157Cxx, STM32MP157Axx, STM32MP157Dxx, STM32MP157Fxx
    • STM32MP153Cxx, STM32MP153Axx, STM32MP153Dxx, STM32MP153Fxx
    • STM32MP151Cxx, STM32MP151Axx, STM32MP151Dxx, STM32MP151Fxx

Main Changes

First Maintenance release of HAL and LL drivers for STM32MP15xx devices

Contents

  • General updates to fix known defects and enhancements implementation
  • Implementation of LL APIs:
    • DMA / EXTI / HSEM / LPTIM / PWR / SPI / TIM / WWDG / I2C
  • Major update of drivers for STM32MP15xx devices:
    • Rename RCC_IPNAME_BCLK with RCC_IPNAME_BUSNAME
      • Impact HAL_RCC / HAL_LPTIM / HAL_UART / HAL_USART
    • ADC
      • HAL: Remove ADC_TWOSAMPLINGDELAY_9CYCLES definition
      • HAL: Remove ADC_OVERSAMPLING_RATIO_xxx defnitions
      • LL : Add ADC Internal Channel VDDCORE management ( LL_ADC_PATH_INTERNAL_VDDCORE)
      • HAL & LL: Update for linear calibration and Use ‘ADC_LINEAR_CALIB_REG_COUNT’
    • DMA
      • HAL: Use DMA_Stream_TypeDef structure for instance (structure change)
    • Generic
      • HAL: Update the SystemCoreClock global variable ( needed in case of Coprocesseur use case)
      • HAL: Add enable/disable functions for IO Compensation mechanism (new API)
      • HAL: Align HAL_CONF template with HAL package
    • GPIO
      • Improve HAL_GPIO_TogglePin reentrancy robustness
      • Improve robustness of HAL_GPIO_DeInit() on EXTI management
      • Update IS_GPIO_PIN assert macro
    • IPCC
      • LL: Add service to get the number of supported channels (new API)
    • LPTIM
      • HAL: Alignment with STM32H7/WB (for inter STM32 families portability): some API’s change to take in consideration
    • RCC
      • HAL: Rename __HAL_RCC_TMPSENS_CLK_xxx to __HAL_RCC_DTS_CLK_xxx
      • HAL: Update to not overwrite Tick priority
    • SPI
      • HAL: Add new feature Reload Feature + Duplex Packet DXP (new API)
    • TIM
      • HAL: Alignment with STM32F0/F3/H7/WB (for inter STM32 families portability): some API’s change to take in consideration

Known Limitations

  • None

Dependencies

  • None

Main Changes

First official release of HAL and LL drivers for STM32MP15xx devices

Known Limitations

  • None

Dependencies

  • None