Commit Graph

174 Commits

Author SHA1 Message Date
Dominic Clifton 115a584713 HAL - Fix issues with HAL USB timeouts on fast processors.
* Occurs more frequently on >=480Mhz CPUs.
* Occurs more frequently on RELEASE builds due to optimizations.

Patch comes from here:

https://community.st.com/s/question/0D50X0000BCMFx0SQH/usbhs-ulpi-on-stm32h750

Confirmed fixed on H730 @ 520Mhz RELEASE build.
2021-12-23 12:36:02 +01:00
Mathias Rasmussen 87c259a26e Fix use of floating point math functions 2021-12-21 04:18:59 +01:00
Dominic Clifton 91483d2e8e STM32H7 - SDMMC Fix the short busy loop being compiled out by newer
versions of GCC.

STM32H7 - Don't go into an infinite loop if an SDIO read fails.

STM32H7 - Generate compiliation error for non-8Mhz crystals when SDCARD
via SDIO is used.  Prevents accidental overclocking of hardware.

Avoid double-init of SD card when CONFIG_IN_SDCARD is used.

Note: There's no SD_DeInit() function.

STM32H7 - Fix MSC SD initialisation when using USE_DMA_SPEC.
2021-09-10 02:28:29 +12:00
Steve Evans fb97b44a33 Tidy up SPI sequence indexing
Advance fdevice->currentWriteAddress in m25p16_callbackWriteComplete()
2021-09-07 00:11:49 +12:00
Steve Evans ab66795eeb G4 SPI DMA support 2021-08-31 23:29:51 +12:00
Steve Evans f39467c396 Use static definition for ClassData to support USB MSC DMA on G4 2021-08-30 12:54:04 +01:00
Steve Evans 9629f96676 New memory section types for DMA 2021-05-17 23:36:04 +01:00
mikeller 53187c5367 Switched to 'maximum FIFO' version of the BMI270 microcode. 2021-04-28 01:10:45 +12:00
Bruce Luckcuck 37dbbd0755 Add GPS coordinates OSD elements display variants; add support for Open Location Code display
Adds variations in GPS coordinate OSD element display:
1. Fractional degrees with 7 digits (default) - 000.0000000
2. Fractional degrees with 4 digits - 000.0000
3. Degrees, minutes, seconds - 000^00'00.0"E
4. Open Location Code (sometimed called Google Plus Code) - 23ABC4R8+M37

Uses Open Location Code library from:
https://github.com/google/open-location-code

Added support for `STATE(GPS_FIX_EVER)` to differentiate from having a fix now (`STATE(GPS_FIX)`) vs. ever having a fix.

Logic change to only display coordinates from the GPS module once a fix has been initially established. This prevents displaying interim coordinates supplied by the GPS while the fix is still being establised as these coordinates can be inaccurate by hundreds of miles. Once a fix is established initially then the coordinates will continue to be displayed even if the fix is lost or degrades in quality.

Add logic to "blink" the coordinates if the 3D fix is lost after initially being established. Alerts the user that the coordinate display may be inaccurate or no longer being updated. We want to keep the coordinates displayed to aid recovery if the user loses the fix (like crashing upside down).

Replace GPS defines `LAT` and `LON` used throughout the code with the enumeration:
```
typedef enum {
    GPS_LATITUDE,
    GPS_LONGITUDE
} gpsCoordinateType_e;
```

The Open Location Code option is bounded with `USE_GPS_PLUS_CODE` to allow it to be excluded if needed for targets with limited flash space. It currently fits for F411 but we may have to remove it in the future.
2021-04-26 23:43:11 +12:00
Steve Evans 823d0edf99 [H7][LIB] Remove duplicate definition of assert_param from LL spi 2021-04-03 14:03:54 +01:00
Steve Evans f71bb41166 Fix H7 USB MSC support to use same structure naming as F7, and to ensure that data buffers are cache aligned so that USB, SD card and QSPI DMAs function correctly 2020-10-08 21:08:10 +01:00
jflyper f2810551e7 [H7][LIB][SDMMC] Workaround for SDMMC Errata 2.11.4
Application of

STM32H750 - Apply workaround to the SDMMC Errata 2.11.4 (8446832)

to V1.6.0
2020-09-14 11:09:37 +09:00
jflyper 0397a1618a [H7][LIB][USB] Middlewares change: Fix memory corruption
Application of
[H7] USB LIB Middlewares change: Avoid null hhid from being deferenced
to V1.6.0
2020-09-14 11:09:37 +09:00
jflyper fd11348dce [H7][LIB][USB] Modify USB Library for composite device
Includes changes from 4e487f6
2020-09-14 11:09:21 +09:00
jflyper c3f2632405 [H7][LIB] Remove duplicate definition of assert_param from LL dma & Tim 2020-09-14 11:07:25 +09:00
jflyper 5b75338aff [H7][LIB] Revert some function in stm32h7xx_hal_tim.h to global
TIM_DMADelayPulseCplt (HAL_TIM_DMADelayPulseCplt) was changed to static
in 1.7 or 1.8, but this will cause timer_hal.c which uses
HAL_TIM_DMADelayPulseCplt not to build.
2020-09-14 11:07:25 +09:00
jflyper c4fbe44e28 [H7][LIB] Take care of UNUSED parameters in V1.8.0 2020-09-14 11:07:25 +09:00
jflyper 2b16f050ab [H7][LIB] Modify HAL SPI driver for const-ness 2020-09-14 11:07:25 +09:00
jflyper a88bc07769 [H7][LIB][USB] usbd_def: disable insane defs of MIN and MAX 2020-09-14 11:07:25 +09:00
jflyper 8d74d61b70 [H7][LIB][USB] Import "Middleware" from V1.8.0 distribution 2020-09-14 11:07:24 +09:00
jflyper b1172b9cd2 [H7][LIB] Import FW V1.8.0 library 2020-09-14 11:07:24 +09:00
jflyper 35cdd784fa [H7][LIB] Remove V1.6.0 FW library 2020-09-14 11:07:16 +09:00
Davor Kustec 3c6a37007d Fixes from review + new PR 2020-08-31 16:40:38 +02:00
mikeller ad4cc3d74f Cleaned up the inclusion of the microcode for BMI270. 2020-03-11 20:47:43 +13:00
Bruce Luckcuck 7f03b42ac0 Required modifications to the BoschSensortec/BMI270-Sensor-API library 2020-03-08 18:58:16 -04:00
Bruce Luckcuck 447cbac988 Add support for Bosch BMI270 gyro/accelerometer sensor 2020-03-08 18:56:50 -04:00
jflyper c08b321dee [H7][LIB][SDMMC] Workaround for SDMMC Errata 2.11.4
Application of

STM32H750 - Apply workaround to the SDMMC Errata 2.11.4 (8446832)

to V1.6.0
2020-02-08 12:38:57 +09:00
jflyper 172ce0fc2c [H7][LIB][USB] Middlewares change: Fix memory corruption
Application of
[H7] USB LIB Middlewares change: Avoid null hhid from being deferenced
to V1.6.0
2020-02-08 12:38:57 +09:00
jflyper 79fa75b2b2 [H7][LIB][USB] Modify USB Library for composite device 2020-02-08 12:38:57 +09:00
jflyper 6725595f37 [H7][LIB] Remove duplicate definition of assert_param from LL dma & Tim 2020-02-08 12:38:57 +09:00
jflyper 3a42a373bd [H7][LIB] Take care of UNUSED parameters in V1.6.0 2020-02-08 12:38:57 +09:00
jflyper 6d486f0566 [H7][LIB] Modify HAL SPI driver for const-ness 2020-02-08 12:38:57 +09:00
jflyper a4519df277 [H7][LIB][USB] usbd_def: disable insane defs of MIN and MAX 2020-02-08 12:38:56 +09:00
jflyper b49f9e1f59 [H7][LIB][USB] Import "Middleware" from V1.6.0 distribution 2020-02-08 12:38:45 +09:00
jflyper 6f293d01d4 [H7][LIB] Import FW V1.6.0 library
Removed MiddleWares
2020-02-08 12:30:23 +09:00
jflyper 6e8a03bf64 [H7][LIB] Remove V1.4.0 FW library 2020-02-08 04:50:25 +09:00
jflyper 9fea8fc08d [G4][LIB] Fix LL_DMA_{Set,Get}PeriphRequest
Fix bad handling of DMA_TypeDef argument in LL_DMA_{Set,Get}PeriphRequest() inline macro.
This bug causes peripheral requests for DMA2 to be set in DMAMUX channels for DMA1.

This is fixed in FW library V1.1.0.
2020-01-15 10:45:39 +09:00
jflyper 53e81732f6 [G4][LIB][USB] Middlewares change: Fix memory corruption 2020-01-15 10:45:39 +09:00
jflyper 651c40c397 [G4][LIB][USB] Remove insane defs for MIN and MAX 2020-01-15 10:45:39 +09:00
jflyper 7dfac1aaea [G4][LIB] Modify USB Middleware library for addition of HID and MSC
MSC updates
2020-01-15 10:45:39 +09:00
jflyper a8b589de88 [G4][LIB] Modify HAL SPI driver for const-ness to match call from current bus_spi driver 2020-01-15 10:45:39 +09:00
jflyper a5d08c91c5 [G4][LIB] Take care of unused parameters in USB library 2020-01-15 10:45:38 +09:00
jflyper ddd60b6fbb [G4][LIB] Take care of FLASH_SIZE symbol collision with BF 2020-01-15 10:45:33 +09:00
jflyper 5eef822b6a [G4][LIB] Import FW library V1.0.0 2020-01-13 23:55:09 +09:00
Michael Keller 15c63c0fca
Ignore warnings about access to packed struct in MAVlink as the… (#9239)
Ignore warnings about access to packed struct in MAVlink as the accessed member is actually aligned.
2019-11-29 02:51:58 +13:00
mikeller 52a66a24f9 Ignore warnings about access to packed struct in MAVlink as the accessed member is actually aligned. 2019-11-28 12:42:39 +13:00
mikeller c1e31617b1 Fixed the 'attribute' warning in H7 libraries. 2019-11-27 20:01:13 +13:00
mikeller 74f2f61452 Fixed warnings in STM libraries about ignored attributes. 2019-11-26 07:27:59 +13:00
jflyper 9ed7ceb47c Register changes fired by modified EOL code for html files 2019-10-03 03:18:37 +09:00
mikeller 865713460e Remove overshoot in warning suppression introduced in #8713. 2019-08-18 08:43:15 +12:00