Thomas Watson
87fef1ae5d
AP_HAL_ChibiOS: use get_HAL_mutable() to install new CAN interfaces
...
Avoids dubious extern redefinition.
2023-11-28 08:24:25 +11:00
Andrew Tridgell
d5fbce0547
AP_HAL_ChibiOS: added last_transmit_us to CAN stats
2023-09-05 06:56:51 +10:00
Andrew Tridgell
aa0b119806
HAL_ChibiOS: disable CANFD bits if CANFD not enabled
...
cannot support CANFD receive on G4
2023-07-12 18:54:45 +10:00
Andrew Tridgell
0cfd9c2ed5
HAL_ChibiOS: don't consider a MAVCAN send failure as a send failure
...
this prevents duplicate sends if MAVCAN buffer is full
2023-06-08 10:15:50 +10:00
bugobliterator
6a0c46d241
AP_HAL_Periph: assert clock is FDCANCLK is 80MHz for H7 boards
2022-03-11 18:13:54 +11:00
bugobliterator
633eb0db8b
AP_HAL_ChibiOS: move to using data_32 for copying into CANFD buffer
2022-03-11 18:13:54 +11:00
bugobliterator
faf0c0d7c3
AP_HAL_ChibiOS: set canfd bitrates using CANFD_SUPPORTED opt
2022-03-11 18:13:54 +11:00
bugobliterator
4bdbd37731
AP_HAL_ChibiOS: use datalength when copying payload into CAN Frames
2022-03-11 18:13:54 +11:00
bugobliterator
47dd964e63
AP_HAL_ChibiOS: add init method to take in separate canfd bitrate
2022-03-11 18:13:54 +11:00
Siddharth Purohit
8aa047d876
AP_HAL_ChibiOS: add support for CANFD for H7 and G4
2022-03-11 18:13:54 +11:00
Andrew Tridgell
638e20a0b9
HAL_ChibiOS: bring in hal.h where it is needed
2022-02-22 12:13:19 +11:00
Andrew Tridgell
fd8d28e23c
HAL_ChibiOS: reduced time in critical sections for CAN processing
2022-02-19 18:24:56 +11:00
Andrew Tridgell
33ebc83a68
AP_HAL_ChibiOS: disable CAN filtering except on AP_Periph
...
this saves flash space and makes CAN forwarding for any bus without
reconfigure/reboot easy. CAN filtering is not useful in the main
flight controller firmware as we want to see nearly all packets
2022-02-12 16:36:05 +11:00
Andrew Tridgell
124c9d5d9b
HAL_ChibiOS: support mavcan message forwarding
2022-02-12 16:36:05 +11:00
bugobliterator
a8ab20abd9
AP_HAL_ChibiOS: allow sending stats via mavftp on AP_Periph
2021-08-19 14:20:58 +10:00
bugobliterator
81c5a99527
AP_HAL_ChibiOS: fix invalid use of FDCAN2_IT0_IRQn enum for ifdef
2021-08-10 07:25:05 +10:00
Andrew Tridgell
bab0c1dfc7
HAL_ChibiOS: fixed build for single FDCAN G4 boards
2021-08-03 10:54:03 +10:00
Siddharth Purohit
882b01bae3
AP_HAL_ChibiOS: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS
2021-06-24 09:02:42 +10:00
Tom Pittenger
7a004656a2
AP_HAL_ChibiOS: use HAL_ENABLE_LIBUAVCAN_DRIVERS instead of HAL_MAX_CAN_PROTOCOL_DRIVERS
2021-06-09 18:36:18 +10:00
Tom Pittenger
f764bd6547
AP_HAL_ChibiOS: disable EventSource only when CH_CFG_USE_EVENTS is false
...
(cherry picked from commit 6e7542a70ca2343ab8d18470deaf5fc2d27390af) from bugobliterator
2021-06-09 18:36:18 +10:00
Siddharth Purohit
ad9a8c8bd9
AP_HAL_ChibiOS: record error states in CANFDIface and CANIface
2021-05-26 18:25:01 +10:00
Andrew Tridgell
c3d16cf2e2
HAL_ChibiOS: use defines for G4 messageram
...
review fix
2021-03-23 12:01:20 +11:00
Andrew Tridgell
353eca79b6
HAL_ChibiOS: fixed 32/64 micros bug in CAN select()
2021-03-23 12:01:20 +11:00
Andrew Tridgell
4f10565f82
HAL_ChibiOS: fixed CANFD build on H7
2021-03-23 12:01:20 +11:00
Andrew Tridgell
f57b1b9c4b
HAL_ChibiOS: support logical/physical CAN bus mapping
...
allow for first CAN interface to be CAN2 or CAN3
2021-03-23 12:01:20 +11:00
Andrew Tridgell
439a944801
HAL_ChibiOS: added support for STM32G474 MCU
2021-03-23 12:01:20 +11:00
Andrew Tridgell
5b59445471
AP_HAL_ChibiOS: fixes for build with 20.3.x ChibiOS
2021-03-23 12:01:20 +11:00
Andrew Tridgell
42bc9adfb7
HAL_ChibiOS: use ExpandingString for @SYS buffers
2021-01-05 10:52:00 +11:00
bugobliterator
e16cab0437
AP_HAL_ChibiOS: ensure we timeout while checking FDCAN register sets
2020-10-08 09:31:35 +11:00
bugobliterator
ca957519dc
AP_HAL_ChibiOS: redo filter configuration to make it work with STM32H7
2020-10-08 09:31:35 +11:00
bugobliterator
0a4ea250ad
AP_HAL_ChibiOS: disable CANFilter on H7 boards temporarily
2020-10-01 07:19:19 +10:00
Siddharth Purohit
36ffcdae30
HAL_ChibiOS: modify hal can drivers for use by AP_Periph
2020-09-24 12:32:19 +10:00
Siddharth Purohit
cdf8e369f1
AP_HAL_ChibiOS: create UAVCAN agnostic CANIface driver
...
HAL_ChibiOS
2020-08-19 17:31:09 +10:00
bugobliterator
7b9f0f3fd7
HAL_ChibiOS: use FIFO mode instead of Queue mode in FDCAN driver
2020-05-21 15:32:53 +10:00
Andrew Tridgell
2c68ce1986
HAL_ChibiOS: fixed clock source for FDCAN
...
use selected source and add 80MHz limit, as per manual and latest STM32CubeMX tool
2020-04-24 16:55:03 +10:00
Siddharth Purohit
8c413d3c09
HAL_ChibiOS: fix writing into a NULL pointer CANFD interrupt
2019-10-30 22:15:04 +11:00
Andrew Tridgell
15e4641e51
AP_HAL_ChibiOS: cleanup ifdefs for SLCAN enable
2019-10-08 10:02:14 +11:00
Andrew Tridgell
555f56a8af
HAL_ChibiOS: removed wait on CAN peripheral in H7
...
these wait busy loops can take a very long time, and end up causing
interrupts to be lost elsewhere in the system, causing lost bytes on
UARTs
We should not have while loops waiting on peripharals like this. If we
do need to wait for a flag to clear then it needs to be done in a low
priority thread, or we need to check for completion in a timer
CAN still seems to work with this change, but needs flight testing
2019-10-03 15:26:47 +10:00
Siddharth Purohit
2f153a3577
HAL_ChibiOS: remove singleton interface from slcan_router
2019-07-08 12:18:29 +10:00
Siddharth Purohit
67c925865c
HAL_ChibiOS: add support for CAN on STM32H7 boards
2019-07-08 12:18:29 +10:00