Commit Graph

1239 Commits

Author SHA1 Message Date
marcoveeneman e75bb117dd Fixed CONFDIR missing in PAL makefiles 2018-03-12 19:25:44 +01:00
marcoveeneman e38bf60447 Aligned Tiva Makefiles 2018-03-12 19:18:39 +01:00
marcoveeneman 32cdf41174 Fixed warnings triggered by -Wundef compile option 2018-03-12 19:04:54 +01:00
Fabien Poussin ecbe54cab7
Merge pull request #146 from romainreignier/fix_rcc_api
Keep track of STM32 RCC API
2018-03-12 01:09:02 +01:00
Romain Reignier b143e38a66 Keep track of STM32 RCC API
RCC API changed in 01/2018 so apply the changes.

Note that ae7a4d40b8 partially fixed the changes in QEI module but some were missing.
So update the other modules too.
2018-03-11 22:13:06 +01:00
marcoveeneman 0b539b26b0 Simplified a makefile by using the new variables
Also disabled FPU, added license makefile and added -Wundef to C and C++ warnings.
2018-03-10 15:34:41 +01:00
marcoveeneman 5e65e52f28 Fixed wrong variable name for ASM files 2018-03-10 15:32:24 +01:00
marcoveeneman 4aa00494c2 Added shared variables to startup, board and platform makefiles 2018-03-10 14:58:45 +01:00
Fabien Poussin aa8c6cc4af
Merge pull request #145 from marcoveeneman/tiva_improvements
Various Tiva improvements
2018-03-08 21:42:35 +01:00
Fabien Poussin f113e89354 Updating chconf.h for STM32 testhal 2018-03-08 20:29:02 +01:00
Fabien Poussin ae7a4d40b8 Fixes for STM32F0 testhal 2018-03-08 20:14:13 +01:00
Fabien Poussin 32f792087a
Merge pull request #139 from wiml/kinetis_sdhc
Add support for the Kinetis SDHC peripheral
2018-03-08 17:13:30 +01:00
Fabien Poussin 6927538038
Merge pull request #136 from wiml/k64_uarts
Added support for additional UARTs (up to six on the K64F).
2018-03-08 17:11:14 +01:00
Fabien Poussin 11066ebbd3
Merge pull request #143 from qmk/fix_kinesis_usb_data_sync
Fix Kinetis usb databank synchronization problems
2018-03-08 17:09:26 +01:00
Fabien Poussin 14c851fdab
Merge pull request #141 from qmk/17.6.3_fixes
Add usb_lld_wakeup_host for Kinetis
2018-03-08 17:09:10 +01:00
marcoveeneman be0446c549 Updated all mcuconf.h files to include PAL IRQ settings. 2018-03-07 20:44:42 +01:00
marcoveeneman 9ef6a86060 Renamed GPIO IRQ priority definitions for the PAL driver 2018-03-07 20:38:10 +01:00
marcoveeneman 1febc19597 Added PAL testhal application to travis build script 2018-03-02 18:58:34 +01:00
marcoveeneman defeba5d06 Removed EXT testhal application from travis build script 2018-03-02 18:58:02 +01:00
marcoveeneman b08f095a7e Removed EXT testhal application 2018-03-02 18:55:41 +01:00
marcoveeneman 9a21d8e143 Removed EXT driver files 2018-03-02 18:55:22 +01:00
marcoveeneman 2a01a63f86 Disabled tickless timer for TM4C129x demos. 2018-03-02 18:40:55 +01:00
marcoveeneman e7478cb78d Added multi target testhal application for PAL driver. 2018-03-02 00:11:46 +01:00
marcoveeneman 2977a2bc87 Implemented events to PAL driver for Tiva devices.
Most code from the EXT driver could be reused.
2018-03-02 00:09:45 +01:00
marcoveeneman f8b91dc682 Added number of GPIO pins to TM4C129x registry. 2018-03-02 00:07:02 +01:00
marcoveeneman 7057148a43 Fixed hal_st_lld still using old register access.
Registers are now accessed using the HWREG() macro.
2018-03-02 00:05:39 +01:00
marcoveeneman ff7d474ecd Updated platform.mk files to handle halconf.h files located in CONFDIR 2018-03-02 00:02:48 +01:00
marcoveeneman 927b3cf1b4 Fixed bug in pal_lld_writepad implementation 2018-03-01 23:13:01 +01:00
marcoveeneman cae865f0b9 Changed PAL driver so that TM4C123x devices GPIO blocks always use AHB. 2018-02-28 18:28:02 +01:00
marcoveeneman 6b277eb3db Fixed startup makefiles
vectors.c was replaced by vectors.S
2018-02-27 20:59:58 +01:00
marcoveeneman bf1167e3c6 Updated all halconf.h files 2018-02-27 20:52:58 +01:00
marcoveeneman a59f29723c Updated all chconf.h files 2018-02-27 20:46:18 +01:00
marcoveeneman b5a45b5472
Merge pull request #144 from marcoveeneman/remove_duplicate_tiva_launch_configurations
Removed duplicate OpenOCD on ICDI launch configurations.
2018-02-26 21:06:31 +01:00
marcoveeneman a71feeacc3 Removed duplicate OpenOCD on ICDI launch configurations.
Starting from ChibiOS 17.6.4 and ChibiOS 18.2.0 OpenOCD launch configuration will be placed under ($CHIBIOS)/tools/eclipse/debug/
2018-02-12 18:41:28 +01:00
Fred Sundvik b7f761313c Fix data usb data toggle sync problem
USB control transfers are structured as the following.
For incoming transfers
Setup (Data0 out)
Data (Data1/Data0 in) - starting with data 1
Status (Data1 out)

For outgoing transfers
Setup (Data0 out)
Data (Data1/Data0 out) - starting with data 1
Status (Data1 in)

The in buffers (device to host) are always correctly synchronized, since
they can always be reset to Data1 each setup packet without any
synchronization problems.

The problem occured for outgoing transfers (host to device). For
incoming transfers the data banks always alternates, and will
automatically stay in sync. Outgoing transfers also stays in sync when
there's an odd number of data packets. However when the number is even,
including zero, then the last packet received by the device will be
data0 and the next setup packet also has to be data0, so there's a
synchronization problem.

This itself is not a problem since data toggle synchronization(DTS) is
ignored for setup packets, however if the follwoing packet after that
is also an out packet, then the data bank will be wrong and the packet
dropped. In this case the USB spec don't allow sending a nack, so it
will only recover after a timeout, when the host tries to send a new
setup packet.

The old code tried to take care of this situation by reinitializing
both data banks when a setup packet is received. The problem is that the
next packet might already have been received or is in progress of being
received at this point, so the fixup comes to late. The new code does
the fixup when a status packet is about to be sent from the device to
avoid this problem.
2018-02-08 08:34:51 +02:00
Fred Sundvik 1178cf761c Fix typo in k20xx.h 2018-02-08 08:34:14 +02:00
Fred Sundvik 432bc1762f Add usb_lld_wakeup_host for Kinetis 2018-02-03 17:25:31 +02:00
Uladzimir Pylinski f2f4ed8ca4
Merge pull request #140 from elagil/master
Added support for STM32F7
2018-01-31 22:12:23 +03:00
Adrian 90b7d6bbd0 Added support for STM32F7
Tested only for STM32F746, other chipsets have to be checked.
2018-01-31 09:55:38 +01:00
Wim Lewis 7e51a3bcfa Use an interrupt instead of polling for simple commands.
Updated some comments and some trace statements.
2018-01-18 18:23:07 -08:00
Wim Lewis 48d924c24b Improved error handling: check the card's state before trying to abort
a failed data transfer; translate card status bits into HLD error
bits. Set BLKATTR_BLKCNT even when it's not being used, which seems to
avoid errors when alternating between multi-block and single-block
transfers. Some comments.
2018-01-18 01:33:04 -08:00
Wim Lewis ee3f7f1b85 Low-level driver for the Kinetis SDHC peripheral as found on the MK64FX512
and other members of the Kinetis family.
2018-01-06 03:17:53 -08:00
Wim Lewis 527ddd6e45 Board definitions for the PJRC Teensy 3.5, based on the Kinetis K64. 2018-01-06 03:14:43 -08:00
Wim Lewis 0df335ce45 Basic support for the (Motorola/Freescale/NXP) Kinetis MK64FX512 chip,
partially copied from the existing K20 support.
2018-01-06 03:09:58 -08:00
Uladzimir Pylinski b5321c7e0e
Merge pull request #137 from dflogeras/add-stm32f769-to-sdram
Add STM32F769 to FSMCv1 sdram driver
2017-12-15 21:12:39 +03:00
Dave Flogeras 5cc37ffd32 Add STM32F769 to FSMCv1 sdram driver 2017-12-14 16:25:15 -04:00
Wim Lewis c4eb6b4901 Added support for additional UARTs (up to six on the K64F).
Also moved some code that is duplicated per-UART into
local functions to reduce the amount of duplication.
2017-12-08 19:42:13 -08:00
Diego Ismirlian 03615f40dc USBH: debug improvements 2017-12-04 13:11:16 -03:00
marcoveeneman a08a28e32d Fixed I2C and UART testhal demos 2017-11-24 22:26:11 +01:00
marcoveeneman 19efef2f4a Fixed hal_i2c_lld.c 2017-11-24 22:25:12 +01:00