Andrew Tridgell
19526b5826
HAL_ChibiOS: implement scheduler->expect_delay_ms()
2019-04-22 16:53:35 +10:00
Tom Pittenger
91b0650765
AP_HAL_ChibiOS: rename dataflash to logger
2019-03-28 16:40:58 +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
57c573552c
HAL_ChibiOS: check for logger instance before use
2019-02-26 16:18:26 +11:00
Peter Barker
6fc76a32af
GLOBAL: use AP::logger() and strip redundant Log_ from methods
2019-01-18 18:08:20 +11:00
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
2019-01-18 18:08:20 +11:00
Andrew Tridgell
ed3194d095
HAL_ChibiOS: fixed timer reset
2018-12-31 08:00:14 +11:00
Andrew Tridgell
960d4c0a80
HAL_ChibiOS: allow mount of microSD after boot
...
when disarmed, try to mount sd card every 3s
2018-12-31 08:00:14 +11:00
Andrew Tridgell
6c761fa864
HAL_ChibiOS: shutdown IOMCU on reboot
2018-10-30 13:00:48 +11:00
Andrew Tridgell
af4340d1d1
HAL_ChibiOS: enable analog input on IOMCU
2018-10-30 13:00:48 +11:00
Andrew Tridgell
15141a6a5a
HAL_ChibiOS: allow for no RCIN or TIMER thread
...
saves memory on iomcu
2018-10-17 15:11:28 +11:00
Michael du Breuil
11ab6c59e1
AP_HAL_ChibiOS: Handle scripting priority
2018-10-09 10:08:52 +11:00
Siddharth Purohit
b9319cae56
HAL_ChibiOS: disable segments relating to unused features
2018-09-19 12:14:15 +10:00
Michael du Breuil
f6cb196d53
AP_HAL_ChibiOS: Remove unimplemented force_safety_no_wait()
...
ChibiOS doesn't implement the method, so there is nothing to be gained
by calling the function.
2018-09-04 10:23:18 +10:00
Francisco Ferreira
7278af05e0
AP_HAL_ChibiOS: remove CAN thread management
2018-08-12 13:35:01 +01:00
Siddharth Purohit
395c48933c
HAL_ChibiOS: move tto using updated time conversion API
2018-08-03 13:44:59 +10:00
Jonathan Challinger
f5f6220283
AP_HAL_ChibiOS: reflect changes to AP_HAL tonealarm interface
2018-07-30 14:02:12 +10:00
Andrew Tridgell
a489c93001
HAL_ChibiOS: removed restriction on delay in threads
...
threads other than the main thread should be able to sleep, but not
call the delay callback
2018-07-09 19:41:18 +10:00
Andrew Tridgell
df3ce87e02
HAL_ChibiOS: implement thread_create()
2018-07-09 19:41:18 +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
a0b4553a26
HAL_ChibiOS: fixed bootloader build issue
2018-06-25 21:22:31 +10:00
Alexander Malishev
95f3eb5ab6
HAL_ChibiOS: stop logging before reboot
2018-06-25 17:46:20 +10:00
Andrew Tridgell
e11b3f2f0e
HAL_ChibiOS: run CAN thread at 3KHz
...
at 10KHz we were causing occasional CRC errors on the UART to IOMCU
2018-06-22 08:40:12 +10:00
Eugene Shamaev
2055f264e5
AP_HAL_ChibiOS: helper func
2018-06-09 22:46:48 -07:00
Michael du Breuil
1123023a6f
AP_HAL_ChibiOS: Wrap process registration with a semaphore
2018-06-06 07:16:58 +10:00
Michael du Breuil
4a9fe1745f
AP_ChibiOS: Remove timer process suspension interface
2018-06-06 07:16:58 +10:00
Andrew Tridgell
f390e35c99
HAL_ChibiOS: use port_disable in reboot
...
this provides a more reliable way to stop all interrupts
2018-06-06 07:15:41 +10:00
Andrew Tridgell
ea37cede28
HAL_ChibiOS: stop sdcard interface on reboot
2018-05-27 19:10:24 +10:00
Andrew Tridgell
dbe0f3c575
HAL_ChibiOS: fixed assert in reboot
...
with asserts enabled we can't sleep with interrupts off
2018-05-26 17:23:46 +10:00
Andrew Tridgell
79ca1e76c0
HAL_ChibiOS: improve reliability of reboot
2018-05-26 15:53:25 +10:00
Andrew Tridgell
afb36ec168
HAL_ChibiOS: run can loop much more often
...
this allows for much higher ESC and servo rates, as it gives more
changes for frames to get out
2018-05-25 13:53:17 +10:00
Peter Barker
b2a81405ea
AP_HAL_ChibiOS: move delay callback handling to base HAL Scheduler class
2018-05-09 16:15:38 +10:00
Andrew Tridgell
dcab51801c
HAL_ChibiOS: implement boost_end
...
this fixes problems with main thread priority and SPI bus delays on
fmuv3
2018-05-05 07:45:53 +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
67993d6e5c
HAL_ChibiOS: re-instate priority boost system
...
this adds back in the priority boost system for the main thread when
waiting for a IMU sample. This significantly improves scheduling
performance on very busy boards like a PH2.1
2018-04-07 09:10:29 +10:00
Andrew Tridgell
51c40a013b
HAL_ChibiOS: added IRQ save/restore to hal.scheduler
...
these are used by RPM driver
2018-04-07 09:10:29 +10:00
Francisco Ferreira
e4382c2232
AP_HAL_ChibiOS: fix CAN thread name
2018-02-28 11:37:55 +09: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
b7c4dea9d3
HAL_ChibiOS: gain back 250usec in loop time
...
if we have already called delay_microseconds_boost() then we know
we've given up time to drivers, so we can avoid the extra delay in the
HAL
2018-02-13 17:15:05 +11:00
Mark Whitehorn
da69832140
AP_HAL_ChibiOS: add #ifdef around toneAlarm thread stack declaration
2018-02-13 07:27:02 +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
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
875008f2a6
HAL_ChibiOS: lock all DMA channels on reboot
...
this fixes a problem with the ICM-20789 on I2C where a reboot while the bus is active
leaves the IMU in a dead state where it can't be recovered without a power cycle.
2018-02-08 17:36:33 +11:00
Andrew Tridgell
dce4c90467
HAL_ChibiOS: moved UART thread to UART driver
...
use an event model for triggering sends from tx complete DMA handler
for unbuffered uarts
2018-02-07 20:33:45 +11:00
Andrew Tridgell
6b187b393a
HAL_ChibiOS: fixed fmuv4 build
2018-02-07 20:33:45 +11:00
Siddharth Purohit
e1a8bba58b
HAL_ChibiOS: increase the stack size for uavcan thread
2018-02-07 20:33:45 +11:00
Siddharth Purohit
f2e77ab773
AP_HAL_ChibiOS: add uavcan thread
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ecce2a73d0
HAL_ChibiOS: Storage::_timer_tick is an override
2018-02-07 20:33:45 +11:00
Andrew Tridgell
865e4f3104
HAL_ChibiOS: implement _timer_tick in UARTDriver
2018-02-07 20:33:45 +11:00
bugobliterator
f7ac5aa079
HAL_ChibiOS: put rcin on a separate thread
2018-01-20 17:40:07 +11:00
Andrew Tridgell
7c23e33775
HAL_Chibios: set min output rate for oneshot to 100Hz
...
this will keep ESCs happy during gyro cal
2018-01-20 17:40:07 +11:00
Andrew Tridgell
f14a847b97
HAL_ChibiOS: rename classes to remove 'Chibi'
...
it is redundent as all classes are in ChibiOS namespace, and makes the
code harder to read
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