Andrew Tridgell
999919424b
hwdef: allow for MCO pin to be configured
...
this allows for hwdef.dat lines like this:
PA8 MCO1 RCC
PC9 MCO2 RCC
you can control the scaling by defining the following:
- STM32_MCO1SEL
- STM32_MCO1PRE_VALUE
- STM32_MCO2SEL
- STM32_MCO2PRE_VALUE
2023-08-25 07:37:12 +10:00
Tom Pittenger
ed43f095ce
AP_HAL_ChibiOS: add AP_BATTERY_ESC_TELEM_OUTBOUND_ENABLED to defaults_periph
2023-08-22 16:14:36 -07:00
Peter Barker
103caac92c
AP_HAL_ChibiOS: add support for DroneCAN RCInput packets
2023-08-19 20:27:24 +10:00
Peter Barker
bb6f0ae527
AP_HAL_ChibiOS: improve gating of use of AP_InternalError library
...
- gate calls into library directly on the define
- INTERNAL_ERROR becomes empty if library not compiled in
2023-08-17 09:16:46 +10:00
Peter Barker
19bd97a893
chibios_hwdef.py: permit board ID to be specified as a string
2023-08-17 09:13:54 +10:00
Peter Barker
a11df25490
chibios_hwdef.py: enforce presence of bootloader if embedding desired
2023-08-17 08:37:31 +10:00
Peter Barker
7273c8416a
AP_HAL_ChibiOS: prevent Periph bricking problem when paniccing early
...
if Periph panics before we mark the scheduler as initialised then we don't watchdog, which we really need to do on periph nodes so they can be re-flashed conveniently.
2023-08-16 17:21:30 +10:00
Andy Piper
c057cc5485
AP_HAL_ChibiOS: add get_output_mode() and use it to print correct banner for iomcu
...
add support for undef of STM32 lines and DMA_NOMAP
add support for F103 running at 24Mhz
add f103 variants of iofirmware
reduce memory usage in iomcu for new model
correct pwm output reporting
split iofirmware into config + mcu to allow f103 definition
don't enable non-existant timers on F103
2023-08-15 06:53:48 +10:00
Tom Pittenger
2b30fbcfb2
AP_HAL_ChibiOS: disable RPM by default on Periph
2023-08-11 13:31:45 -07:00
Peter Barker
e638925ee0
AP_HAL_ChibiOS: chibios_hwdef.py: fix minor bugs
...
also mark as flake8-clean
2023-08-11 10:41:02 +10:00
Peter Barker
536f3ac922
chibios_hwdef.py: minor flake8 fixes
...
whitespace, long lines, ambiguous variables etc
2023-08-11 10:41:02 +10:00
Peter Barker
ceab0180ec
AP_HAL_ChibiOS: remove use of HAL_BUILD_AP_PERIPH
...
turn torqeedo off in chibios_hwdef.py instead for Periph
2023-08-09 17:39:49 +10:00
Peter Barker
68e3b1e79b
AP_HAL_ChibiOS: move rangefinder rotation default down into AP_Periph
2023-08-09 17:39:49 +10:00
Peter Barker
53d5d1b9a9
AP_HAL_ChibiOS: break out include files for firmware defaults
2023-08-08 11:45:50 +10:00
Tom Pittenger
772465fef3
AP_HAL_ChibiOS: fix whitespace
2023-08-06 09:20:08 +10:00
bugobliterator
e6b51df7cd
AP_HAL_ChibiOS: dynamically allocate memory for MAC Peripheral
2023-08-06 09:20:08 +10:00
Tom Pittenger
f66327d97d
AP_HAL_ChibiOS: Ethernet related memory allocations
2023-08-06 09:20:08 +10:00
Tom Pittenger
3b79ff0ad3
AP_HAL_ChibiOS: add hooks to compile Networking
2023-08-06 09:20:08 +10:00
Andrew Tridgell
9d5560fc42
hwdef: default 2nd USB endpoint to MAVLink2
2023-07-31 19:03:13 +10:00
Peter Barker
dd325a7aaf
AP_HAL_ChibiOS: disable terrain unless SD card available
2023-07-19 17:25:18 +09:00
Peter Barker
092afa54a9
AP_HAL_ChibiOS: defaults for board log directory and terrain directory in chibios_hwdef.py
2023-07-19 17:25:18 +09:00
Andrew Tridgell
a3eba8bbd3
HAL_ChibiOS: enable UART monitor
...
enabled if GPS moving baseline available or the board flash size is
256k or over
2023-07-12 17:06:02 +10:00
Andrew Tridgell
7a1b7e85be
HAL_ChibiOS: default AP_BOOTLOADER_ALWAYS_ERASE to 1 on AP_Periph
2023-07-10 06:52:44 +10:00
Peter Barker
d0b967097e
AP_HAL_ChibiOS: process @include lines within hwdef files
2023-07-04 17:36:32 +10:00
Peter Barker
53e6f289e5
AP_HAL_ChibiOS: factor out a write_processed_defaults_file method
2023-07-04 17:36:32 +10:00
Peter Barker
26359204bd
AP_HAL_ChibiOS: tidy defaults.parm handling
2023-07-04 17:36:32 +10:00
Peter Barker
3869c4c0e9
AP_HAL_ChibiOS: add and use AP_SBUSOUTPUT_ENABLED
...
.... which will allow periphs to instantiate this if they really feel like it, and for it to be removed on smaller boards on the custom build server (and potentially on lower-specced boards.
2023-06-27 10:10:41 +10:00
Peter Barker
55227bc487
Tools: add and use AP_GPS_ENABLED
2023-06-21 22:28:48 +10:00
Peter Barker
3657852e30
AP_HAL_ChibiOS: add and use AP_BARO_ENABLED
2023-06-21 22:28:48 +10:00
Peter Barker
b3c5889d7d
AP_HAL_ChibiOS: add and use AP_COMPASS_ENABLED
2023-06-21 22:28:48 +10:00
Peter Barker
e11384454f
AP_HAL_ChibiOS: add and use AP_AHRS_ENABLED
2023-06-21 22:28:48 +10:00
Peter Barker
209cba7f89
AP_HAL_ChibiOS: create and use AP_BATTERY_ENABLED
...
simply as a way to get HAL_PERIPH_ENABLE_BATTERY out of the main code
2023-06-21 22:28:48 +10:00
Peter Barker
2932dea4ff
AP_HAL_ChibiOS: add option to disable relay and servorelay libraries
2023-06-20 09:36:39 +10:00
Peter Barker
9a24a3f61d
AP_HAL_ChibiOS: allow CrashCatcher to be disabled via hwdef
2023-06-14 18:39:11 +10:00
Peter Barker
3aaeb0f29c
AP_HAL_ChibiOS: allow AP_SCRIPTING_ENABLED to come from hwdef files
2023-06-09 16:10:52 +10:00
Peter Barker
0ec35718d7
AP_HAL_ChibiOS: use HAL_PROXIMITY_ENABLED in place of HAL_PERIPH_ENABLE_PRX
...
boolean truth rather than defines, and simplifies code
2023-06-08 11:53:01 +10:00
Martin Luessi
00c8c24b1e
AP_HAL_ChibiOS: increase FLASH_RAM and rename FDCAN to CAN for H750
2023-06-06 19:19:10 +10:00
Martin Luessi
0c93800ec1
AP_HAL_ChibiOS: Copy vector table to RAM if external flash is primary
2023-06-06 19:19:10 +10:00
Andrew Tridgell
4946ce5431
HAL_ChibiOS: revert recent USB changes
...
these are causing some boards to crash on startup. Tested with a
QiotekZealotH743 which doesn't get out of setup_usb_strings()
once we have debugged this we can re-add the functionality
2023-06-03 16:50:30 +10:00
bugobliterator
f7d3969116
AP_HAL_ChibiOS: enable write protection on USB msd
...
also fixes support for MSD on FS
2023-05-31 18:40:17 +10:00
bugobliterator
6d6c791fdf
AP_HAL_ChibiOS: add support for mass storage device
2023-05-31 18:40:17 +10:00
bugobliterator
cc302d8b8c
AP_HAL_ChibiOS: add support for OTG HS
2023-05-31 18:40:17 +10:00
Andrew Tridgell
7234ec2e52
HAL_ChibiOS: fixed USB pass-thru for 2nd USB endpoint
...
we need to align the endpoint ID in the structure
2023-05-29 08:55:38 +10:00
Peter Barker
4bcd4decb1
AP_HAL_ChibiOS: add and use AP_RCPROTOCOL_ENABLE_SET_RC_PROTOCOLS
2023-05-26 14:26:27 +10:00
bugobliterator
b5617a9ff8
Revert "AP_HAL_ChibiOS: disable watchdog in hwdef.h not in-line in code"
...
This reverts commit ccfad8ceea
.
2023-05-23 09:00:11 +10:00
Peter Barker
0c7a16b03d
AP_HAL_ChibiOS: use chibios_hwdef to define NOTIFY_LED_OVERRIDE_DEFAULT
2023-05-18 07:53:22 +10:00
Peter Barker
586851e40f
hwdef: create and use convenient is_periph_firmware method
2023-05-17 18:39:51 +10:00
Peter Barker
30131a2f36
AP_HAL_ChibiOS: replace HAVE_FILESYSTEM_SUPPORT with backend defines
2023-05-17 09:40:39 +10:00
Peter Barker
6aeeb3d51d
AP_HAL_ChibiOS: consolidate AP_Periph serialmanager defaults
2023-05-16 10:16:10 +10:00
Peter Barker
2d7123fcff
AP_HAL_ChibiOS: add and use AP_RCPROTOCOL_ENABLED
2023-05-16 09:16:37 +10:00
Henry Wurzburg
d0ac8f3016
AP_HAL_ChibiOS: normalize SerialManagers ports defaults to allow inclusion in hwdefs
2023-05-11 18:45:53 +10:00
Peter Barker
db6deee9e1
hwdef: chibios_hwdef.py becomes a library
2023-05-10 17:14:43 +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
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
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
8ef92805e1
AP_HAL_ChibiOS: support for OCTOSPI
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
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
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
Henry Wurzburg
efd0937568
AP_HAL_ChibiOS: rename/remove HAL_BUZZER_ON to DEFAULT_BUZZ_ON_LVL
2023-04-23 11:19:50 +10:00
Henry Wurzburg
be94015dba
AP_HAL_ChibiOS: remove unused HAL_BUZZER_OFF defines
2023-04-22 13:51:09 +10:00
Tom Pittenger
20d89c510b
AP_HAL_ChibiOS: AP_KDECAN_ENABLE 0 by default
2023-04-17 11:52:52 +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
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
39b226c46b
AP_HAL_ChibiOS: support EXPECTED_CLOCKS and assert on meaningful ones for H7
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
bugobliterator
97f92d9354
AP_HAL_ChibiOS: add support for initialising extra sensors as AUX
2023-03-23 13:53:44 +11:00
Peter Barker
32086826de
AP_HAL_ChibiOS: add and use RC_Channel_config.h
2023-03-22 14:25:09 +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
Peter Barker
144c3ef42c
AP_HAL_ChibiOS: add and use option to compile SLCAN support out of code
2023-03-15 19:08:09 +11:00
Peter Barker
5576595006
AP_HAL_ChibiOS: specify AP_EXTERNALAHRS_ENABLED for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
1b75f564f0
AP_HAL_ChibiOS: specify compass feature enables for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
48ec224b8c
AP_HAL_ChibiOS: specify AP_BATTERY_ESC_ENABLED for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
f58f8841a1
AP_HAL_ChibiOS: specify HAL_SUPPORT_RCOUT_SERIAL for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
18b574a400
AP_HAL_ChibiOS: specify AP_STATS_ENABLED for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
806f0bf97a
AP_HAL_ChibiOS: specify HAL_GENERATOR_ENABLED for periph in chibios_hwdef.py
2023-03-12 09:35:35 +11:00
Peter Barker
b52f54d480
AP_HAL_ChibiOS: add defines for all battery backends
2023-03-10 08:48:24 +11:00
Peter Barker
f47e60d1ea
AP_HAL_ChibiOS: add and use AP_WINCH_ENABLED
2023-03-03 20:59:06 +11:00
Andy Piper
59c59b8b28
AP_HAL_ChibiOS: support more configurations with betaflight conversion tool
2023-03-02 07:57:34 +11:00
Peter Barker
21836d792a
AP_HAL_ChibiOS: remove calls to save_fault_watchdog if on bootloader
2023-03-01 12:01:03 +11:00
Peter Barker
48639c6810
AP_HAL_ChibiOS: add SD card support to bootloader
2023-02-28 11:26:04 +11:00
Peter Barker
8b70587092
AP_HAL_ChibiOS: rename HAL_SCHEDULER_ENABLED to AP_SCHEDULER_ENABLED
...
there's AP_HAL::Scheduler which confuses this
2023-02-28 11:26:04 +11:00
Peter Barker
8d29116982
AP_HAL_ChibiOS: add more comments to generated hwdef.h
...
End-delimiters for e.g. AP_Periph defaults etc
2023-02-28 11:26:04 +11:00
Peter Barker
d72d02ca47
AP_HAL_ChibiOS: remove convenience debug code based on new define
...
bootloaders (at least the ones that need to fit into 16kB pages) don't really have the space for this sort of debug.
I figure if you're debugging a bootloader fault you probably have the know-how to get his information yourself based on the code now being excluded, or add it back in.
2023-02-26 17:20:23 +11:00
bugobliterator
090ef6f2e4
AP_HAL_ChibiOS: add HAL_WITH_MCU_MONITORING define for H757
2023-02-11 16:07:07 +11:00
Tom Pittenger
b0f0733ec3
A_HAL_ChibiOS: add HAL_NMEA_OUTPUT_ENABLED 0
2023-02-07 21:12:07 +11:00
Peter Barker
dd139a3a63
AP_HAL_ChibiOS: gate mavlink things on HAL_GCS_ENABLED, not HAL_BOOTLOADER_BUILD
2023-02-01 18:46:28 +11:00