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
9966fbea0f
HAL_ChibiOS: fixed bootloader build error
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
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
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
6422068e6b
HAL_ChibiOS: fixed analog input on H7
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
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
37bcd6e7d8
HAL_ChibiOS: default to timer 5 for H7
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
ff21508ce8
HAL_ChibiOS: ensure 32 byte alignment for DMA on H7
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
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
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
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
227ecc53ac
HAL_ChibiOS: support mcuconf for STM32H7 MCU
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
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
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
murata
6bb11b5cc8
HAL_ChibiOS: Get the number of characters in strlen
2019-01-09 10:12:51 +11:00
Michael du Breuil
e8373e1fdf
AP_HAL_ChibiOS: add scripting heap
2018-12-31 19:25:23 -07:00
Andrew Tridgell
8188b4a039
HAL_ChibiOS: fixed card inserted test for SDC
2018-12-31 08:00:14 +11:00
Siddharth Purohit
8df52aba29
HAL_ChibiOS: move vsnprintf call to redirect Ardupilot's instead of ChibiOS's
2018-11-29 16:36:29 +11:00
Michael du Breuil
8c464572d8
AP_HAL_ChibiOS: Use a less clever version of realloc
...
The clever version loses access to memory, and is excessively hard coded
2018-11-26 22:32:56 +00:00
Andrew Tridgell
a0ed658fcc
HAL_ChibiOS: added palReadLineMode() function
...
used to change and restore line modes
2018-11-16 08:30:40 +11:00
Andrew Tridgell
065dba973b
HAL_ChibiOS: fixed build warning on iomcu
2018-11-07 07:35:45 +11:00
Andrew Tridgell
4674a1c68d
HAL_ChibiOS: fixed system time for clocks other than 1MHz
...
needed for IOMCU
2018-10-17 15:11:28 +11:00
Andrew Tridgell
bcc1bd9752
HAL_ChibiOS: added realloc implementation
...
needed for AP_Scripting
2018-10-09 10:08:52 +11:00
Michael du Breuil
8382d377bd
AP_HAL_ChibiOS: Add a BUFSIZ value
2018-10-09 10:08:52 +11:00
Michael du Breuil
9a48a0835e
AP_HAL_ChibiOS: Don't redefine errno
2018-10-03 08:01:13 +10:00
Michael du Breuil
f810b7b9f6
AP_HAL_ChibiOS: Make getcwd() take size_t as per the standard
2018-10-02 06:04:40 +10:00
Siddharth Purohit
8ac38d73f7
HAL_ChibiOS: add option for NO_FASTBOOT build and enable it for iomcu
2018-09-19 12:14:15 +10:00
Siddharth Purohit
6622c9b8fd
HAL_ChibiOS: wrap sscanf and snprintf methods
2018-09-19 12:14:15 +10:00
Siddharth Purohit
f9149f45b2
HAL_ChibiOS: explicitly mention if RTC not available
2018-09-19 12:14:15 +10:00
Siddharth Purohit
42b4730d88
HAL_ChibiOS: add changes to hwdef to support STM32F1 based controller
2018-09-19 12:14:15 +10:00
Siddharth Purohit
e824a9c360
HAL_ChibiOS: add hwdef files to support IOMCU
2018-09-19 12:14:15 +10:00
Andrew Tridgell
33076be585
HAL_ChibiOS: fixed handling of 16 bit timers
...
when we have a 16 bit timer then systime_t is 16 bit, and we need to
handle wrap of get_systime_us32()
2018-08-26 18:34:26 +10:00
Andrew Tridgell
dabdb969f6
HAL_ChibiOS: added support for HAL_Semaphore type
2018-08-16 12:40:10 +10:00
Andrew Tridgell
385f735799
HAL_ChibiOS: avoid 64 bit maths in AP_HAL::micros()
...
this saves a few cycles
2018-08-08 21:24:49 +10:00
Andrew Tridgell
4e6ac85057
HAL_ChibiOS: use 32 bit time intervals
...
this makes for smaller and faster code. We really don't need 64 bit
intervals as long sleeps are done with a loop.
2018-08-03 13:44:59 +10:00
Andrew Tridgell
1bd0ea079b
HAL_ChibiOS: fixed build on older compilers
...
allow build with gcc 4.9.x
2018-08-03 13:44:59 +10:00
Andrew Tridgell
7aba99e229
HAL_ChibiOS: fixes for ChibiOS version update
2018-08-03 13:44:59 +10:00
Andrew Tridgell
f8e2edbc7f
HAL_ChibiOS: fixed cache flush for updated ChibiOS version
2018-08-03 13:44:59 +10:00
Siddharth Purohit
2604b00b43
HAL_ChibiOS: use ch.h header for oslib api
2018-08-03 13:44:59 +10:00
Siddharth Purohit
ff65487ab3
HAL_ChibiOS: follow updated gpio pin setup procedure
2018-08-03 13:44:59 +10:00
Siddharth Purohit
5f88163e17
HAL_ChibiOS: update configuration and rtlib headers for ChibiOS 18.x.x
2018-08-03 13:44:59 +10:00
Siddharth Purohit
395c48933c
HAL_ChibiOS: move tto using updated time conversion API
2018-08-03 13:44:59 +10:00
Andrew Tridgell
44fd85ff29
HAL_ChibiOS: reduce memory used by serial buffers
...
this does not appear to affect log download speed. It saves about 27k
of memory
2018-08-01 13:11:16 +10:00
Alexander Malishev
1377943eb3
HAL_ChibiOS: fix DTCM size in stm32f745 mcu
2018-07-26 17:52:37 +10:00
Andrew Tridgell
8a26ca1ddf
HAL_ChibiOS: added a DMA reserve heap
...
this ensures we keep some DMA-capable memory aside for when it is
needed
2018-07-20 15:48:21 +10:00
Andrew Tridgell
f2d602690e
HAL_ChibiOS: fixed build error with some compilers
2018-07-13 08:50:46 +10:00
Andrew Tridgell
0201893f7c
HAL_ChibiOS: fixed peripheral power-up on fmuv5
...
we need to do the powerup before we initialise the UARTs
2018-07-13 07:34:30 +10:00
Andrew Tridgell
63a0a4979c
HAL_ChibiOS: delay peripheral power on for fmuv5
...
this should prevent SiK radios staying in the bootloader
2018-07-13 07:34:30 +10:00
Andrew Tridgell
f083b80700
HAL_ChibiOS: added preallocation of DMA bouncebuffers
...
we need 512 bytes for microSD
2018-07-12 14:34:04 +10:00
Andrew Tridgell
963675689c
HAL_ChibiOS: fixed substitution of %BOARD%-BL
2018-06-28 11:35:13 +10:00
Andrew Tridgell
946d0208e5
HAL_ChibiOS: fixed stm32f7 cache bug in erase flash page
2018-06-28 11:35:13 +10:00
Andrew Tridgell
2b7b499c63
HAL_ChibiOS: added support for RTC sig for fast boot
2018-06-28 11:35:13 +10:00
Andrew Tridgell
bf6fb72904
HAL_ChibiOS: fixed 32 bit flash writes
2018-06-25 21:22:31 +10:00
Andrew Tridgell
e40457d98f
HAL_ChibiOS: avoid malloc in usbcfg
...
this avoids the need for malloc in the bootloader
2018-06-25 21:22:31 +10:00
Andrew Tridgell
369ac5edd0
HAL_ChibiOS: save more space in the bootloader
2018-06-25 21:22:31 +10:00
Andrew Tridgell
e870b5f00a
HAL_ChibiOS: use 32 bit flash operations when possible
2018-06-25 21:22:31 +10:00
Andrew Tridgell
feefa05b41
HAL_ChibiOS: expose stm32_flash_ispageerased()
2018-06-25 21:22:31 +10:00
Andrew Tridgell
dd1bd43a2e
HAL_ChibiOS: added stm32_flash_keep_unlocked()
2018-06-25 21:22:31 +10:00
Andrew Tridgell
518d41e0d4
HAL_ChibiOS: added OTP defines
2018-06-22 08:00:31 +10:00
Alexander Malishev
661259de4e
HAL_ChibiOS: reduce .text aigment to save flash space
2018-06-22 08:00:31 +10:00
Andrew Tridgell
3fc6824bfb
HAL_ChibiOS: setup more bootloader config files
2018-06-22 08:00:31 +10:00
Andrew Tridgell
0cd46c063c
HAL_ChibiOS: fixed flash driver for F7
...
we need a data sync barrier due to the F7 cache
2018-06-22 08:00:31 +10:00
Andrew Tridgell
3ef88e1b8f
HAL_ChibiOS: allow flash support for bootloader
2018-06-22 08:00:31 +10:00
Andrew Tridgell
5216870492
HAL_ChibiOS: avoid strstr in usbcfg
...
saves nearly 2k of flash
2018-06-22 08:00:31 +10:00
Andrew Tridgell
c12d14d7a4
HAL_ChibiOS: check for ChibiOS features
2018-06-22 08:00:31 +10:00
Andrew Tridgell
03f67d82c9
HAL_ChibiOS: allow more ChibiOS functionality to be disabled
...
used by bootloader builds for minimal flash size
2018-06-22 08:00:31 +10:00
Hyungsub
8ae2729022
AP_HAL_ChibiOS: fix memory leaks
...
Fixes #8644
2018-06-18 10:30:56 +01:00
Andrew Tridgell
1c4bf3d804
HAL_ChibiOS: fixed build warning
2018-06-15 11:26:40 +10:00
Andrew Tridgell
00d919018b
HAL_ChibiOS: added RTC clock implementation
2018-06-15 08:01:22 +10:00
Alexander Malishev
eac5d13f1c
HAL_ChibiOS: use 2 channels in SoftSigReaderInt.cpp
2018-06-06 08:23:51 +10:00
Alexander Malishev
fd45b3a69b
HAL_ChibiOS: slightly increase EICU interrupt priority
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
0e09dc75c0
HAL_ChibiOS: flush all memory on chSysHalt()
...
this makes debugging a lot easier, as gdb can see the values in dcache
2018-06-06 07:15:41 +10:00
Andrew Tridgell
2493cdbcb6
HAL_ChibiOS: switch to new bouncebuffer system
...
this removes the dma_flush and dma_invalidate methods and uses a
common bouncebuffer system for all CPU types. This enables microSD
support on STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell
0b1e26a470
HAL_ChibiOS: added bouncebuffer system
...
this makes our bouncebuffers available for ChibiOS system
drivers. This is needed for SDMMCv1 on STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell
018c9ad40b
HAL_ChibiOS: fixed build warnings
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
bb2e7a189f
HAL_ChibiOS: added a debug function for showing stack free
...
this can be enabled when needed to investigate stack space remaining
2018-06-06 07:15:41 +10:00
Andrew Tridgell
2087354939
HAL_ChibiOS: align buffers to STM32F7 cache lines
...
this allows for DMA flush and invalidate operations to work on all
dynamically allocated memory
2018-06-06 07:15:41 +10:00
Andrew Tridgell
edb831653f
HAL_ChibiOS: added dma_flush and dma_invalidate operations
...
these are needed to manage the data cache on the STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell
721f3cd5d1
HAL_ChibiOS: fixed flash layout for F7
...
thanks to @alielectric
2018-06-06 07:15:41 +10:00
Andrew Tridgell
1f6ffc48e5
HAL_ChibiOS: allow STM32F7 to build with flash driver
2018-06-06 07:15:41 +10:00
Alexander Malishev
66de6d770a
HAL_ChibiOS: Enable reentrancy on FatFS sybsystem
2018-05-27 19:10:24 +10:00
Alexander Malishev
6b15b2f44f
HAL_ChibiOS: Enable sdcard on spi bus
2018-05-27 19:10:24 +10:00
Andrew Tridgell
7b720aae46
HAL_ChibiOS: allow printf() to work on systems without debug console
...
map to hal.console once initialised
2018-05-26 19:06:25 +10:00
Alexander Malishev
1fd52c4e01
HAL_ChibiOS: added input capture filter
2018-04-28 07:31:58 +10:00
Andrew Tridgell
95108a2d2c
HAL_ChibiOS: added support for 16 bit timers
2018-04-24 08:03:46 +10:00
Alexander Malishev
79b5719419
ChibiOS: add support for complementry output timer channels
2018-04-14 09:25:15 +10:00
Andrew Tridgell
e4ce2f532b
HAL_ChibiOS: make smaller builds possible
...
this allows for much smaller builds when you disable a lot of
options. This is part of an effort to create a bootloader of less than
16k using ChibiOS
2018-04-12 11:50:44 +10:00
Andrew Tridgell
6e5cbc7c3d
HAL_ChibiOS: initial support for F745 boards
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
d1e4185817
HAL_ChibiOS: don't build flash.c if not needed
2018-04-12 11:50:44 +10:00
Andrew Tridgell
610a6a6c88
HAL_ChibiOS: optimise USB config driver
2018-04-07 09:10:29 +10:00
Tom Pittenger
b864cd6ae6
AP_HAL_ChibiOS: include correct wrappers
2018-04-03 08:27:44 +10: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
21951243f0
HAL_ChibiOS: default debug checks off
...
these can be enabled as needed for board bringup, but are too
expensive for general use
2018-03-02 12:52:50 +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
Andrew Tridgell
b90c0d78f3
HAL_ChibiOS: fixed build warning
2018-02-08 17:36:33 +11:00
Andrew Tridgell
20a008c80a
HAL_ChibiOS: disable trace buffers
...
these were unusued but still allocated
2018-02-08 17:36:33 +11:00
Andrew Tridgell
591e0c2249
HAL_ChibiOS: allow control of interrupt port
...
F412 has radio IRQ on port B
2018-02-08 17:36:33 +11:00
Andrew Tridgell
f3f6972fc0
HAL_ChibiOS: output panics on system console
2018-02-08 17:36:33 +11:00
Andrew Tridgell
86189393a7
HAL_ChibiOS: fixed build warnings
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4886ffbf8a
HAL_ChibiOS: fixed build warnings
2018-02-07 20:33:45 +11:00
Andrew Tridgell
fa68210210
HAL_ChibiOS: fixed build with older compilers
2018-02-07 20:33:45 +11:00
Andrew Tridgell
5fc12f82fb
HAL_ChibiOS: expanded interrupt stack to 256
...
this is very conservative, and may be trimmed later based on analysis
of stack usage
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
29add8a880
HAL_ChibiOS: fixed build without FATFS enabled
2018-02-07 20:33:45 +11:00
Siddharth Purohit
143686f70d
HAL_ChibiOS: add placeholder cstdio header
2018-02-07 20:33:45 +11:00
Siddharth Purohit
539d5adc13
hwdef: add more posix methods
2018-02-07 20:33:45 +11:00
Siddharth Purohit
288f6b1fa0
HAL_ChibiOS: add chibios cpp wrapers, libuavcan's stm32 driver uses it
2018-02-07 20:33:45 +11:00
Andrew Tridgell
713006bb1d
HAL_ChibiOS: allow more OTG defines to be overridden
2018-02-07 20:33:45 +11:00
Andrew Tridgell
743806116d
HAL_ChibiOS: removed unusued ppm driver
...
now uses AP_RCProtocol
2018-01-20 17:40:07 +11:00
bugobliterator
445ba6ed39
HAL_ChibiOS: update ppm to use Extended ICU driver
2018-01-20 17:40:07 +11:00
Andrew Tridgell
f6138e3c91
HAL_ChibiOS: use calloc in preferance to malloc
2018-01-17 11:22:05 +11:00
Andrew Tridgell
e2a65c8c60
HAL_ChibiOS: added support for AP_Terrain for ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2929b3dbb1
HAL_ChibiOS: allow builds on systems with no SDIO
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2978649cd4
waf: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
6e4ef32628
HAL_ChibiOS: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
9482ab1840
waf: use common makefile for ChibiOS if no custom present
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c639708e22
HAL_ChibOS: auto-generate full PWM config
...
use PWM markers in hwdef.dat to mark each PWM channel
2018-01-15 11:46:02 +11:00
Andrew Tridgell
daa9eec836
HAL_ChibiOS: auto-configure timer channels
...
allow for one marked PPMIN for input
2018-01-15 11:46:02 +11:00
Andrew Tridgell
d65ec2ada7
HAL_ChibiOS: moved more headers to common
...
allow customisation, but don't require every port to copy the defaults
2018-01-15 11:46:02 +11:00
Andrew Tridgell
960bc40ff3
HAL_ChibiOS: moved to a common mcuconf.h
2018-01-15 11:46:02 +11:00
Andrew Tridgell
f135e73e04
HAL_ChibiOS: F412 doesn't have CCM ram
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
Peter Barker
f3d46506b0
AP_HAL_Chibios: warning fixes
2018-01-15 11:46:02 +11:00
Andrew Tridgell
86fbdcd060
HAL_ChibiOS: ensure malloc returns zeroed memory
2018-01-15 11:46:02 +11:00
Andrew Tridgell
8b6bab7b17
HAL_Chibios: added ChibiOS HAL
...
this is based on initial work by Sid, reset here for easier merging
2018-01-15 11:46:02 +11:00