Commit Graph

1950 Commits

Author SHA1 Message Date
Andy Piper 99e6958e36 AP_HAL_ChibiOS: FoxeerH743 GA release 2023-05-10 17:07:45 +10:00
Peter Barker 871797d436 hwdef: correct double-definitions of DEFAULT_NTF_LED_TYPES
these hwdefs include other hwdefs which define the samething.

Remove where identical to file beingincluded, undef otherwise
2023-05-07 20:13:44 +10:00
Peter Barker 85012b003e hwdef: correct compilation for KakuteF4Mini
we include KakuteF4 which also sets this define, so you end up with a redefinition error
2023-05-06 21:59:58 +10:00
Henry Wurzburg fc42f8f9be AP_HAL_ChibiOS: move NTF_LED_TYPES from defaults to hwdef 2023-05-04 07:45:12 +10:00
Henry Wurzburg 8293c1f8c9 AP_HAL_ChibiOS: change BUILD_DEFAULT_LED_TYPE to new pattern 2023-05-04 07:45:12 +10:00
Peter Barker 43f9f08b8f AP_HAL_ChibiOS: define accepted RC backends for IOMCU in its hwdef files 2023-05-03 19:06:33 +10:00
Peter Barker a4ee729035 hwdef: airbotf4: minimize this board
not currently building.

The FLASH_RESERVE_START_KB at 64 means we're short on space on this board
2023-05-03 18:35:26 +10:00
Andy Piper 95437d248f AP_HAL_ChibiOS: advanced timers are now determined automatically on L4+ 2023-05-03 07:39:39 +10:00
Henry Wurzburg e5336a8e9e AP_HAL_ChibiOS:correct KakauteH7 IMU label 2023-05-02 10:02:35 +10:00
Andy Piper d69b8c2693 AP_HAL_ChibiOS: fix usage of ADC2 and ADC3 in STM32H730 2023-04-28 08:31:15 +10:00
Andy Piper e6c1897dd3 AP_HAL_ChibiOS: provide complete ADC2/ADC3 maps for STM32H750 and STM32H743
Fix dummy pin generation
2023-04-28 08:31:15 +10:00
Andy Piper 26c59349d5 AP_HAL_ChibiOS: use HAL_XIP_ENABLED to denote running in external flash 2023-04-28 08:31:15 +10:00
Andy Piper ff1661a8de AP_HAL_ChibiOS: use STM32_FLASH_NBANKS for flash actions 2023-04-28 08:31:15 +10:00
Andy Piper 5b43926d0a AP_HAL_ChibiOS: for H730/H750 running in XIP mode do not reset clocks
create mcuconf file for STM32H730 (type2)
allow OTG2 to be used as OTG1 on MCUs that need it
remove redundant OTG enablement
2023-04-28 08:31:15 +10:00
Andy Piper b75ff2e2ae AP_HAL_ChibiOS: allow only ADC2 to be used 2023-04-28 08:31:15 +10:00
Andy Piper 798fc05ba8 AP_HAL_ChibiOS: clean up linker map on H730 and H750
use regular ChibiOS RAM areas for RAM functions
exclude board.o from RAM functions and add some comments
use separate linker script for H750
use correct RAM area for process stack on H750/H743
update EXCLUDE items to put __early_init in flash on H730 and H750
optimize H730 ramfunc usage
2023-04-28 08:31:15 +10:00
Andy Piper 8b8f5eadd6 AP_HAL_ChibiOS: detect QSPI and OSPI separately for setting NO_RESET 2023-04-28 08:31:15 +10:00
Andy Piper 7516f04106 AP_HAL_ChibiOS: create two configurable non-cacheable memory areas for DMA 2023-04-28 08:31:15 +10:00
Andy Piper 1607e66977 AP_HAL_ChibiOS: prototype CubeMX configuration for H730 2023-04-28 08:31:15 +10:00
Andy Piper 8ef92805e1 AP_HAL_ChibiOS: support for OCTOSPI 2023-04-28 08:31:15 +10:00
Andy Piper c4d30879d2 AP_HAL_ChibiOS: hwdef for SPRacing H7RF 2023-04-28 08:31:15 +10:00
Andy Piper 61e70a5fb1 AP_HAL_ChibiOS: add support in hwdef for OCTOSPI 2023-04-28 08:31:15 +10:00
Andy Piper f8dd6a1b2a AP_HAL_ChibiOS: rename QSPIDevice to WSPIDevice 2023-04-28 08:31:15 +10:00
Andy Piper cc086ab8d4 AP_HAL_ChibiOS: support for STM32H730xx MCUs
correct calculation of advanced timers
add support for linker script configuration in mcu config script
use linker script configuration for H750 and H730
add single OTG_HS support on H730 via OTG2
make sure complimentary channels get advanced timers
complemntary timers do not require advanced mode
allow custom clockspeeds of 550Mhz
correct debug pins on H730
support custom clockrate of 520Mhz on H730
correct H730 USB end point pins
restructure linker script for STM32H730
allow chibios_hwdef.py to set advanced timer on L431
don't define RAMFUNC on STM32H730
clock tree for STM32H730
create non-cacheable memory area for SDMMC DMA
don't look for RAM_MAP in bootloader with external flash
2023-04-28 08:31:15 +10:00
Peter Barker 1f3aecf41b AP_HAL_ChibiOS: use defaults to turn off CRSF telem on IO firmware 2023-04-27 18:31:30 +10:00
Peter Barker 926c7d64b1 AP_HAL_ChibiOS: add and use AP_BOOTLOADER_FLASHING_ENABLED 2023-04-26 22:55:36 +10:00
bugobliterator 09c6500ac7 bootloaders: add CubeRed bootloaders 2023-04-26 18:04:00 +10:00
bugobliterator 91c0bda4da AP_HAL_ChibiOS: add hwdef for CubeRedSecondary 2023-04-26 18:04:00 +10:00
bugobliterator 918a7355c5 AP_HAL_ChibiOS: add CubeRedPrimary hwdef 2023-04-26 18:04:00 +10:00
bugobliterator 0343b789e6 AP_HAL_ChibiOS: add support for mixed internal and external flash 2023-04-26 18:04:00 +10:00
bugobliterator 626fd9e77f AP_HAL_ChibiOS: add support for marking ADC pins with identifier 2023-04-26 18:04:00 +10:00
bugobliterator 726dcda24f AP_HAL_ChibiOS: add support for using ADC2 and ADC3 on H7 2023-04-26 18:04:00 +10:00
Andrew Tridgell e4ce423c46 hwdef: DMA is off on I2C on F7 and H7 by default
no need to have it in hwdef.dat
2023-04-25 14:19:09 +10:00
Andrew Tridgell 64cd58c21a ChibiOS: disable DMA on I2C on F7 and H7 by default
this was already done on many (most?) boards, and greatly reduces DMA
sharing which improves performance of UARTs. This changes the default
to no DMA on I2C
2023-04-25 14:19:09 +10:00
Andrew Tridgell 5024261e2e HAL_ChibiOS: fixed hwdef DMA resolver dependency on python2/python3
we need to use sorted keys in dictionaries to ensure we end up with
the same DMA mapping when using py2 and py3

fixes #15534
2023-04-25 11:30:56 +10:00
Peter Barker 6933000395 AP_HAL_ChibiOS: add and use AP_NOTIFY_TONEALARM_ENABLED 2023-04-23 16:24:02 +10:00
Henry Wurzburg efd0937568 AP_HAL_ChibiOS: rename/remove HAL_BUZZER_ON to DEFAULT_BUZZ_ON_LVL 2023-04-23 11:19:50 +10:00
Peter Barker dafc24b7a1 AP_HAL_ChibiOS: tidy external baro probing 2023-04-23 08:28:55 +10:00
Peter Barker d3ce0356b8 hwdef: remove uart7 from thepeach-r1 bootloader to get it compiling
out of space otherwise
2023-04-22 13:58:02 +10:00
Peter Barker e37b3f9fcd hwdef: remove uart7 from thepeach-k1 bootloader to get it compiling
out of space otherwise
2023-04-22 13:58:02 +10:00
Peter Barker 587f64b784 hwdef: remove uart7 from PixSurveyA1-IND bootloader to get it compiling
out of space otherwise
2023-04-22 13:58:02 +10:00
Peter Barker e3ee5ca822 hwdef: remove uart7 from PixPilot-v3 bootloader to get it compiling
out of space otherwise
2023-04-22 13:58:02 +10:00
Henry Wurzburg be94015dba AP_HAL_ChibiOS: remove unused HAL_BUZZER_OFF defines 2023-04-22 13:51:09 +10:00
Peter Barker 1d8a5ac92d AP_HAL_ChibiOS: correct CubOrange-periph-heavy compilation
canmanager isn't enabled, so no piccolocan
2023-04-20 21:51:40 +10:00
Peter Barker c3c758a2e4 hwdef: DrokekP3Pro loses usart3 2023-04-19 19:05:14 +10:00
Andy Piper 7db0c387cc AP_HAL_ChibiOS: update MambaF405v2 for ICM42688, bdshot and DMA on UART1 2023-04-19 17:47:51 +10:00
Andy Piper 87a3c34c70 AP_HAL_ChibiOS: add BMI270 and ICM42688 to FlywooF745 2023-04-19 17:42:26 +10:00
Andy Piper 794335bb26 AP_HAL_ChibiOS: remove erroneous FlywooF745v2 2023-04-19 17:42:26 +10:00
Peter Barker 5121b33c03 hwdef: remove more features from SkyViper 2023-04-18 11:45:39 +10:00
Henry Wurzburg 73011c81fd AP_HAL_ChibiOS: correct MatekH743 storage size 2023-04-18 11:25:25 +10:00
Peter Barker 1fb879322c hwdef: correct compilation of OMNIBUSF7V2
redefition erro
2023-04-17 21:26:41 +10:00
Tom Pittenger 9cf5759435 AP_HAL_ChibiOS: enable KDECAN on CubeOrange-periph 2023-04-17 11:52:52 +10:00
Tom Pittenger 20d89c510b AP_HAL_ChibiOS: AP_KDECAN_ENABLE 0 by default 2023-04-17 11:52:52 +10:00
Peter Barker 3c86167544 hwdef: only allow specific VisualOdom devices (right now, MAVLink) 2023-04-15 22:19:21 +10:00
Andy Piper fc6cb74ac7 AP_HAL_ChibiOS: SDIO PWRSAV needs to be enabled on F4/F7 2023-04-14 08:05:19 +10:00
Peter Barker 9e0c83503e hwdef: minimize_features.inc: nominate all included battery backends
this will stop the number growing on our smallest boards
2023-04-14 07:49:16 +10:00
Andrew Tridgell 3f33457404 HAL_ChibiOS: fixed L4 mcu type detection 2023-04-14 07:48:56 +10:00
tsubashmail@gmail.com ae9e15ade5 HAL_ChibiOS: port for STM32L4+ processor
Added support for stm32l4+ processor

- Added scripts for hwdef generation
- Tested in custom hardware prototype (stm32l4r5vit6)
- Tested all peripherals and auto pilot modes.
2023-04-14 07:48:56 +10:00
Peter Barker 92dea59620 hwdef: SkyViper doesn't need most proximity sensors 2023-04-13 07:07:18 +10:00
Andy Piper 078778de30 AP_HAL_ChibiOS: hwdef for MatekF405-TE/VTOL including bdshot 2023-04-12 17:24:15 +10:00
Peter Barker aab771d380 AP_HAL_ChibiOS: use AP_BEACON_ENABLED instead of BEACON_ENABLED 2023-04-12 09:24:39 +10:00
Andrew Tridgell 78862a334e AP_HAL_ChibiOS: cleanup more defines and classes 2023-04-11 10:31:31 +10:00
Andrew Tridgell 3f47d4c71c AP_HAL_ChibiOS: rename more variables, types and defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell 9d5815ce7b AP_HAL_ChibiOS: change UAVCAN_ENABLED to DRONECAN_ENABLED 2023-04-11 10:31:31 +10:00
Henry Wurzburg 9371e60431 AP_HAL_ChibiOS: Add SpeedyBeeF405Wing 2023-04-11 10:22:29 +10:00
Andrew Tridgell e0f2f060c6 AP_HAL_ChibiOS: rename AP_UAVCAN to AP_DroneCAN 2023-04-08 07:11:23 +10:00
Peter Barker 9643f44ecc hwdef: skyviper has only companion support for precision landing 2023-04-05 18:33:19 +10:00
Andy Piper 2c7698f748 AP_HAL_ChibiOS: update MatekF405-CAN bootloader to fit 2023-03-29 20:49:40 +11:00
Andy Piper a115681373 AP_HAL_ChibiOS: add support for building USB MSD 2023-03-29 20:49:40 +11:00
Andy Piper a56a2ec2c1 AP_HAL_ChibiOS: correct SDC power saving 2023-03-29 20:49:40 +11:00
Andy Piper b452701a2b AP_HAL_ChibiOS: make sure MCUCONF subtype is defined 2023-03-29 20:49:40 +11:00
Andy Piper 73da2162d2 AP_HAL_ChibiOS: QSPI prescaler is indexed from 1 2023-03-29 20:49:40 +11:00
Andy Piper 4b4d2c52c8 AP_HAL_ChibiOS: correct QSPI flash and GPIO speeds on SPRacingH7 and DevEBoxH7v2 2023-03-29 20:49:40 +11:00
Andy Piper 39b226c46b AP_HAL_ChibiOS: support EXPECTED_CLOCKS and assert on meaningful ones for H7 2023-03-29 20:49:40 +11:00
Andy Piper d9d252a1b7 AP_HAL_ChibiOS: update clock trees for H7 variants 2023-03-29 20:49:40 +11:00
Andy Piper 667b386356 AP_HAL_ChibiOS: port to ChibiOS 21.11.x
convert RCOutput to new virtual timer interface
cope with SDC vs SDMMC
use new SPIv3 driver. Correct clocks for SDMMCv2.
add STM32L431 support
port ChibiOS config to version 8
support SPIv3 driver model v2 on H7
use currcore in debug options
use new mmc API
disable speed optimizations in the bootloader to save a little flash
upgrade to halconf v8.4
relax constraints on QSP/flash clock.
add support for disabling QSPI reset in main firmware
2023-03-29 20:49:40 +11:00
Andy Piper 4a8ce32f90 AP_HAL_ChibiOS: remove USART3 to match fmuv5 and save some flash
remove UART7 on fmuv3 to save enough flash to fit in 16k
2023-03-29 20:49:40 +11:00
Peter Barker 7990e4f964 SimOnHW: correct compilation on CubeOrangePlus
this was at 2 to reduce CPU load.

But particularly when CubeOrangePlus is playing around with auxiliary IMUs we really want to be running on SimOnHardware just what we're running on the normal firmware.  We can find CPU cycles elsewhere....
2023-03-28 21:25:11 +11:00
tzarjakob bd50e3eacf AP_HAL_ChibiOS: configuration of Precision Landing for custom build server 2023-03-27 09:04:07 +11:00
Andrew Tridgell 686da203f5 hwdef: fixed default GPS type for C-RTK2-HP 2023-03-25 10:59:28 +11:00
Andrew Tridgell 4141dd5bbe HAL_ChibiOS: support starting the clock at non-zero
for testing time wrap bugs
2023-03-24 08:31:25 +11:00
Henry Wurzburg 0029da959e AP_HAL_ChibiOS:improve MambaF405MINI defaults 2023-03-23 13:54:04 +11:00
bugobliterator 97f92d9354 AP_HAL_ChibiOS: add support for initialising extra sensors as AUX 2023-03-23 13:53:44 +11:00
xiao a3c0e884b8 AP_HAL_ChibiOS: added PixSurveyA1-IND 2023-03-22 18:41:15 +11:00
Andy Piper 89f7913d32 AP_HAL_ChibiOS: hwdef for FlywooF745v2
Add SPL06 baro to FlywooF745v1
2023-03-22 18:35:08 +11:00
Peter Barker 75b3cec196 AP_HAL_ChibiOS: mark heavy periphs as using RC_Channel
these things compile vast amounts of the code-base so we need to turn RC_Channel on even if we don't instantiate the RC_Channels object
2023-03-22 14:25:09 +11:00
Peter Barker 32086826de AP_HAL_ChibiOS: add and use RC_Channel_config.h 2023-03-22 14:25:09 +11:00
Ryan Friedman 5dbfec1e33 AP_HAL_ChibiOS: Add poll implementation
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Arsh Pratap <arshpratapofficial@gmail.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2023-03-22 09:22:36 +11:00
Peter Barker 1326d1c3df AP_HAL_ChibiOS: tidy enablement RC FastSBUS support
use the the hwdef to turn it off on IOMCU
2023-03-21 12:08:06 +11:00
bugobliterator f3dc4216d2 AP_HAL_ChibiOS: allow instantiation of upto 5 IMUs on CubeOrangePlus 2023-03-21 10:04:16 +11:00
Peter Barker 8278d5ad76 AP_HAL_ChibiOS: move OSD minimizement to minimize_features.inc 2023-03-21 08:47:53 +11:00
Michael Oborne 76beaeab64 CubeOrangePlus-SimOnHardWare: add support 2023-03-20 10:09:31 -07:00
Peter Barker d200ed1b08 AP_HAL_ChibiOS: correct defaulting of camera backends in minimize_features.inc 2023-03-19 09:08:41 +11:00
Andrew Tridgell 0489323551 HAL_ChibiOS: Revert "HAL_ChibiOS: fix a memory corruption bug on STM32H757"
This reverts commit 63633368f5.

this broke CAN1 on some H743 boards
2023-03-19 07:17:28 +11:00
Andrew Tridgell 63633368f5 HAL_ChibiOS: fix a memory corruption bug on STM32H757
this fixes an issue where a variable in SRAM1 gets set to a bad value
when we reset AHB1 with the top bit (a reserved bit)

the bug was only reproducible with this particular commit:

https://github.com/tridge/ardupilot/commits/cubeorangplus-crash-boot-bisect

but likely is just luck that it triggered on that commit. In this
instance it triggered as AP_OSD::singleton was reset to non-nullptr,
causing a panic() in AP_OSD::AP_OSD()

compiler was gcc 10.2-2020-q4
2023-03-18 08:35:51 +11:00
Andrew Tridgell 32578b796b hwdef: fixed polarity of VDD_5V_PERIPH_EN on several boards
we can tell these are incorrect as they init to LOW, and previously we
didn't have handling of VDD_5V_PERIPH_EN, so we know that LOW is
enabled or the boards would not have worked

this fixes GPS on Pixhawk1
2023-03-17 17:40:51 +11:00
Peter Barker 1c5f5b6ef2 AP_HAL_ChibiOS: add option to not include SRXL in build 2023-03-15 22:45:23 +11:00
Andrew Tridgell 3e2fdc7a0d hwdef: added rGNSS GPS peripheral 2023-03-15 19:08:53 +11:00
Andrew Tridgell d29d4d97e7 hwdef: added rFCU board 2023-03-15 19:08:53 +11:00
Andrew Tridgell 91227433e9 HAL_ChibiOS: support VDD_5V_PERIPH_EN with active high 2023-03-15 19:08:53 +11:00