Andrew Tridgell
58292821b3
HAL_ChibiOS: fix DMA on UARTs for F303
5 years ago
Andrew Tridgell
ccd1ce406c
HAL_ChibiOS: scale uart rx buffer size with baudrate
...
this ensures we have enough buffer space for a RTK GPS, as well as for
high speed comms with a companion computer
5 years ago
Andrew Tridgell
bc1de7a208
HAL_ChibiOS: support STM32F3xx MCUs
5 years ago
Mirko Denecke
b84dcd483d
AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces
5 years ago
Andrew Tridgell
bf2cf7834d
HAL_ChibiOS: fixed a bug in parity/stop-bit setting on STM32F7 and H7
...
and add get_options() method
6 years ago
Andrew Tridgell
d1565a96c5
HAL_ChibiOS: wrap cacheBuffer functions
...
needed to avoid problem with end() method in UARTDriver shadowing with
F7 implementation of cache macros
6 years ago
Andrew Tridgell
16bdaaa1af
HAL_ChibiOS: added support for STM31F10x for AP_Periph
6 years ago
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
6 years ago
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.
6 years ago
Siddharth Purohit
2f0d1336e6
HAL_ChibiOS: add support for dual usd cdc
6 years ago
Andrew Tridgell
7e1048c89b
HAL_ChibiOS: enable UART inversion on H7
6 years ago
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
6 years ago
Andrew Tridgell
dad1774330
HAL_ChibiOS: fixed channel selection for F4/F7 uart driver
6 years ago
Andrew Tridgell
9647a68c9e
HAL_ChibiOS: fixed UART RX DMA for H7
6 years ago
Andrew Tridgell
231117e9b1
HAL_ChibiOS: invalidate before read on rx, not on DMA setup
...
more efficient, as we only invalidate what was used
6 years ago
Andrew Tridgell
071d5e01af
HAL_ChibiOS: added DMAMUX channel assignment calls
6 years ago
Andrew Tridgell
f4e31ce65b
HAL_ChibiOS: added more cache flush ops
6 years ago
Andrew Tridgell
dd8115c9b4
HAL_ChibiOS: check for already allocated TX dma in UART driver
6 years ago
Andrew Tridgell
d9c888ab45
HAL_ChibiOS: port SPI, I2C and UART drivers to H7
6 years ago
Andrew Tridgell
bbd25350eb
HAL_ChibiOS: support ChibiOS kernel major 6
...
preparing for STM32H7 support
6 years ago
Siddharth Purohit
b5fbdc9888
HAL_ChibiOS: invoke serial data event signal for non dma ports as well
6 years ago
Andrew Tridgell
8c43db1a00
HAL_ChibiOS: implement half-duplex delay and read locking
6 years ago
Andrew Tridgell
013f1d55e8
HAL_ChibiOS: added support for swapping UART pins
6 years ago
Andrew Tridgell
d84bc9f556
HAL_ChibiOS: fixed STM32F7 RXINV flag
6 years ago
Andrew Tridgell
85243ad522
HAL_ChibiOS: enable support for half-duplex uart config
6 years ago
Andrew Tridgell
acf03980ca
HAL_ChibiOS: added UART inversion options
...
support GPIO pins or STM32F7
6 years ago
Andrew Tridgell
8c962e6f0f
HAL_ChibiOS: use a larger TX buffer on USB
...
this is needed for fast log download on vehicles with 50Hz main loop
7 years ago
Francisco Ferreira
1b46104a98
AP_HAL_ChibiOS: fix warning when STDOUT is defined
...
../../libraries/AP_HAL_ChibiOS/UARTDriver.cpp:118:12: warning: 'int hal_console_vprintf(const char*, va_list)' defined but not used [-Wunused-function]
static int hal_console_vprintf(const char *fmt, va_list arg)
^
7 years ago
Andrew Tridgell
7aba99e229
HAL_ChibiOS: fixes for ChibiOS version update
7 years ago
Siddharth Purohit
395c48933c
HAL_ChibiOS: move tto using updated time conversion API
7 years ago
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
7 years ago
Andrew Tridgell
83f38d536e
HAL_ChibiOS: fixed flow control auto-detect without DMA
...
this fixes automatic flow control detection when we are not using DMA
for TX
7 years ago
Andrew Tridgell
50f7e55f0b
HAL_ChibiOS: don't clear buffers if no baudrate change
7 years ago
Michael du Breuil
153ee6ca8e
AP_HAL_ChibiOS: Clear UART buffers when opening a port
7 years ago
Michael du Breuil
037e53ba8a
AP_HAL_ChibiOS: Reduce flash space of UARTDriver
...
Saves 32 bytes
7 years ago
Andrew Tridgell
369ac5edd0
HAL_ChibiOS: save more space in the bootloader
7 years ago
Andrew Tridgell
e3b68876a9
HAL_ChibiOS: fixed tx_len on tx DMA timeout
7 years ago
Andrew Tridgell
8431a677d9
HAL_ChibiOS: added a timeout to DMA UART TX
...
this prevents a shared DMA channel being held for a long time if a CTS
pin is held either by not being connected or by a radio
7 years ago
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
7 years ago
Andrew Tridgell
0fade4eb9e
HAL_ChibiOS: make sure the UART bounce buffers are DMA safe
7 years ago
Andrew Tridgell
edb831653f
HAL_ChibiOS: added dma_flush and dma_invalidate operations
...
these are needed to manage the data cache on the STM32F7
7 years ago
Andrew Tridgell
7b720aae46
HAL_ChibiOS: allow printf() to work on systems without debug console
...
map to hal.console once initialised
7 years ago
Andrew Tridgell
89898bae1d
HAL_ChibiOS: take account of available bytes in receive_time_constraint_us
7 years ago
Andrew Tridgell
7005383f82
HAL_ChibiOS: implement uart receive timestamp API
7 years ago
mirkix
cb50639e27
AP_HAL_ChibiOS: add STM32F7 UART support
7 years ago
Andrew Tridgell
5854ccbb4c
HAL_ChibiOS: removed stray debug code
...
thanks to @alielectric for noticing
7 years ago
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
7 years ago
Andrew Tridgell
e448b5d069
HAL_ChibiOS: implement UART port locking
7 years ago
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!
7 years ago
Andrew Tridgell
a64819cbf2
HAL_ChibiOS: minimise DMA TX latency on contended UARTs
...
try to prevent long delays on other users of a DMA channel
7 years ago