Commit Graph

15355 Commits

Author SHA1 Message Date
Andrew Tridgell
c7fd455f6a AP_HAL: added FMUv4 port for ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
c3435e45c5 HAL_ChibiOS: initial port to FMUv4 2018-01-15 11:46:02 +11:00
bugobliterator
5feef04f5f HAL_ChibiOS: add support for CCM memory
this uses DMA bounce buffers for bus transfers, and falls back to CCM
ram in allocations if the type is unspecified
2018-01-15 11:46:02 +11:00
bugobliterator
ea2a880d8a AP_NavEKF3: allocate from MEM_FAST region 2018-01-15 11:46:02 +11:00
bugobliterator
b1213a522d AP_NavEKF2: allocate NavEKF core from MEM_FAST region 2018-01-15 11:46:02 +11:00
bugobliterator
1c6beaa7c4 AP_InertialSensor: use new API for DMA safe allocation 2018-01-15 11:46:02 +11:00
bugobliterator
e591265329 HAL_PX4: change dma_allocate api to malloc_type 2018-01-15 11:46:02 +11:00
bugobliterator
9d6ab78376 AP_HAL: add support for memory allocation by region type 2018-01-15 11:46:02 +11:00
Andrew Tridgell
08346deed5 AP_BattMonitor: run SMBus batteries at 100kHz
use longer timeouts and SMBUS mode. This fixes the SMBus battery
support for Solo on ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f2102bba05 HAL_VRBrain: fixed I2C get_device() interface
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
ded22a6766 HAL_PX4: fixed I2C get_device() interface
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
43c1bd0ae9 HAL_Linux: fixed I2C get_device() interface
just stubs for now
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5e19183e90 HAL_Empty: fixed I2C get_device() interface 2018-01-15 11:46:02 +11:00
Andrew Tridgell
36227aa126 HAL_ChibiOS: implement bus speed and smbus for I2C
use the slowest speed of all devices on the bus
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8260b3f65f AP_HAL: allow bus speed and SMBUS enable on I2C
this allows a driver to request a bus speed for a device, and whether
the device should be in SMBUS mode. It also allows a min timeout to be
specified, to allow for slow devices
2018-01-15 11:46:02 +11:00
Andrew Tridgell
4b5e617673 HAL_ChibiOS: added missing DMA table for STM32F405 2018-01-15 11:46:02 +11:00
Peter Barker
f3d46506b0 AP_HAL_Chibios: warning fixes 2018-01-15 11:46:02 +11:00
Andrew Tridgell
791edee0ff HAL_Chibios: added more SPI devices for FMUv3 2018-01-15 11:46:02 +11:00
Andrew Tridgell
ddf8523c2b AP_OpticalFlow: prevent crash on bad device name 2018-01-15 11:46:02 +11:00
Andrew Tridgell
755eca31c2 HAL_Chibios: don't unregister shared DMA
the shared DMA handle is a property of the bus, not the device, so
should not be unregistered when the device is removed
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9812fc9574 HAL_Chibios: prevent creation of i2c devices on invalid bus 2018-01-15 11:46:02 +11:00
Andrew Tridgell
82b5b94e24 AP_IOMCU: fixed race condition on thread startup
thread_ctx may not be set for first trigger_event()
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b62773bbad HAL_ChibiOS: improved auto-config of ADC pins
ADC config now based on pin_scaling array
2018-01-15 11:46:02 +11:00
Andrew Tridgell
1cc4b92b76 HAL_ChibiOS: added additional FMUv3 analog pins 2018-01-15 11:46:02 +11:00
Andrew Tridgell
aa2175ec0c HAL_ChibiOS: show ADC1 channels in hwdef.h 2018-01-15 11:46:02 +11:00
Andrew Tridgell
5a7e2f75d1 HAL_ChibiOS: added ADC1_Map to STM32 tables 2018-01-15 11:46:02 +11:00
Andrew Tridgell
3a004adbd4 HAL_Chibios: use macro for NUM_GROUPS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
b57f8f01c6 HAL_Chibios: fixed return for read on invalid gpio pin 2018-01-15 11:46:02 +11:00
Andrew Tridgell
82cc36d6d0 AP_BoardConfig: called board_setup() even without autodetect
we need to init hal.rcou and hal.gpio
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b1ebbd1a1c AP_BoardConfig: enable auto-detect only on FMUv3
F412 should not do board detection
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7971f03bde Hal_Chibios: fixed F412 SPI config 2018-01-15 11:46:02 +11:00
Andrew Tridgell
51512ed7c0 AP_Param: don't panic on bad embedded parameters
this makes life much easier for vendors
2018-01-15 11:46:02 +11:00
Andrew Tridgell
21f40da510 HAL_Chibios: align GPIO pins with px4 build 2018-01-15 11:46:02 +11:00
Andrew Tridgell
60b1eab06d AP_BoardConfig: added get_pwm_count() 2018-01-15 11:46:02 +11:00
Andrew Tridgell
26d6947bf6 HAL_ChibiOS: fixed PWM output 2018-01-15 11:46:02 +11:00
Andrew Tridgell
e88fe93688 AP_BoardConfig: init chibios IO after boardconfig
this allows for the init to use parameters such as BRD_IO_ENABLE from
AP_BoardConfig
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c742543565 HAL_Chibios: align SPI device IDs with px4 IDs
this makes for easier update to ChibiOS without redoing accelcal
2018-01-15 11:46:02 +11:00
Andrew Tridgell
7cb1c0420a AP_BoardConfig: include BRD_IO_ENABLE on ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
4ce696a520 AP_Math: fixed example build on ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
347c774665 AP_HAL: fixed example build on ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
2941afa62b AP_Beacon: fixed example build on ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
f5b24a3838 AP_Math: fixed build of Sub with ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
6dbab450a5 Hal_Chibios: use AP_BoardConfig::io_enabled() 2018-01-15 11:46:02 +11:00
Andrew Tridgell
13f4780815 AP_BoardConfig: make a singleton
allows for io_enabled() static function
2018-01-15 11:46:02 +11:00
Andrew Tridgell
340d85642e AP_Gripper: build fix for ChibiOS 2018-01-15 11:46:02 +11:00
Andrew Tridgell
c0c4021605 SRV_Channels: fix for replay 2018-01-15 11:46:02 +11:00
Andrew Tridgell
d0d6040b3e AP_Param: use wider range of sentinal values
this copes better with power off while writing parameters
2018-01-15 11:46:02 +11:00
bugobliterator
be4e9f27f7 AP_Module: restrict module related headers to systems that can use it 2018-01-15 11:46:02 +11:00
Andrew Tridgell
3d2c4ffa79 AP_Math: allow write to indexed vector2 2018-01-15 11:46:02 +11:00
Andrew Tridgell
f088c3de23 AP_Math: added long templates 2018-01-15 11:46:02 +11:00