Full rework of Ethernet HAL driver (#16)

The reworked Ethernet HAL driver brings multiple changes and a compatibility break vs. previous Ethernet HAL driver.
Main changes are listed here:
- Add support for PTP and ARP
- Rework packets reception and buffers allocation for better integration and performance
- Rework packets transmission and buffers allocation (using interrupts instead of polling and prevent packets lock during transmission)
- Enhance DMA management
- Decouple Ethernet HAL driver from PHY driver
- Enhance maximum throughput in RX (94Mbs) and TX (92Mbs)
- Enhance footprint (new driver size is 6% less than previous driver)
- Full integration with LwIP (with and without FreeRTOS) and NetXDuo with ThreadX
- MISRA-C 2012, code coverage analysis, static code analysis and robustness validation added
4 files changed
tree: 909f5aab324ff522f391c6303b792b032f57eab8
  1. .github/
  2. _htmresc/
  3. Inc/
  4. Src/
  5. CODE_OF_CONDUCT.md
  6. CONTRIBUTING.md
  7. License.md
  8. README.md
  9. Release_Notes.html
README.md

STM32CubeH7 HAL Driver MCU Component

latest tag

Overview

STM32Cube is an STMicroelectronics original initiative to ease developers' life by reducing efforts, time and cost.

STM32Cube covers the overall STM32 products portfolio. It includes a comprehensive embedded software platform delivered for each STM32 series.

  • The CMSIS modules (core and device) corresponding to the ARM(tm) core implemented in this STM32 product.
  • The STM32 HAL-LL drivers, an abstraction layer offering a set of APIs ensuring maximized portability across the STM32 portfolio.
  • The BSP drivers of each evaluation, demonstration or nucleo board provided for this STM32 series.
  • A consistent set of middleware libraries such as RTOS, USB, FatFS, graphics, touch sensing library...
  • A full set of software projects (basic examples, applications, and demonstrations) for each board provided for this STM32 series.

Two models of publication are proposed for the STM32Cube embedded software:

  • The monolithic MCU Package: all STM32Cube software modules of one STM32 series are present (Drivers, Middleware, Projects, Utilities) in the repository (usual name STM32Cubexx, xx corresponding to the STM32 series).
  • The MCU component: each STM32Cube software module being part of the STM32Cube MCU Package, is delivered as an individual repository, allowing the user to select and get only the required software functions.

Description

This stm32h7xx_hal_driver MCU component repo is one element of the STM32CubeH7 MCU embedded software package, providing the HAL-LL Drivers part.

Release note

Details about the content of this release are available in the release note here.

Compatibility information

In this table, you can find the successive versions of this HAL-LL Driver component, in line with the corresponding versions of the full MCU package:

It is crucial that you use a consistent set of versions for the CMSIS Core - CMSIS Device - HAL, as mentioned in this table.

HAL Driver H7CMSIS Device H7CMSIS CoreWas delivered in the full MCU package
Tag v1.6.0Tag v1.6.0Tag v5.4.0Tag v1.5.0 (and following, if any, till next HAL tag)
Tag v1.7.0Tag v1.7.0Tag v5.4.0Tag v1.6.0 (and following, if any, till next HAL tag)
Tag v1.8.0Tag v1.8.0Tag v5.4.0Tag v1.7.0 (and following, if any, till next HAL tag)
Tag v1.9.0Tag v1.9.0Tag v5.4.0Tag v1.8.0 (and following, if any, till next HAL tag)
Tag v1.10.0Tag v1.10.0Tag v5.6.0Tag v1.9.0 (and following, if any, till next HAL tag)
Tag v1.10.1Tag v1.10.1Tag v5.6.0Tag v1.9.1 (and following, if any, till next HAL tag)

The full STM32CubeH7 MCU package is available here.

Troubleshooting

If you have any issue with the software content of this repository, you can file an issue here.

For any other question related to the product, the tools, the environment, you can submit a topic on the ST Community/STM32 MCUs forum.