Commit Graph

82 Commits

Author SHA1 Message Date
Andrew Tridgell e068106669 HAL_ChibiOS: support I2C devices on STM32F7 without DMA
this allows us to support I2C4 on fmuv5
2018-06-13 20:05:26 +10:00
Alexander Malishev 289b93c3d0 HAL_ChibiOS: added parse_timer to chibios_hwdef.dat 2018-06-11 18:32:17 +10:00
Andrew Tridgell 2df0a71a4b HAL_ChibiOS: fixed flash load address in hwdef.h 2018-06-08 09:56:41 +10:00
Andrew Tridgell c05086430d HAL_ChibiOS: fixed hwdef.h generation for PWM on tim12 2018-06-06 15:01:38 +10:00
Andrew Tridgell 63087b6425 HAL_ChibiOS: enable fmu out 7 and 8 for fmuv5
these are exposed on the Pixhawk4
2018-06-06 15:01:38 +10:00
Alexander Malishev eac5d13f1c HAL_ChibiOS: use 2 channels in SoftSigReaderInt.cpp 2018-06-06 08:23:51 +10:00
Alexander Malishev 73d33356ad HAL_ChibiOS: detect overcapture in SoftSigReaderInt.cpp 2018-06-06 08:23:51 +10:00
Andrew Tridgell c273b23940 HAL_ChibiOS: moved MCU config to python database
this moves the key MCU config variables related to memory to the
python MCU database, allowing the hwdef.dat to be considerably simpler
2018-06-06 07:15:41 +10:00
Andrew Tridgell eec4a12cc2 HAL_ChibiOS: switched to using DTCM memory for DMA
this uses SRAM1 and SRAM2 for main memory, which enables the use of the
data cache for faster operation, and using DTCM for all DMA operations.
2018-06-06 07:15:41 +10:00
Andrew Tridgell 762e4f9915 HAL_ChibiOS: fixed dma priorities for fmuv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 4ad757b4d1 HAL_ChibiOS: fixed pincount for F7 2018-06-06 07:15:41 +10:00
Andrew Tridgell 8d2f57898b HAL_ChibiOS: adjust pin counts for STM32F7 2018-06-06 07:15:41 +10:00
Alexander Malishev 6b15b2f44f HAL_ChibiOS: Enable sdcard on spi bus 2018-05-27 19:10:24 +10:00
Michael du Breuil 3a62bca7d0 AP_HAL_ChibiOS: Make redefined pins an error, fix FMUv3 2018-05-25 09:57:18 +10:00
Alexander Malishev 03d88b01be HAL_ChibiOS: added support for interrupt based rcin parsing 2018-04-24 08:03:46 +10:00
Andrew Tridgell 3749480dd8 HAL_ChibiOS: create ap_romfs_embedded.h
use ROMFS keywork for romfs files
2018-04-17 08:44:44 +10:00
Alexey Kozin f87cc4e172 f4by chibios new style dma table build fix 2018-04-16 07:50:34 +10:00
Alexander Malishev 79b5719419 ChibiOS: add support for complementry output timer channels 2018-04-14 09:25:15 +10:00
Andrew Tridgell 7286ffab77 HAL_ChibiOS: define FLASH_LOAD_ADDRESS in hwdef.h
used for bootloader support
2018-04-12 11:50:44 +10:00
Andrew Tridgell a9edbb6b2d HAL_ChibiOS: allow for a defaults.parm file in hwdef directory
this keeps defaults with the board, where that is appropriate
2018-04-12 11:50:44 +10:00
Andrew Tridgell 551dca63e1 HAL_ChibiOS: added build information for each MCU
this abstracts the build information for each MCU, so that hwdef.dat
can control the build process of ChibiOS
2018-04-12 11:50:44 +10:00
Andrew Tridgell cdbbceb6b6 HAL_ChibiOS: cope with SDMMC peripheral for microSD 2018-04-12 11:50:44 +10:00
Andrew Tridgell 382772d999 HAL_ChibiOS: initial support for ESC serial output 2018-04-07 09:10:29 +10:00
Andrew Tridgell 95a261e061 HAL_ChibiOS: don't generate DMA channels for ALARM pin 2018-04-07 09:10:29 +10:00
Andrew Tridgell bc32276966 HAL_ChibiOS: support DShot output
use DMAR burst DMA to minimise number of DMA channels needed

thanks to betaflight for the great reference implementation!
2018-04-07 09:10:29 +10:00
Andrew Tridgell 294aac6955 HAL_ChibiOS: fixed CTS pulldown
we need to pulldown to prevent delays in uart sends
2018-04-07 09:10:29 +10:00
Andrew Tridgell 9a5df6d1f7 HAL_ChibiOS: auto-generate DMA channels for RCIN
and add DMA channels for TIMx_UP ready for DMAR based DShot support
2018-04-07 09:10:29 +10:00
Peter Barker 2efd9341cd AP_HAL_ChibiOS: copy the common linker script to outdir, use it from there
The directory we write the linker script to might not have the correct relative path to reference this common.ld script.  So make it reference common.ld in the current directory and copy common.ld to the output directory
2018-03-23 11:06:24 +11:00
Andrew Tridgell fd6185be0f HAL_ChibiOS: fixed python3 pickle error 2018-03-05 09:50:27 +11:00
Andrew Tridgell 33dd14b8d9 HAL_ChibiOS: use PULLUP on UART TX/RX lines
this can prevent spurious bytes on disconnected pins
2018-03-02 21:39:38 +11:00
Andrew Tridgell 08634903c8 HAL_ChibiOS: use relative path for common.ld
this avoids a path length issue under cygwin
2018-03-02 17:11:31 +11:00
Andrew Tridgell 306d35655e HAL_ChibiOS: allow for bare board builds
this allows for a build with no UARTs, no SPI, no I2C, no PWM. Great
for initial board bringup with just USB
2018-03-02 12:52:50 +11:00
Andrew Tridgell 74ed19f460 HAL_ChibiOS: moved more board setup into hwdef.dat 2018-03-02 12:52:50 +11:00
Andrew Tridgell ebbd15ea17 HAL_ChibiOS: auto-enable CAN when pins are defined 2018-03-02 12:52:50 +11:00
Andrew Tridgell d84c487a60 HAL_ChibiOS: generate env.py from hwdef.dat
allowing for environment override in hwdef.dat
2018-03-02 12:52:50 +11:00
Andrew Tridgell 17b3607aa8 HAL_ChibiOS: fixed RCIN on revo-mini
this also adds an attempt at using 'N' (inverted) channels for
RCIN. This doesn't work yet, but would be better for the revo-mini, as
it would allow the normal RCIN pin to be used
2018-02-14 18:27:00 +11:00
Andrew Tridgell 427e00dd41 HAL_ChibiOS: switched to system timer for AP_HAL::micros()
this uses the ChibiOS system timer instead of a separate GPT timer for
the core ChibiOS timer. The advantage is it saves us a timer, plus it
changes ChibiOS to use a 1MHz clock on its timer, which gives us
higher resolution for delays.

This has a remarkable effect on timing jitter, reducing it greatly
2018-02-14 18:27:00 +11:00
Mark Whitehorn 59b2d44323 AP_HAL_ChibiOS: make ToneAlarm compilation conditional on presence of
alarm pin
2018-02-11 14:55:23 +11:00
Mark Whitehorn d569e35a0f AP_HAL_ChibiOS: add toneAlarm support for ChibiOS on MindPX-v2 2018-02-11 14:55:23 +11:00
Mark Whitehorn 13c54c0543 AP_HAL_ChibiOS: add missing declaration in chibios_hwdef.py 2018-02-11 14:55:23 +11:00
Mark Whitehorn fb142422f6 AP_HAL_ChibiOS: pull ALARM_CHANNEL into pwmGroup
and improve formatting of HAL_PWM_ALARM in hwdef.h
2018-02-11 14:55:23 +11:00
Mark Whitehorn 8b216cf182 AP_HAL_ChibiOS: add ToneAlarm thread
fmuv4 hwdef.dat: remove PWM label from buzzer output pin
                 add buzzer pin labeled ALARM
                 remove timer PWM from HAL_PWM_GROUPs
2018-02-11 14:55:23 +11:00
Andrew Tridgell 8226530610 HAL_ChibiOS: added DMA_PRIORITY and DMA_NOSHARE options
this allows finer grained control of DMA streams
2018-02-08 22:13:00 +11:00
Andrew Tridgell 4ce0c2c827 HAL_ChibiOS: simplify skyviper-v2450 config
remove unused peripherals
2018-02-08 17:36:33 +11:00
Siddharth Purohit 40142e5aef ChibiOS: implement way to clear i2c bus by toggling clock line 2018-02-08 17:36:33 +11:00
Andrew Tridgell ad5a04fc89 HAL_ChibiOS: added NODMA option
this allows a peripheral to be configured without DMA (for low-use
UARTs)
2018-02-07 20:33:45 +11:00
Andrew Tridgell 626632989e HAL_ChibiOS: fixed build for boards with no USB 2018-02-07 20:33:45 +11:00
Andrew Tridgell 4b8bde746e HAL_ChibiOS: improved default USB strings
use board name and serial number to make IDs unique
2018-02-07 20:33:45 +11:00
Andrew Tridgell 1aa6a0068a HAL_ChibiOS: fixed order of I2C DMA
this was harmless, but confusing for debugging
2018-02-07 20:33:45 +11:00
Andrew Tridgell bc49c0d2c5 HAL_ChibiOS: make hwdef.h the same on python2 and python3
and output to /tmp by default to prevent accidental use of old hwdef.h
in the build
2018-02-07 20:33:45 +11:00