Commit Graph

287 Commits

Author SHA1 Message Date
Bruce Luckcuck 99a9543968 Add support for LSM6DSO gyro/acc
Also supports the LSM6DSOX variant which has the additional machine learning core (not used by Betaflight).
2020-06-21 16:22:29 -04:00
Michael Keller a8085bef8b
Merge pull request #9759 from etracer65/pid_init_separate
Split initialization from pid.c for flash savings
2020-06-22 00:35:42 +12:00
Michael Keller 7ce6f2688d
Merge pull request #9641 from hydra/bf-h7-linker-script-cleanup-1 2020-06-22 00:23:56 +12:00
Michael Keller b2e99c6651
Merge pull request #9771 from shellixyz/fix/frsky_crc 2020-05-07 23:39:01 +12:00
Michel Pastor 347483250b Fix CRC algo for FrSky S.Port and F.Port 2020-05-07 01:25:51 +02:00
Bruce Luckcuck f3c1e4e07f Change gyro driver initialize-only files to size-optimized
The following driver files only contain initialization and configuration fuctions and were erroneously set up for speed-optimization. Moving them to size-optimization saves significant space. They all share common runtime functions contained in `drivers/accgyro/accgyro_mpu.c` which is correctly speed-optimized.

```
drivers/accgyro/accgyro_mpu6050.c
drivers/accgyro/accgyro_mpu6500.c
drivers/accgyro/accgyro_spi_mpu6000.c
drivers/accgyro/accgyro_spi_mpu6500.c
drivers/accgyro/accgyro_spi_mpu9250.c
drivers/accgyro/accgyro_spi_icm20689.c
```

Also added explicit `#ifdef USE_` around the code of some of the drivers missing it. Doesn't result in any space savings as the compiler optimizes out the unused functions. But better in the long-term as it will flag any cases where the code might be called without proper bounding.

Saves 10704 bytes on STM32F7X2.
2020-05-04 16:43:47 -04:00
Bruce Luckcuck c06106e2d1 Split initialization from pid.c for flash savings
Move low performance requirements initialization code into pid_init.c and optimize that for size.

Saves 2688 bytes for target STM32F7X2.
2020-05-03 13:58:55 -04:00
Dominic Clifton 09ac5be8d6 Cleanup and de-duplicate H7 linker scripts 2020-03-26 16:50:21 +01:00
Dominic Clifton fb6f93bc0d Remove 'flash' from the ram-based linker script filename. 2020-03-26 16:37:00 +01:00
Michael Keller bbdc1bd586
Merge pull request #9489 from mikeller/move_targets_into_legacy_for_4_1_6
Move targets into legacy targets for 4.1.6.
2020-03-17 22:05:11 +13:00
Michael Keller 94005fda6c
Merge pull request #9584 from etracer65/bmi270_compile_optimization
Change BMI270 driver compilation to speed-optimized
2020-03-16 08:54:08 +13:00
Michael Keller b729c3cc99
Merge pull request #9582 from etracer65/gyro_init_separate
Split initialization from gyro.c for flash savings
2020-03-15 10:16:30 +13:00
Bruce Luckcuck cb14206b96 Change BMI270 driver compilation to speed-optimized
Also move the "fake" gyro driver from speed to size-optimized.
2020-03-14 11:29:53 -04:00
Bruce Luckcuck ad0e7154a7 Split initialization from gyro.c for flash savings
Move low performance requirements initialization code into gyro_init.c and optimize that for size.
2020-03-13 10:08:11 -04:00
mikeller ad4cc3d74f Cleaned up the inclusion of the microcode for BMI270. 2020-03-11 20:47:43 +13:00
mikeller 9a3ae13038 Added some more legacy targets. 2020-03-11 12:54:52 +13:00
jflyper ec2aac314d [I2C] Introduce computational I2C waveform configuration for HAL based MCUs
Tested with
Nucleo-F722ZE I2C1 on PB8,PB9
Nucleo-H743ZI I2C1 on PB8,PB9 and I2C4 on PF14,PF15
2020-03-10 12:11:50 +09:00
Bruce Luckcuck 447cbac988 Add support for Bosch BMI270 gyro/accelerometer sensor 2020-03-08 18:56:50 -04:00
mikeller f6dcc09f65 Reduced the number of target groups to build in CI from 6 to 3. 2020-02-18 00:42:08 +13:00
Michael Keller 0ea28638c8 Move targets into legacy targets for 4.1.6. 2020-02-17 08:21:09 +13:00
Michael Keller 67ae416ec2
Merge pull request #9410 from mikeller/move_targets_into_legacy_for_4_1_5
Move targets into legacy targets for 4.1.5.
2020-02-17 08:10:20 +13:00
mikeller 39b62cb6c1 Added command to bind RX to MSP. 2020-02-06 13:36:27 +13:00
Michael Keller b4191b02e0 Move targets into legacy targets for 4.1.5. 2020-01-24 13:28:14 +13:00
Michael Keller ff1df466f3
Merge pull request #9369 from mikeller/add_unified_target
Added 'unified' target to Makefile.
2020-01-23 13:24:45 +13:00
Michael Keller 5c0d9e7d39
Merge pull request #9307 from mikeller/move_targets_into_legacy_for_4_1_4
Move targets into legacy targets for 4.1.4.
2020-01-21 13:41:21 +13:00
jflyper be923434b8 Rename FLASH_SIZE to TARGET_FLASH_SIZE 2020-01-20 12:30:28 +09:00
mikeller 5ac2114b75 Added 'unified' target to Makefile. 2020-01-17 01:33:18 +13:00
mikeller 378bb26e36 Move targets into legacy targets for 4.1.4. 2019-12-23 23:34:41 +13:00
Michael Keller c9674fd488
Move targets into legacy targets for 4.1.3. (#9181)
Move targets into legacy targets for 4.1.3.
2019-12-23 23:25:49 +13:00
Bruce Luckcuck 04844bd5a1 Refactor common USB MSC code and improve activity LED
Eliminated the duplicated MSC functions in the architecture specific files and moved to a shared common.

Improved the activity indicating LED and made it consistent between onboard flash and sd card mass storage mode.
2019-12-02 22:08:19 -05:00
Alberto García Hierro 37e66b3dda Add support for FrSky OSD
- Add displayWriteFontCharacter() for font writing, removing all max7456
specific code.
- Add displayIsReady() for asynchronous display initialization
- Add displayBeginTransaction()/displayCommitTransaction() for display
transactions, which allow performing complex drawing operations without
flickering
- Add displayGetCanvas(), which retrieves the canvas associated with a
display (if it has it)
- Add canvas implementation for pixel based access for a display
- Add FrSkyOSD driver and displayPort driver
- Enable FrSkyOSD driver for targets with flash > 256
- Rename max7456_symbols.h to osd_symbols.h
2019-11-30 22:06:36 +00:00
Bruce Luckcuck 8320467871 Fix download URLs for gcc 9.2.1 2019-11-28 12:26:56 -05:00
Michael Keller 75dda319fb Update gcc to 9.2.1. 2019-11-27 16:08:22 +13:00
Michael Keller 365ecaae9c
Removed the outdated official target list. (#9220)
Removed the outdated official target list.
2019-11-25 19:02:48 +13:00
mikeller a302b5bae2 Removed ATOMIC_BARRIER check, fixed ITCM_RAM overflow. 2019-11-25 01:16:08 +13:00
mikeller 1a2b9f422a Removed the outdated official target list. 2019-11-24 19:18:47 +13:00
Steffen Windoffer 4affef7e5a update to gcc 8.3.1 2019-11-24 13:58:07 +13:00
mikeller cedcf2d7e2 Added calibration menu to CMS. 2019-11-19 13:59:52 +13:00
mikeller 333425f419 Move targets into legacy targets for 4.1.3. 2019-11-17 14:46:15 +13:00
Michael Keller 33ba8a043e
Move targets into legacy targets for 4.1.2. (#9123)
Move targets into legacy targets for 4.1.2.
2019-11-17 10:04:09 +13:00
Michael Keller 33c2ccecf1
Added facility to use GPIO pins for fast debugging. (#8809)
Added facility to use GPIO pins for fast debugging.
2019-11-06 13:35:54 +13:00
Michael Keller bd240140ec
Moved MCU specific defines into 'common_pre.h' if not used in t… (#9117)
Moved MCU specific defines into 'common_pre.h' if not used in the STM32 libraries.
2019-10-31 01:14:54 +13:00
Michael Keller fadc45cbcb
Cleaned up parameter groups in Makefile. (#9116)
Cleaned up parameter groups in Makefile.
2019-10-31 01:14:35 +13:00
Michael Keller f3d1be6b0f
Moved 'config.[ch]' into the 'config/' directory. (#9121)
Moved 'config.[ch]' into the 'config/' directory.
2019-10-29 20:23:07 +13:00
mikeller 0aeece6b36 Move targets into legacy targets for 4.1.2. 2019-10-28 16:49:57 +13:00
Michael Keller b83e10481f
Removed legacy targets from the list of targets built in CI. (#9049)
Removed legacy targets from the list of targets built in CI.
2019-10-28 16:46:28 +13:00
mikeller 4a7904695e Moved 'config.[ch]' into the 'config/' directory. 2019-10-28 11:17:25 +13:00
mikeller 00149dbf96 Reduced list to only MATEKF405 for 4.1.1. 2019-10-28 10:51:04 +13:00
mikeller 11b3ba224c Moved MCU specific defines into 'common_pre.h' if not used in the STM32 libraries. 2019-10-27 23:09:33 +13:00
mikeller c2a64c79fc Cleaned up parameter groups in Makefile. 2019-10-27 22:36:42 +13:00