Andrew Tridgell
2b86c0e962
HAL_ChibiOS: tweak DMA settings for skyviper-v2450
...
this resolves a problem with the cypress radio.
Thanks to Sid for working this out
2018-02-08 22:15:41 +11:00
Andrew Tridgell
8226530610
HAL_ChibiOS: added DMA_PRIORITY and DMA_NOSHARE options
...
this allows finer grained control of DMA streams
2018-02-08 22:13:00 +11:00
Andrew Tridgell
507fcb0f27
Tools: moved make_abin.sh into Tools/scripts
...
will be used in px4 build
2018-02-08 18:56:51 +11:00
Andrew Tridgell
4ce0c2c827
HAL_ChibiOS: simplify skyviper-v2450 config
...
remove unused peripherals
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b90c0d78f3
HAL_ChibiOS: fixed build warning
2018-02-08 17:36:33 +11:00
Andrew Tridgell
8eff43a352
HAL_ChibiOS: fixed printf arguments
2018-02-08 17:36:33 +11:00
Andrew Tridgell
aee6462deb
HAL_ChibiOS: enable I2C clearing on F412 board only
...
may be needed on other boards in the future, but for now we only know
its needed on an I2C 20789, which is rare
2018-02-08 17:36:33 +11:00
Siddharth Purohit
40142e5aef
ChibiOS: implement way to clear i2c bus by toggling clock line
2018-02-08 17:36:33 +11:00
Andrew Tridgell
0d089e8116
HAL_ChibiOS: fixed F412 OF reset pin
2018-02-08 17:36:33 +11:00
Andrew Tridgell
3c3389a005
HAL_ChibiOS: raise I2C bus priority on F412
...
needed for good scheduling with I2C IMU
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
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
6faace278a
HAL_ChibiOS: run i2c at 400kHz on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
9f53ae1ea4
HAL_ChibiOS: added F412-rev1 hwdef.dat
2018-02-08 17:36:33 +11:00
Andrew Tridgell
47ce37f463
HAL_ChibiOS: report I2C clock downgrades
2018-02-08 17:36:33 +11:00
Andrew Tridgell
73418519eb
HAL_ChibiOS: enable analog debug on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
fd824e6258
HAL_ChibiOS: enable toy mode on F412
2018-02-08 17:36:33 +11:00
Andrew Tridgell
d208dc69d3
Tools: moved make_abin.sh into ChibiOS scripts
2018-02-08 17:36:33 +11:00
Andrew Tridgell
4aa604a193
HAL_ChibiOS: enable pixartflow on skyviper-V2450
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
3cacb1d4b5
HAL_ChibiOS: commented the motor order in hwdef
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
75226ba187
HAL_ChibiOS: enable logging on MindPX-v2
...
not working yet, seems to be a problem with SDIO interface
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4548fd4d2f
HAL_ChibiOS: changed RCIN to PULLDOWN
...
this fixes a high cpu load with no receiver connected
2018-02-07 20:33:45 +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
30e4323c6d
HAL_ChibiOS: disable USART1 till USB problem solved
...
using USART1 causes USB disconnects. The behaviour is like CTS/RTS is
enabled on USART1, but it is disabled.
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d0eb2970c7
HAL_ChibiOS: ensure RTS and CTS are both disabled for no flow control
2018-02-07 20:33:45 +11:00
Andrew Tridgell
82f1f462ae
HAL_ChibiOS: ensure we don't init a uart driver twice
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ad5a04fc89
HAL_ChibiOS: added NODMA option
...
this allows a peripheral to be configured without DMA (for low-use
UARTs)
2018-02-07 20:33:45 +11:00
Andrew Tridgell
74f4d5a3c9
HAL_ChibiOS: push MPU6500 to 4MHz on mindpx-v2
2018-02-07 20:33:45 +11:00
Andrew Tridgell
f1ce321a2f
HAL_ChibiOS: added checking of bus owner
...
this ensures all bus transfers are only done by the thread that owns
the semaphore
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
626632989e
HAL_ChibiOS: fixed build for boards with no USB
2018-02-07 20:33:45 +11:00
Andrew Tridgell
41758348e5
HAL_ChibiOS: added checking of lock state in shared_dma
...
and use lock around check for tx completion in UART handler
2018-02-07 20:33:45 +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
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
aae1cc22f4
HAL_ChibiOS: updated USB device strings
...
use defaults or add in serial number
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
23e1b2e271
HAL_ChibiOS: added paranoid state checking on I2C
...
this is here just while debugging an issue with Mark
2018-02-07 20:33:45 +11:00
Andrew Tridgell
7e19f49e42
HAL_ChibiOS: fixed DMA lock in SoftSigReader
2018-02-07 20:33:45 +11:00
Andrew Tridgell
1aa6a0068a
HAL_ChibiOS: fixed order of I2C DMA
...
this was harmless, but confusing for debugging
2018-02-07 20:33:45 +11:00
Andrew Tridgell
111e5b6268
HAL_ChibiOS: change USB ID for revo-mini
2018-02-07 20:33:45 +11:00
Andrew Tridgell
4d018cf5e2
HAL_ChibiOS: take lock on DMA allocate/deallocate
...
this is required for the stm32_dma_stream bitmask manipulation
2018-02-07 20:33:45 +11:00
Andrew Tridgell
bc49c0d2c5
HAL_ChibiOS: make hwdef.h the same on python2 and python3
...
and output to /tmp by default to prevent accidental use of old hwdef.h
in the build
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e002fbdb8d
HAL_ChibiOS: fixed a build warning
2018-02-07 20:33:45 +11:00
Andrew Tridgell
077aa24c6d
HAL_ChibiOS: add more pins for revo-mini port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e91144cc8e
HAL_ChibiOS: allow for empty UART drivers
...
allows for boards with no default GPS port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e0212ebe85
HAL_ChibiOS: cope with ETR timer channels
...
trean the ETR capability as a separate AF
2018-02-07 20:33:45 +11:00
Andrew Tridgell
c1df2a8a4b
HAL_ChibiOS: cope with timers 10 and later
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d191b37520
HAL_ChibiOS: cope with having no ADC inputs
2018-02-07 20:33:45 +11:00
Andrew Tridgell
87389e0fdc
HAL_ChibiOS: fixed double DMA allocation on i2c
2018-02-07 20:33:45 +11:00
Andrew Tridgell
19e1349d0a
HAL_ChibiOS: setup serial5 for fmuv3 ESP8266
2018-02-07 20:33:45 +11:00
Andrew Tridgell
560948dc69
HAL_ChibiOS: fixed GPIOs for ESP8266 port
2018-02-07 20:33:45 +11:00
Andrew Tridgell
fa96e23552
HAL_ChibiOS: setup correct volt and current pins
...
use hwdef.dat to specify battery pins
2018-02-07 20:33:45 +11:00
Andrew Tridgell
85acbcb21d
HAL_ChibiOS: fixed UART send from TX complete IRQ
2018-02-07 20:33:45 +11:00
Andrew Tridgell
63a825dd2c
HAL_ChibiOS: don't call spiStart() unless bus is stopped
2018-02-07 20:33:45 +11:00
Andrew Tridgell
e29b79f41b
HAL_ChibiOS: fixed DMA allocation bug on SPI
...
thanks to Mark Whitehorn for finding this crash
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
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
77f8acd7a1
HAL_ChibiOS: add CAN to supported peripherals list
2018-02-07 20:33:45 +11:00
Siddharth Purohit
6f21c1583f
HAL_ChibiOS: add definitions to support uavcan in fmuv3
2018-02-07 20:33:45 +11:00
Siddharth Purohit
edd0e8d2f5
HAL_ChibiOS: add CANManager to ChibiOS namespace
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
Siddharth Purohit
f2e77ab773
AP_HAL_ChibiOS: add uavcan thread
2018-02-07 20:33:45 +11:00
Siddharth Purohit
3c009cf02c
AP_HAL_ChibiOS: add CAN driver
2018-02-07 20:33:45 +11:00
Andrew Tridgell
b992b5e02a
HAL_ChibiOS: allow for 16kHz brushed on all timers
2018-02-07 20:33:45 +11:00
Andrew Tridgell
b0d0ee1f01
HAL_ChibiOS: reformat using yapf and support python3
...
allow hwdef.h compilation using python3
2018-02-07 20:33:45 +11:00
Andrew Tridgell
67e0ba22fe
HAL_ChibiOS: fixed some errors in F405 tables
2018-02-07 20:33:45 +11:00
Andrew Tridgell
70ff3871e0
HAL_ChibiOS: fixed RC in on CH1 of timer
2018-02-07 20:33:45 +11:00
Andrew Tridgell
890d322b47
HAL_ChibiOS: starting on mini-pix hwdef.dat
...
for RadioLink mini-pix board
2018-02-07 20:33:45 +11:00
Andrew Tridgell
23555f4c25
HAL_ChibiOS: allow for empty storage during bringup
...
useful when storage backend driver isn't written yet
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
713006bb1d
HAL_ChibiOS: allow more OTG defines to be overridden
2018-02-07 20:33:45 +11:00
Andrew Tridgell
1fb257a35a
HAL_ChibiOS: initial hwdef.dat for revo mini
2018-02-07 20:33:45 +11:00
Andrew Tridgell
979a2a4796
HAL_ChibiOS: removed debug code
2018-02-07 20:33:45 +11:00
Siddharth Purohit
538af2a58a
HAL_ChibiOS: fix parity and stop bit setting
2018-02-07 20:33:45 +11:00
Mark Whitehorn
b94b1dcd97
AP_HAL_ChibiOS: add missing declaration
2018-02-07 20:33:45 +11:00
Siddharth Purohit
df4bf7e476
HAL_ChibiOS: fix irq clash with unnecessary access to readbuf ring buffer
2018-02-07 20:33:45 +11:00
Siddharth Purohit
02696882e9
HAL_ChibiOS: if unbuffered write, do continue to invoke DMA writes
...
adds higher latency to device sharing DMA
2018-02-07 20:33:45 +11:00
proficnc
c613c0bde2
added the cube red hardware definition
2018-02-07 20:33:45 +11:00
Andrew Tridgell
3dacbd1b36
HAL_ChibiOS: hold write lock for unbuffered writes
2018-02-07 20:33:45 +11:00
Andrew Tridgell
ad26ca4a27
HAL_ChibiOS: implement parity and stop bits controls
2018-02-07 20:33:45 +11:00
Andrew Tridgell
2e15285c51
HAL_ChibiOS: refuse unbuffered writes without DMA
...
we would need much more complex code to handle this
2018-02-07 20:33:45 +11:00
Andrew Tridgell
3f2cc2c9d6
HAL_ChibiOS: implement low latency UART writes
...
this implements the set_unbuffered_writes() API by performing writes
directly in the write() call and not from a timer
2018-02-07 20:33:45 +11:00
Andrew Tridgell
015c3a1fa3
HAL_ChibiOS: removed duplicate defines
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
Andrew Tridgell
a5bafb399f
HAL_ChibiOS: adjust SPI pin speeds
2018-02-07 20:33:45 +11:00
Andrew Tridgell
7b251c9739
HAL_ChibiOS: lower FRAM CS speed to 2MHz
...
this matches old firmware
2018-01-20 17:40:07 +11:00
Andrew Tridgell
30fd2da108
HAL_ChibiOS: enable RTSCTS and SBUS_OUT
2018-01-20 17:40:07 +11:00
Andrew Tridgell
63671b06a8
HAL_ChibiOS: added HAL_I2C_MAX_CLOCK define
2018-01-20 17:40:07 +11:00
Andrew Tridgell
88f11f5a50
HAL_ChibiOS: added HAL_I2C_BUS_BASE
...
this allows fmuv4 to start at bus 1
2018-01-20 17:40:07 +11:00
bugobliterator
c60c0b8ab1
HAL_ChibiOS: fix undef line processing
2018-01-20 17:40:07 +11:00
Andrew Tridgell
8286486890
HAL_ChibiOS: drop default SPI priority to 179
2018-01-20 17:40:07 +11:00
Andrew Tridgell
ab748034a2
HAL_ChibiOS: removed RC inversion logic
...
not needed any more
2018-01-20 17:40:07 +11:00
bugobliterator
7db19cfae0
HAL_ChibiOS: use separate parameter for detect timeout
2018-01-20 17:40:07 +11:00
Andrew Tridgell
613d7a47ba
HAL_ChibiOS: support RCIN on mindpx-v2
2018-01-20 17:40:07 +11:00