Andrew Tridgell
46976c4358
HAL_ChibiOS: fixed remapping of ioline_t with BRD_ALT_CONFIG
...
when a peripheral is made available via BRD_ALT_CONFIG we need to
remap the existing ioline_t in the UART and I2C drivers to use the new
pin.
This fixes an issue with half-duplex, inverted, swapped UART pins for
protocols like FPort and FPort2
2020-10-28 19:51:45 +11:00
Andrew Tridgell
e471b23f58
HAL_ChibiOS: add a max quota of GPIO interrupts
...
This implements a max quota of GPIO interrupts per 100ms period to
prevent high interrupt counts from consuming all CPU and causing a
lockup. The limit is set as 10k interrupts per 0.1s period. That limit
should be high enough for all reasonable uses of GPIO interrupt
handlers while being below the level that causes significant CPU loads
and flight issues
This addresses issue #15384
2020-10-02 09:38:24 +10:00
Andrew Tridgell
7320cd3174
HAL_ChibiOS: fixed assert in wait_pin()
2020-04-27 14:01:04 +10:00
Andrew Tridgell
ffe773ff6f
HAL_ChibiOS: use DRDY pin for ADIS16470 on mRoNexus
2020-04-23 07:28:13 +10:00
Andrew Tridgell
450871cde1
HAL_ChibiOS: added wait_pin() implementation
2020-04-23 07:28:13 +10:00
Andrew Tridgell
66dd5925cf
HAL_ChibiOS: added support for alternative pin configs
2020-01-02 09:52:57 +11:00
Andrew Tridgell
0751756e91
HAL_ChibiOS: retain OPENDRAIN if set on a pin
...
this allows OPENDRAIN when set on a pin to be retained when set with a
pinMode(). This fixes a partially lit B/E LED on the Pixhawk4
2019-11-17 11:45:38 +11:00
Mirko Denecke
b84dcd483d
AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces
2019-10-21 08:01:56 +11:00
Andrew Tridgell
a9e29f7556
HAL_ChibiOS: added pullup/pulldown support on GPIO
...
using the convention of write() on an input pin to set pullup/pulldown
2018-09-06 07:20:46 +10:00
Peter Barker
2209e4a697
AP_HAL_ChibiOS: new HAL functor-based methods
...
AP_HAL_ChibiOS: adjust for irq-type enumeration change
AP_HAL_ChibiOS: implement attach-AP_HAL::Proc to interrupt interface
2018-08-21 20:34:01 +09:00
Lucas De Marchi
668c941717
Global: use new version of ARRAY_SIZE
2018-08-04 15:31:55 +10:00
Andrew Tridgell
64c8ca514c
HAL_ChibiOS: fixed attach_interrupt check
...
we can't have two handlers on the same pad
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
Siddharth Purohit
4e8d072d6d
HAL_ChibiOS: move to using recent pal driver api for GPIO IRQ events
2018-08-03 13:44:59 +10:00
Michael du Breuil
6fba374069
AP_HAL_ChibiOS: Remove GPIO::analogPinToDigitalPin()
2018-07-11 23:09:52 -07:00
Andrew Tridgell
3292abaa19
HAL_ChibiOS: fixed F412 build
2018-07-10 11:48:06 +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
96cc657bd0
HAL_ChibiOS: fixed GPIO interrupt port mapping
2018-04-09 15:32:04 +10:00
Andrew Tridgell
68293c9c11
HAL_ChibiOS: don't require GPIO() markers on PWM outputs
...
this fixes blheli pass-thru on MindPX-v2
2018-04-09 15:32:04 +10:00
Andrew Tridgell
9a29c6d3b5
HAL_ChibiOS: implement DigitalSource()
2018-04-07 09:10:29 +10:00
Andrew Tridgell
b350b07593
HAL_ChibiOS: allow internal GPIO fuctions to use disabled pins
2018-04-07 09:10:29 +10:00
Andrew Tridgell
382772d999
HAL_ChibiOS: initial support for ESC serial output
2018-04-07 09:10:29 +10: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
867e7ebf71
HAL_ChibiOS: auto-generate GPIO table from hwdef.dat
2018-01-15 11:46:02 +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
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
f5c8754d75
HAL_ChibiOS: use ARRAY_SIZE_SIMPLE
...
this allows for boards without a device type (eg. no SPI bus)
2018-01-15 11:46:02 +11:00
Andrew Tridgell
280140bf25
HAL_ChibiOS: added support for MindPX-v2
2018-01-15 11:46:02 +11:00
Andrew Tridgell
41be81af34
HAL_Chibios: added hardware flow control for UARTs
...
implement RTS in software and CTS in hardware
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c3435e45c5
HAL_ChibiOS: initial port to FMUv4
2018-01-15 11:46:02 +11:00
Andrew Tridgell
b57f8f01c6
HAL_Chibios: fixed return for read on invalid gpio pin
2018-01-15 11:46:02 +11:00
Andrew Tridgell
21f40da510
HAL_Chibios: align GPIO pins with px4 build
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