Commit Graph

1292 Commits

Author SHA1 Message Date
Andrew Tridgell 0ffe2e75be HAL_ChibiOS: fixed warnings 2019-08-27 15:40:43 +10:00
Andrew Tridgell 9d760a2956 HAL_ChibiOS: disable re-entrancy in FATFS
not needed now we have a semaphore in AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell bf79b65e07 HAL_ChibiOS: simplify stubs code 2019-08-27 15:40:43 +10:00
Andrew Tridgell d1565a96c5 HAL_ChibiOS: wrap cacheBuffer functions
needed to avoid problem with end() method in UARTDriver shadowing with
F7 implementation of cache macros
2019-08-27 15:40:43 +10:00
Andrew Tridgell b867ef35c0 HAL_ChibiOS: use AP_Filesystem API 2019-08-27 15:40:43 +10:00
Andrew Tridgell b30f3697d2 HAL_ChibiOS: fixed build without ISR limit 2019-08-27 10:29:56 +10:00
Andrew Tridgell 97c56c068e HAL_ChibiOS: update board IDs for AP_Periph firmwares 2019-08-27 10:29:56 +10:00
Andrew Tridgell 63f39c2bd6 HAL_ChibiOS: fixed build of iomcu firmware 2019-08-27 10:29:56 +10:00
Andrew Tridgell 64921b64f5 HAL_ChibiOS: enable sensors in peripheral firmwares 2019-08-27 10:29:56 +10:00
Andrew Tridgell fa76d1fbe6 HAL_ChibiOS: disable watchdog save in bootloader 2019-08-27 10:29:56 +10:00
Andrew Tridgell 5cbe85ee19 HAL_ChibiOS: allow for ADC and clock overrides 2019-08-27 10:29:56 +10:00
Andrew Tridgell dc89d10ccf HAL_ChibiOS: added hwdef.dat for CUAV_GPS 2019-08-27 10:29:56 +10:00
Andrew Tridgell c8806acaf5 HAL_ChibiOS: use AP_PERIPH env var 2019-08-27 10:29:56 +10:00
Andrew Tridgell cbc83d68cd HAL_ChibiOS: allow for CAN enable override on F4 2019-08-27 10:29:56 +10:00
Andrew Tridgell fb68fa8bc9 HAL_ChibiOS: fixed typo for 512k F4 parts 2019-08-27 10:29:56 +10:00
Andrew Tridgell e51a1a88df HAL_ChibiOS: initial hwdef-bl.dat for CUAV CAN GPS 2019-08-27 10:29:56 +10:00
Andrew Tridgell 66ab585a24 HAL_ChibiOS: setup defaults for CAN app versions 2019-08-27 10:29:56 +10:00
Andrew Tridgell d711bed405 HAL_ChibiOS: set default node ID of 117
this allows for flight controllers without DNA support
2019-08-27 10:29:56 +10:00
Andrew Tridgell ababe1e81d HAL_ChibiOS: disable UART support in f103-periph bootloader 2019-08-27 10:29:56 +10:00
Andrew Tridgell 2facfe0baa HAL_ChibiOS: support empty UART_ORDER
for CAN bootloader without uart support
2019-08-27 10:29:56 +10:00
Andrew Tridgell 9a7b52fd15 HAL_ChibiOS: added hwdef.dat for f103-periph 2019-08-27 10:29:56 +10:00
Andrew Tridgell 16bdaaa1af HAL_ChibiOS: added support for STM31F10x for AP_Periph 2019-08-27 10:29:56 +10:00
Stone white ec911710c9 hwdef: Enable Spektrum 3.3V VDD Power on fmuv5 2019-08-26 17:27:02 +10:00
Michael du Breuil 56e35e0712 AP_HAL_ChibiOS: Remove almost redundant code duplication from the HAL 2019-08-26 17:24:09 +10:00
Andrew Tridgell ffe0f338d3 HAL_ChibiOS: enable utime() API 2019-08-26 15:41:44 +10:00
Henry Wurzburg 00c111651a ChiBios: Omnibusf4pro hwdef tweak to allow active or passive buzzer 2019-08-26 12:22:53 +10:00
Andrew Tridgell aeb58cede1 HAL_ChibiOS: I2C timeout should be send+recv, not MAX(send,recv)
MAX() is right for SPI, not I2C
2019-08-26 09:13:39 +10:00
Andrew Tridgell 578e5dfdaa HAL_ChibiOS: add up i2c ISR count 2019-08-26 09:13:39 +10:00
Andrew Tridgell f8cfbb8062 HAL_ChibiOS: added ISR limit on I2C
this will prevent any possibility of an I2C interrupt storm. This is
designed to address the most likely cause of #11642
2019-08-25 17:12:16 +10:00
Andrew Tridgell 8080efbc6a HAL_ChibiOS: allow for blocking unbuffered uarts
this is used by AP_IOMCU to avoid a race condition where the mutex is
busy on write() causing a zero-length write and delayed output
2019-08-17 17:36:41 +10:00
Andrew Tridgell afc8a70ce4 HAL_ChibiOS: fixed a bug in wait_timeout() on UARTs
wait_timeout() could return true on a read of less bytes than are
expected.
2019-08-17 17:36:41 +10:00
Peter Barker 35c2406b17 AP_HAL_ChibiOS: add missing override keywords
This was causing CubeOrange not to build
2019-08-17 13:25:05 +10:00
Peter Barker 54b200a777 AP_HAL_ChibiOS: add missing uavcan-related override keywords 2019-08-14 16:33:29 +10:00
Andrew Tridgell 5e40921b42 HAL_ChibiOS: fixed reboot hold in bootloader
thanks to Tom for noticing this
2019-08-12 22:21:13 -07:00
Henry Wurzburg b6518b6b46 AP_HAL_ChiibOS: change omnibusf4 board type to be unique 2019-08-06 11:20:11 +10:00
Andrew Tridgell 4fca69c5e9 HAL_ChibiOS: renamed Pixhawk6 to Durandal
new name for FC from Holybro
2019-08-01 14:11:06 +10:00
Andrew Tridgell adcf9c4fa4 HAL_ChibiOS: added commented out baro on SPI5 for fmuv5
useful for SPI debugging
2019-07-29 10:09:08 +10:00
Andrew Tridgell 98f578394f HAL_ChibiOS: default OTG2 protocol to mavlink2 on most boards
For boards that haven't yet had a driver update in MissionPlanner to
cope with the 2nd OTG interface this change makes both interfaces work
as MAVLink

This also fixes an issue with connecting under a windows VM within
vmware
2019-07-26 21:58:57 +10:00
bugobliterator cba98096e9 HAL_ChibiOS: move to using hardcoded heater PWM polarity in iofirmware 2019-07-25 17:05:41 +10:00
Andrew Tridgell e57228646e HAL_ChibiOS: added unused CS pins for fmuv5
these are needed to ensure SPI works correctly if the unused pins are
later attached to a device
2019-07-19 16:58:10 +10:00
Andrew Tridgell 12dd33ac2b HAL_ChibiOS: added logging of hardware fault information in watchdog
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
Andrew Tridgell 2d5e4dcfa2 HAL_ChibiOS: fixed SemLine data in WDOG msg
semline was being overwritten in the setup() call
2019-07-15 08:08:54 +10:00
vierfuffzig bed92e8ca8 AP_HAL_ChibiOS: fix buzzer pin define on OMNIBUSF7V2 2019-07-13 17:26:43 +10:00
Andrew Tridgell 2f79639e36 HAL_ChibiOS: added support for MatekF765-Wing 2019-07-13 15:23:45 +10:00
reubenfinch cabd6aec8f AP_HAL_ChibiOS: Correct the README.md for fmuv5 boards
the IST8310 magnetometer uses I2C, not SPI
2019-07-12 10:59:48 +01:00
Andrew Tridgell 2f0a4ff1ab HAL_ChibiOS: fixed build on boards with less than max uarts 2019-07-12 17:01:21 +10:00
Andrew Tridgell 1919268801 HAL_ChibiOS: added OTG2 on all F7 and H7 boards with CAN
allows for SLCAN on 2nd port
2019-07-12 17:01:21 +10:00
Andrew Tridgell 02014776e8 HAL_ChibiOS: auto-set HAL_HAVE_DUAL_USB_CDC 2019-07-12 17:01:21 +10:00
Andrew Tridgell 0075b96f3a HAL_ChibiOS: added uartH 2019-07-12 17:01:21 +10:00
Siddharth Purohit dcf17e5bc2 HAL_ChibiOS: hwdef: add support for dual cdc on CubeYellow and CubeOrange 2019-07-12 17:01:21 +10:00
Siddharth Purohit 2f0d1336e6 HAL_ChibiOS: add support for dual usd cdc 2019-07-12 17:01:21 +10:00
anbello b65f5bf632 ChibiOS: hwdef revo-mini correct IMU rotation 2019-07-12 14:01:06 +10:00
Andrew Tridgell d2fe47d2e0 HAL_ChibiOS: dither heater pins to prevent magnetic impact 2019-07-12 12:46:27 +10:00
Andrew Tridgell b12cc57c64 HAL_ChibiOS: switched on fast sampling on IMU3 by default on hex cubes
as some people are flying with EK2_IMU_MASK=7 this reduces the risk of
aliasing on IMU3
2019-07-11 10:24:45 +10:00
Andrew Tridgell 3b0bd67afb HAL_ChibiOS: enable CAN on Pixhawk6 2019-07-08 12:19:20 +10:00
Siddharth Purohit 2f153a3577 HAL_ChibiOS: remove singleton interface from slcan_router 2019-07-08 12:18:29 +10:00
Siddharth Purohit 67c925865c HAL_ChibiOS: add support for CAN on STM32H7 boards 2019-07-08 12:18:29 +10:00
Peter Barker a61028c55d AP_HAL_ChibiOS: disable scripting if USE_FATFS=no 2019-07-08 09:55:46 +10:00
Andrew Tridgell 898150e460 HAL_ChibiOS: cope with calling delay_microseconds_boost() multiple times
needed for updated IMU wait code
2019-07-07 19:03:01 +10:00
Atxheli 7f3cb09da2 correct comment placement for second led 2019-07-04 08:36:33 +10:00
Hwurzburg a9783de61c correct include paths, uncomment alarm pin, fix conflict with rssi 2019-07-04 08:36:33 +10:00
Hwurzburg 3e3d7b8e7f Change to "include" style for new board, fix to allow LED to be used as status indicator 2019-07-04 08:36:33 +10:00
Hwurzburg 10838387c5 Split Omnibus F4 pro and non-pro into two boards to allow pro boards to have 8 pwm outputs 2019-07-04 08:36:33 +10:00
Alexey Kozin e5988f7153 AP_HAL_ChibiOS: fix voltage sensor connected to fmu adc 2019-07-02 06:42:11 +10:00
bugobliterator 7d4a758059 hwdef: fix default battery monitor pins for CubeOrange 2019-06-28 14:18:11 +10:00
Michael du Breuil a34ac14ec5 AP_HAL_ChibiOS: Make BOARD_FLASH_SIZE available at configure time 2019-06-18 00:06:32 -07:00
Peter Barker 1f4de871da AP_HAL_ChibiOS: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
vierfuffzig 7780e8ed00 AP_HAL_ChibiOS: add support for AIO and OSD board types
this allows init on board variant without onboard baro
2019-06-18 10:10:22 +10:00
Andrew Tridgell 51e187342b HAL_ChibiOS: move the power control changes to be only CubeBlack
This aims to fix #11455. I have been unable to reproduce the issue,
which leaves me thinking it is either a bootloader difference or a hw
difference between pixhawk1 clones and real pixhawk1 boards
2019-06-09 16:56:14 +10:00
Siddharth Purohit a926effee5 hwdef: iomcu set pin mode to input for autodetecting heater control level 2019-06-08 14:31:01 +10:00
Lucas De Marchi e66de36016 HAL_ChibiOS: fix I2C transaction without stop condition
Start using i2cSoftStop() instead of i2cStop() so the peripheral
continues to be enabled and with non-gated clock.  This allows time for
the I2C peripheral to continue the ack or stop.
2019-06-06 09:27:47 -07:00
Andrew Tridgell 73bc277470 HAL_ChibiOS: fixed KakuteF7 build
low on flash
2019-06-06 12:19:13 +10:00
Andrew Tridgell 2acaada884 HAL_ChibiOS: fixed OMNIBUSF7V2 build
ran out of flash for plane
2019-06-06 12:19:13 +10:00
Andrew Tridgell bfdf857b34 HAL_ChibiOS: fixed airbotf4 build 2019-06-06 12:19:13 +10:00
Andrew Tridgell 614a059819 HAL_ChibiOS: convert more boards to using new sensor config system 2019-06-05 18:54:40 +10:00
Andrew Tridgell ff603a1f0b HAL_ChibiOS: convert mini-pix 2019-05-30 15:39:57 +10:00
Andrew Tridgell 4548aa162b HAL_ChibiOS: convert mindpx-v2 2019-05-30 15:39:57 +10:00
Andrew Tridgell 91aa49ba6f HAL_ChibiOS: convert matek boards 2019-05-30 15:39:57 +10:00
Andrew Tridgell fca03bef8d HAL_ChibiOS: convert F4BY 2019-05-30 15:39:57 +10:00
Andrew Tridgell 8605060dfc HAL_ChibiOS: convert F35Lightning 2019-05-30 15:39:57 +10:00
Andrew Tridgell 288d5d6fe6 HAL_ChibiOS: convert DrotekP3Pro 2019-05-30 15:39:57 +10:00
Andrew Tridgell d90b05f685 HAL_ChibiOS: convert all fmuv5 boards to sensor config system 2019-05-30 15:39:57 +10:00
Andrew Tridgell 03bb94599b HAL_ChibiOS: support I2C sensor probes by bus mask 2019-05-30 15:39:57 +10:00
Andrew Tridgell fc1ec8a465 HAL_ChibiOS: convert airbot to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 82b171582e HAL_ChibiOS: added sensor config for cube varients 2019-05-30 15:39:57 +10:00
Andrew Tridgell c36d76c213 HAL_ChibiOS: convert Pixhawk1 to new sensor config
saves 26k of flash, making 1M boards work for longer
2019-05-30 15:39:57 +10:00
Andrew Tridgell eae852962e HAL_ChibiOS: fixed case of no IMU, BARO or COMPASS config settings 2019-05-30 15:39:57 +10:00
Andrew Tridgell 068e6ea8d2 HAL_ChibiOS: convert KakuteF4 and KakuteF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 1b0bf88c8f HAL_ChibiOS: convert crazyflie2 to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell b47ab5c8a9 HAL_ChibiOS: support I2C sensor config in hwdef.dat 2019-05-30 15:39:57 +10:00
Andrew Tridgell ceb9c3b83e HAL_ChibiOS: convert mRoControlZeroF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 5eb488303c HAL_ChibiOS: convert Pixracer to use new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell e198d552a8 HAL_ChibiOS: support IMU, COMPASS and BARO lines in hwdef.dat
this allows for main sensors to be set in hwdef.dat, making adding new
boards simpler
2019-05-30 15:39:57 +10:00
Phillip Kocmoud 734abe3d7d hwdef: Correct typo for mRo x2.1-777 USB PID
This needed to match the firmware directory which contains the compiled binaries hosted at http://firmware.ardupilot.org so that MissionPlanner can automatically download and update firmware.
2019-05-23 11:05:42 +10:00
Andrew Tridgell 59678840a8 HAL_ChibiOS: log SPI and I2C counters 2019-05-17 08:56:06 +10:00
Peter Barker f5190d1bcc AP_HAL_ChibiOS: use logger().WriteCritical(...) for WDOG message 2019-05-16 17:21:24 +10:00
Andrew Tridgell 0708b65c2d AP_HAL_ChibiOS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell 48302427c7 HAL_ChibiOS: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell a7eb85e1c5 HAL_ChibiOS: cope with nesting of expected_delay_ms() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 8d0bca6ba9 HAL_ChibiOS: log mavlink IDs and semaphore lines for watchdog
this gives a better chance of tracking down a hang
2019-05-15 15:33:48 +10:00
Andrew Tridgell 1b8cbfc6a4 HAL_ChibiOS: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell d368d95aa7 HAL_ChibiOS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell e3c80bf08f HAL_ChibiOS: fixed bootloader build 2019-05-15 15:33:48 +10:00
Andrew Tridgell d7a0eb42ee HAL_ChibiOS: added logging of watchdog data
log MON msgs in the leadup to a watchdog, and log a WDOG message after
a watchdog reset
2019-05-15 15:33:48 +10:00
Andrew Tridgell dbfe6b8019 HAL_ChibiOS: implement persistent_data for watchdog
this is a much simpler approach to persistent data
2019-05-15 15:33:48 +10:00
Andrew Tridgell 6333494d99 HAL_ChibiOS: disable peripheral power on boot on fmuv3
then enable after 100ms, and let settle for 20ms. This is to fix an
issue with peripheral power on consistency with all fmuv3 boards

Thanks to Philip for the suggestion
2019-05-11 18:45:18 +10:00
Andrew Tridgell ce9e9d8670 HAL_ChibiOS: end scheduler boost on expected delay
we want timer thread to be higher priority than main thread while in a
long operation
2019-05-11 05:56:34 +10:00
Phillip Kocmoud 16f1ec8ce2 HAL_ChibiOS: added missing AF functions for F777 2019-05-10 15:05:42 +10:00
Phillip Kocmoud 9709401595 HAL_ChibiOS: added hwdef for mRoControlZeroF7 2019-05-10 15:05:42 +10:00
Andrew Tridgell 2b0a30a2c5 HAL_ChibiOS: ensure we don't overflow bootloader area
this modifies the ld script to use the maximum size available for the
bootloader, so we can't accidentially grow the bootloader beyond its
max size
2019-05-06 12:36:41 +10:00
Andrew Tridgell 11021bbaa9 HAL_ChibiOS: fixed LEDs on new CUAVv5 revision 2019-05-03 16:32:00 +10:00
Andrew Tridgell 8d2f016cc8 HAL_ChibiOS: fixed LEDs on CUAVv5Nano
need to be opendrain
2019-05-03 16:32:00 +10:00
Peter Hall 26a6cccf21 AP_HAL_ChibiOS: KakuteF7 add two PWM pin options 2019-05-03 14:47:00 +10:00
Andrew Tridgell 4deb2c38f6 HAL_ChibiOS: fixed brick2 valid status in POWR flags for fmuv5
and fixed sense of VBUS
2019-05-03 10:32:41 +10:00
Jaaaky 464540ab56 AP_HAL_ChibiOS: tune delay for flashing bootloader
As the function can internally loop for 10 seconds
2019-05-01 14:23:20 +10:00
Andrew Tridgell f48d07ffca HAL_ChibiOS: added WARN_IF_UNUSED based on PR feedback 2019-04-30 10:16:38 +10:00
Andrew Tridgell ce9b75fdf0 HAL_ChibiOS: added timeouts on all SPI transfers
this is never expected to trigger unless we have a severe MCU error as
SPI transfers don't rely on a response from a device.

The only case that we could get a timeout is when a bug leads to use
doing transfers from memory that does not support the DMA
transaction (such as on H7). This change turns that from a immediately
fatal lockup into a bus error and failed sensor
2019-04-30 10:16:38 +10:00
Matt Lawrence f7383179e8 HAL CHIBIOS: Solo stock cube child of fmuv3 instead of CubeBlack
CubeBlack-Solo hardware def to use FMUv3 as its parent rather than CubeBlack.  Since this older cube doesn't have the same hardware as a new CubeBlack, it is causing conflicts.  Nearly everything is the same.
2019-04-29 11:14:46 +10:00
Michael du Breuil a4d9853f1d AP_HAL_ChibiOS: Actually enable the wrapper on remove 2019-04-26 08:07:19 +10:00
Jonathan Challinger 183b55d3df AP_HAL_ChibiOS: add define HAL_CHIBIOS_ARCH_CUBEBLACK to cubeblack hwdef 2019-04-24 11:45:14 +10:00
Andrew Tridgell 0461692ea5 HAL_ChibiOS: enable watchdog on IOMCU 2019-04-22 16:53:35 +10:00
Andrew Tridgell 352546c9f0 HAL_ChibiOS: removed unsafe ISR disable for bl update
can't disable interrupts and call a fn that takes a mutex
2019-04-22 16:53:35 +10:00
Andrew Tridgell 508aae8f2a HAL_ChibiOS: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell 730982b3c4 HAL_ChibiOS: fixed build with older gcc 2019-04-22 16:53:35 +10:00
Andrew Tridgell 2778a1b01e HAL_ChibiOS: save/restore home position in backup registers
# Conflicts:
#	libraries/AP_HAL_ChibiOS/hwdef/common/stm32_util.c
2019-04-22 16:53:35 +10:00
Andrew Tridgell f0f36c6237 HAL_ChibiOS: fixed watchdog timeout setting 2019-04-22 16:53:35 +10:00
Andrew Tridgell 3b5463f061 HAL_ChibiOS: allow for delay in bootloader flash 2019-04-22 16:53:35 +10:00
Andrew Tridgell 2476927048 HAL_ChibiOS: don't call internalerror for iomcu 2019-04-22 16:53:35 +10:00
Andrew Tridgell 63d21d995a HAL_ChibiOS: setup watchdog_reset internal error 2019-04-22 16:53:35 +10:00
Andrew Tridgell 9ca67dc811 HAL_ChibiOS: implement was_watchdog_armed() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 1acb7e977f HAL_ChibiOS: added ability to restore safety state on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 54cbf8ea9e HAL_ChibiOS: change to 2s timeout on watchdog
a bit more of a safety net against false positives for stable release
2019-04-22 16:53:35 +10:00
Andrew Tridgell 58aca561fd HAL_ChibiOS: fixed watchdog on H7 2019-04-22 16:53:35 +10:00
Andrew Tridgell 19526b5826 HAL_ChibiOS: implement scheduler->expect_delay_ms() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 8100c71a96 HAL_ChibiOS: added commented out test code for watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 03886f241e HAL_ChibiOS: implement was_watchdog_reset() 2019-04-22 16:53:35 +10:00
Andrew Tridgell a5309b3afa HAL_ChibiOS: record reason for reset
allows us to tell if reset was due to watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell 272c277056 HAL_ChibiOS: use BRD_OPTIONS to enable watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell c09df1ea7b HAL_ChibiOS: added IWDG watchdog support
this resets the MCU if the main loop stops for 1 second
2019-04-22 16:53:35 +10:00
Michael du Breuil b0f4611ddc AP_HAL_ChibiOS: Fix python3 with F7 builds 2019-04-20 12:33:44 +10:00
Randy Mackay 69882d9898 AP_HAL_ChibiOS: fix Pixhawk4 readme 2019-04-17 09:08:41 +09:00
Peter Barker 3c3b12ba77 AP_HAL_ChibiOS: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Andrew Tridgell 967c6462cb HAL_ChibiOS: rename Pixhawk4Pro to Pixhawk6 2019-04-16 04:33:17 +10:00
Andrew Tridgell 32ebd2080f HAL_ChibiOS: mark SDIO and SDMMC IO as pullup
this is needed for boards such as PixhackV3 which don't have hardware
pullups. Thanks to Hongle for reporting this.
2019-04-12 19:44:00 +10:00
Andrew Tridgell 006583d812 HAL_ChibiOS: fixed iomcu build with flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 7c726b2f42 HAL_ChibiOS: use hal.flash API 2019-04-11 13:22:53 +10:00
Andrew Tridgell 36f7116054 HAL_ChibiOS: implement flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell a767c15986 HAL_ChibiOS: change CUAVv5Nano default PWM count to 11 2019-04-08 08:21:39 -07:00
Andrew Tridgell c6637fbe38 HAL_ChibiOS: fixed CUAVv5Nano uarts 2019-04-08 08:21:39 -07:00
Andrew Tridgell ce4abf8dcb HAL_ChibiOS: support for CUAVv5Nano board
F765 with no IOMCU
2019-04-08 08:21:39 -07:00
Andrew Tridgell edd793c152 HAL_ChibiOS: fixed fallback to microSD for storage
this is used when FRAM fails on a board with microSD support. The
double init caused the validate() in the FATFS code to fail
2019-04-07 13:37:57 +10:00
Andrew Tridgell d59cf15594 HAL_ChibiOS: enable heater pin on Pixhawk4Pro 2019-04-06 10:08:39 +11:00
Siddharth Purohit 7b54103271 HAL_ChibiOS: set pwm select pins high for 3.3V PWMout on startup 2019-04-01 21:30:12 +11:00
Siddharth Purohit 051842ea34 HAL_ChibiOS: add support for PWM Voltage level selection on CubeYellow and CubeOrange 2019-04-01 21:30:12 +11:00
Tom Pittenger 91b0650765 AP_HAL_ChibiOS: rename dataflash to logger 2019-03-28 16:40:58 +11:00
Andrew Tridgell 591e2ebeea HAL_ChibiOS: remove unused config files
these do not build correctly
2019-03-15 20:08:26 +11:00
Andrew Tridgell d942b64584 HAL_ChibiOS: fixed NucleoH743 build 2019-03-15 20:08:26 +11:00
Andrew Tridgell bf0a4a23b2 HAL_ChibiOS: fixed build of crazyflie2 2019-03-15 20:08:26 +11:00
Andrew Tridgell b754d56ecb HAL_ChibiOS: fixed revo-mini build 2019-03-15 11:54:57 +11:00
Andrew Tridgell 69edd5a544 HAL_ChibiOS: fixed typos in hwdef.dat files 2019-03-15 11:54:57 +11:00
Andrew Tridgell cd27e3022f HAL_ChibiOS: check for prefix match on peripherals 2019-03-15 11:54:57 +11:00
Andrew Tridgell 3fd3e88d04 HAL_ChibiOS: fixed typo
thanks to Malcolm Churn for noticing
2019-03-15 08:51:52 +11:00
Andrew Tridgell b3f48a1477 HAL_ChibiOS: added CS line for Pixhawk4Pro temp sensor 2019-03-14 16:10:40 +11:00
Andrew Tridgell 2842063146 HAL_ChibiOS: optimize CubeYellow build
and fixed comment in CubeOrange
2019-03-11 12:40:21 +11:00
Andrew Tridgell 59652ad147 HAL_ChibiOS: added more IMU devices for Hex Cube boards 2019-03-11 12:40:21 +11:00
Andrew Tridgell 7577ebb33e HAL_ChibiOS: added bootloader hwdef for mindpx-v2 2019-03-11 09:58:12 +11:00
Andrew Tridgell f7b6f9d70b HAL_ChibiOS: added retries to flash based storage
this prevents a single flash write error from causing parameter reset
2019-03-11 09:52:19 +11:00
Andrew Tridgell 63895d8b0c HAL_ChibiOS: setup dummy pointers for H7 SPI 2019-03-10 21:53:06 +11:00
Andrew Tridgell 1414988870 HAL_ChibiOS: use spiSend/spiReceive
this fixes an issue with microSD on F405.
2019-03-10 21:53:06 +11:00
Andrew Tridgell 26d1371d25 HAL_ChibiOS: separate out DMA allocation for sdcard IO
this fixes an issue with DMA to SPI6 on STM32H7. On the H7 SRAM4 can
be used for DMA and BDMA to all devices except for SDMMC which uses
IDMA.

by separating out DMA of sdcard data from other data we can arrange
for DMA to all devices to work
2019-03-09 07:33:47 +11:00
Andrew Tridgell a7c91d1cb4 HAL_ChibiOS: show all SPI clocks 2019-03-09 07:33:47 +11:00
Siddharth Purohit fef81b6381 HAL_ChibiOS: add support for new main sensors 2019-03-06 20:47:10 +11:00
Andrew Tridgell 160de969a5 HAL_ChibiOS: simplify H7 clock tree setup
and push more peripherals to max of 100MHz
2019-03-04 21:42:07 +11:00
Andrew Tridgell 5bcfe41d1f HAL_ChibiOS: push H7 clock to 400MHz 2019-03-04 19:38:06 +11:00
Andrew Tridgell a59e1d0e0f HAL_ChibiOS: fixed H7 dma sharing between BDMA and DMA
the BDMA and DMA controllers have separate namespaces for streams, so
we can allocate a lot more streams than we were
2019-03-02 20:50:59 +11:00
Andrew Tridgell c7ca6d77c7 HAL_ChibiOS: H7 doesn't need a DMA mapping for SDMMC
it uses a dedicated internal DMA controller in the SDMMC peripheral
2019-03-02 20:50:59 +11:00
Andrew Tridgell 6f07d804b9 HAL_ChibiOS: adjust Pixhawk4Pro VBUS and DMA priority 2019-03-02 20:50:59 +11:00
Andrew Tridgell 603d9f6907 HAL_ChibiOS: fixed typo in ITCM base address 2019-03-02 09:01:20 +11:00
Andrew Tridgell 4c12ba4c2c HAL_ChibiOS: fixed SDMMC IRQ priority 2019-03-01 11:39:27 +11:00
Andrew Tridgell 7e1048c89b HAL_ChibiOS: enable UART inversion on H7 2019-03-01 11:39:27 +11:00
Andrew Tridgell 2f833c92d3 HAL_ChibiOS: enable SDMMC for CubeOrange 2019-03-01 11:39:12 +11:00
Andrew Tridgell 37010a568e HAL_ChibiOS: enable SDMMC on Pixhawk4Pro 2019-03-01 11:39:12 +11:00
Andrew Tridgell e192bc6c10 HAL_ChibiOS: adjust H7 clocks, and enabled SDMMC 2019-03-01 11:39:12 +11:00
Andrew Tridgell ff28337bfd HAL_ChibiOS: fixed typos 2019-03-01 07:27:47 +11:00
Andrew Tridgell 64681cb05c HAL_ChibiOS: allocate threads from any heap
this fixes a failure on MatekF405-Wing where it fails to allocate the
SPI thread for the IMU
2019-02-27 11:54:28 +11:00
Andrew Tridgell 3a2227c912 HAL_ChibiOS: updated IDs for CubeOrange 2019-02-26 18:21:13 +11:00
Andrew Tridgell ff4614b399 HAL_ChibiOS: rename CubeH7 to CubeOrange 2019-02-26 18:21:13 +11:00
Andrew Tridgell 94abc5a54d HAL_ChibiOS: fixed DShot on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 26e76e51ed HAL_ChibiOS: fixed H7 build with older compilers 2019-02-26 16:18:26 +11:00
Andrew Tridgell 70930cca29 HAL_ChibiOS: fixed bootloader build with gcc 4.9 2019-02-26 16:18:26 +11:00
Andrew Tridgell 723e8a23fc HAL_ChibiOS: enable HSE_BYPASS for NucleoH743 2019-02-26 16:18:26 +11:00
Andrew Tridgell f8aeeb0333 HAL_ChibiOS: adjust clock tree to be more consistent
use 96MHz for all peripheral buses
2019-02-26 16:18:26 +11:00
Andrew Tridgell 5dd82f1d63 HAL_ChibiOS: adjust 16MHz HSE settings for H743 (CubeH7) 2019-02-26 16:18:26 +11:00
Andrew Tridgell b0f4494c4a HAL_ChibiOS: fixed DMA on SPI for Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 312597ac20 HAL_ChibiOS: fixed default batt2 pins for fmuv5 2019-02-26 16:18:26 +11:00
Andrew Tridgell 584e36e360 HAL_ChibiOS: switch Holybro to their own VID 2019-02-26 16:18:26 +11:00
Andrew Tridgell 9966fbea0f HAL_ChibiOS: fixed bootloader build error 2019-02-26 16:18:26 +11:00
Andrew Tridgell 8e745f74fb HAL_ChibiOS: support SPI6 on Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 75cd20aea4 HAL_ChibiOS: handle DMAMUX2 on H7
with BDMA
2019-02-26 16:18:26 +11:00
Andrew Tridgell e43ad56920 HAL_ChibiOS: fixed Pixhawk4Pro battery defaults 2019-02-26 16:18:26 +11:00
Andrew Tridgell 87e7ea368f HAL_ChibiOS: fixed battery monitoring and buzzer for Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 542372014e HAL_ChibiOS: enable SPI5 on Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 778d892fc2 HAL_ChibiOS: fixed dma resolved for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell bf783e73ab HAL_ChibiOS: use polled SPI for Pixhawk4Pro for now
and disable sensors rail till later in startup
2019-02-26 16:18:26 +11:00
Andrew Tridgell 807d9e4b92 HAL_ChibiOS: added optional polled SPI mode 2019-02-26 16:18:26 +11:00
Andrew Tridgell bd47aba5ca HAL_ChibiOS: reduced delay time in main loop to 50us
this allows for faster loop rates, and seems to be enough in testing
2019-02-26 16:18:26 +11:00
Andrew Tridgell e92c66418d HAL_ChibiOS: fixed bouncebuffer code on STM32F7 2019-02-26 16:18:26 +11:00
Andrew Tridgell a3e69e715d HAL_ChibiOS: avoid doing one-way SPI transfers
these transfers use dummy bytes in the hal driver, which may not be in
DMA safe memory, so best to avoid them
2019-02-26 16:18:26 +11:00
Andrew Tridgell dad1774330 HAL_ChibiOS: fixed channel selection for F4/F7 uart driver 2019-02-26 16:18:26 +11:00
Andrew Tridgell cda1959629 HAL_ChibiOS: added support for more flexible memory regions
this allows for an arbitrary number of memory regions, with each one
flagged as DMA safe, fast or normal
2019-02-26 16:18:26 +11:00
Andrew Tridgell 5f88340919 HAL_ChibiOS: fixed flash build warning 2019-02-26 16:18:26 +11:00
Andrew Tridgell 8a40ee8132 HAL_ChibiOS: fixed idle wait on H7 flash program 2019-02-26 16:18:26 +11:00
Andrew Tridgell 1d6c877c3c HAL_ChibiOS: set board type on PH4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 6177129e41 HAL_ChibiOS: fixed typo in dma_resolver.py 2019-02-26 16:18:26 +11:00
Andrew Tridgell 4e067ee3cd HAL_ChibiOS: fixed DMA on TIM12 for Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell dd835f5fce HAL_ChibiOS: optimize for speed on more boards 2019-02-26 16:18:26 +11:00
Andrew Tridgell 34a7812416 HAL_ChibiOS: use -O3 on boards with 2M flash 2019-02-26 16:18:26 +11:00
Andrew Tridgell b07ba37359 HAL_ChibiOS: pass optimization to ChibiOS build 2019-02-26 16:18:26 +11:00
Andrew Tridgell 77d4e1f796 HAL_ChibiOS: removed ID_ANY streams for H7
use generated map instead
2019-02-26 16:18:26 +11:00
Andrew Tridgell ee1d2e8edb HAL_ChibiOS: adjust H743 DMA settings 2019-02-26 16:18:26 +11:00
Andrew Tridgell cb77b06460 HAL_ChibiOS: generate a dma map for H7
this allows for DMA sharing, allowing for more peripherals with DMA
2019-02-26 16:18:26 +11:00
Andrew Tridgell 423ad60c47 HAL_ChibiOS: enable all DMAs on Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 718cf4377d HAL_ChibiOS: reduce DMA count until we can share 2019-02-26 16:18:26 +11:00
Andrew Tridgell 0c01375799 HAL_ChibiOS: enable IOMCU for CubeH7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 9647a68c9e HAL_ChibiOS: fixed UART RX DMA for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 6422068e6b HAL_ChibiOS: fixed analog input on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell efc8da9f9a HAL_ChibiOS: enable TX DMA on uarts on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 231117e9b1 HAL_ChibiOS: invalidate before read on rx, not on DMA setup
more efficient, as we only invalidate what was used
2019-02-26 16:18:26 +11:00
Andrew Tridgell 071d5e01af HAL_ChibiOS: added DMAMUX channel assignment calls 2019-02-26 16:18:26 +11:00
Andrew Tridgell f4e31ce65b HAL_ChibiOS: added more cache flush ops 2019-02-26 16:18:26 +11:00
Andrew Tridgell 46787fe7d8 HAL_ChibiOS: adjust clocks for H743 2019-02-26 16:18:26 +11:00
Andrew Tridgell 8e52ed4e9b HAL_ChibiOS: update Pixhawk4Pro hwdef 2019-02-26 16:18:26 +11:00
Andrew Tridgell b662adf8cc HAL_ChibiOS: setup sensors on NucleoH743 2019-02-26 16:18:26 +11:00
Andrew Tridgell c0e47754fa HAL_ChibiOS: enable more peripherals on CubeH7 2019-02-26 16:18:26 +11:00
Andrew Tridgell bd27d7fc26 HAL_ChibiOS: fixed build on F4 2019-02-26 16:18:26 +11:00
Andrew Tridgell d6bedc3bdf HAL_ChibiOS: use ifndef on more peripheral types 2019-02-26 16:18:26 +11:00
Andrew Tridgell 6fb40a9713 HAL_ChibiOS: set FPU=hard if not set elsewhere 2019-02-26 16:18:26 +11:00
Andrew Tridgell f753669a58 HAL_ChibiOS: improved check for DTCM ram 2019-02-26 16:18:26 +11:00
Andrew Tridgell 57c573552c HAL_ChibiOS: check for logger instance before use 2019-02-26 16:18:26 +11:00
Andrew Tridgell 7c61d66d75 HAL_ChibiOS: fixed SPI clocks on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell ca221e7e7a HAL_ChibiOS: cleanup shared DMA code 2019-02-26 16:18:26 +11:00
Andrew Tridgell dd8115c9b4 HAL_ChibiOS: check for already allocated TX dma in UART driver 2019-02-26 16:18:26 +11:00
Andrew Tridgell a4687930b0 HAL_ChibiOS: enable FRAM for storage 2019-02-26 16:18:26 +11:00
Andrew Tridgell 37bcd6e7d8 HAL_ChibiOS: default to timer 5 for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell d96142a37e HAL_ChibiOS: allow double allocate call in RCOutput 2019-02-26 16:18:26 +11:00
Andrew Tridgell c02a271c8a HAL_ChibiOS: fixed shared DMA for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 4c7fa7c6fb HAL_ChibiOS: make SPI clock test non-blocking 2019-02-26 16:18:26 +11:00
Andrew Tridgell e6b41fbe0b HAL_ChibiOS: added initial CubeH7 hwdef 2019-02-26 16:18:26 +11:00
Andrew Tridgell e581be8df7 HAL_ChibiOS: optionally disable DCache on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 46cb506a22 HAL_ChibiOS: added cache management for H7 in bouncebuffer code 2019-02-26 16:18:26 +11:00
Andrew Tridgell 50b7b7beb5 HAL_ChibiOS: disable DTCM on H7 for now
DTCM doesn't allow for DMA yet
2019-02-26 16:18:26 +11:00
Andrew Tridgell ff21508ce8 HAL_ChibiOS: ensure 32 byte alignment for DMA on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 33699d4f4a HAL_ChibiOS: fixed shared_dma for H7
stream ID any doesn't need to be locked
2019-02-26 16:18:26 +11:00
Andrew Tridgell c36f677c94 HAL_ChibiOS: initial hwdef for Pixhawk4Pro 2019-02-26 16:18:26 +11:00
Andrew Tridgell 5faec2f869 HAL_ChibiOS: removed HSE bypass for NucleoH743
not needed any more
2019-02-26 16:18:26 +11:00
Andrew Tridgell 0691e23219 HAL_ChibiOS: setup some sensors on NucleoH743 2019-02-26 16:18:26 +11:00
Andrew Tridgell 4b01e2c3b3 HAL_ChibiOS: fixed clock tree for no LSE on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 3c9ba02ce9 HAL_ChibiOS: fixed H7 flash 2019-02-26 16:18:26 +11:00
Andrew Tridgell 8c55f7bc49 HAL_ChibiOS: enable debug on SD7 for bootloader for NucleoH743 2019-02-26 16:18:26 +11:00
Andrew Tridgell 599a1a3d67 HAL_ChibiOS: adapt analog driver for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 52b47e499b HAL_ChibiOS: fixed H7 clock tree for ADC driver 2019-02-26 16:18:26 +11:00
Andrew Tridgell de335f14d7 HAL_ChibiOS: fixed GPIO init for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 1fa0a2eeca HAL_ChibiOS: fixed peripheral enables on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell acf77ba49a HAL_ChibiOS: fixed dma resolver for H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell d9c888ab45 HAL_ChibiOS: port SPI, I2C and UART drivers to H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell ae448a6932 HAL_ChibiOS: enable DMA checking on H7 2019-02-26 16:18:26 +11:00
Andrew Tridgell 51b4d54f70 HAL_ChibiOS: disable show_stack_usage in bootloader 2019-02-26 16:18:26 +11:00
Andrew Tridgell 5201fdf653 HAL_ChibiOS: adjust for changed flash API 2019-02-26 16:18:26 +11:00
Andrew Tridgell 565706cf7e HAL_ChibiOS: fixed H7 flash handling 2019-02-26 16:18:26 +11:00
Andrew Tridgell c2746ca9f9 HAL_ChibiOS: simplify H7 hwdef.dat 2019-02-26 16:18:26 +11:00
Andrew Tridgell 84ac98622c HAL_ChibiOS: fixed charset issue in H7 database 2019-02-26 16:18:26 +11:00
Andrew Tridgell 227ecc53ac HAL_ChibiOS: support mcuconf for STM32H7 MCU 2019-02-26 16:18:26 +11:00
Andrew Tridgell 972ae519a6 HAL_ChibiOS: added minimal hwdef for STM32H743 Nucleo board 2019-02-26 16:18:26 +11:00
Andrew Tridgell aab911ac50 HAL_ChibiOS: added hwdef database for STM32H743 2019-02-26 16:18:26 +11:00
Andrew Tridgell 1b06b0f41c HAL_ChibiOS: fixed F765 build 2019-02-26 16:18:26 +11:00
Andrew Tridgell ceb0ec70f9 HAL_ChibiOS: disable pipes API
not used
2019-02-26 16:18:26 +11:00
Andrew Tridgell bbd25350eb HAL_ChibiOS: support ChibiOS kernel major 6
preparing for STM32H7 support
2019-02-26 16:18:26 +11:00
Andrew Tridgell 908b444a50 HAL_ChibiOS: update halconf for VER_7_0 API 2019-02-26 16:18:26 +11:00
Andrew Tridgell 247bb433ec HAL_ChibiOS: update chconf.h for VER_6_0 API 2019-02-26 16:18:26 +11:00
Andrew Tridgell 17d804f051 HAL_ChibiOS: fixed GPIO numbering for KakuteF4 2019-02-22 11:34:43 +11:00
Stephen Dade de37e2e179 HAL_ChibiOS: Corrected servo output order for KakuteF4 2019-02-22 11:34:43 +11:00
Andrew Tridgell 70a10c6375 HAL_ChibiOS: adjust TBS-F7 bootloader setup 2019-02-22 10:27:17 +11:00
Andrew Tridgell 5319fbb52b HAL_ChibiOS: enable heater pin on TBS-Colibri-F7 2019-02-22 10:27:17 +11:00
Andrew Tridgell dde97d2b0e HAL_ChibiOS: support FMU heater pins 2019-02-22 10:27:17 +11:00
Andrew Tridgell 27a1fec911 HAL_ChibiOS: TBS-F7 is active low on sd power 2019-02-22 10:27:17 +11:00
Andrew Tridgell 94bace91a4 HAL_ChibiOS: bring up sensors rail after boot on TBS F7
this prevents a reset loop on GPIO config
2019-02-22 10:27:17 +11:00
Andrew Tridgell 025bd7e0d8 HAL_ChibiOS: added support for TBS-Colibri-F7
This is a fmuv5 board varient
2019-02-22 10:27:17 +11:00
Peter Barker 8cfedd8b46 AP_HAL_ChibiOS: implement 'uint16_t millis16' 2019-02-19 11:17:04 +11:00
Andrew Tridgell 54ffeef20e HAL_ChibiOS: fixed pixhawk4 i2c bus numbers 2019-02-12 15:20:36 +11:00
Andrew Tridgell 5ab75b5ccb HAL_ChibiOS: updated Pixhawk4 pinout 2019-02-12 15:17:27 +11:00
Tom Pittenger 548a579f18 AP_HAL_ChibiOS: unify singleton naming to _singleton and get_singleton() 2019-02-10 19:09:58 -07:00
Andrew Tridgell ee97f0dccd HAL_ChibiOS: setup power brick on mini-pix by default 2019-02-10 19:51:51 +11:00
Andrew Tridgell bb76143095 HAL_ChibiOS: fixed mini-pix uart order 2019-02-04 08:21:58 +11:00
Siddharth Purohit 2792f015b9 HAL_ChibiOS: disable SLCAN for minimize feature enabled 2019-01-29 13:40:35 +09:00
Andrew Tridgell ff52ceabba HAL_ChibiOS: fixed default volt and current pins for VRBrain 2019-01-24 18:41:38 +11:00
LukeMike e15d2c0f89 HAL_ChibiOS: added ChibiOS configuration of VR Brain 5.4 2019-01-24 18:41:38 +11:00
LukeMike 33f7f5b7b6 HAL_ChibiOS: added ChibiOS configuration for VR Core 1.0 2019-01-24 18:41:38 +11:00
LukeMike f615ab9a0a HAL_ChibiOS: added ChibiOS configuration for VR Brain 5.1 2019-01-24 18:41:38 +11:00
LukeMike db61e50fe8 HAL_ChibiOS: fixed USB_PRODUCT for VR Brain 5.2 2019-01-24 18:41:38 +11:00
Siddharth Purohit e12cb58b21 HAL_ChibiOS: run code formatter on CANSerialRouter 2019-01-23 15:57:05 +11:00