Commit Graph

1160 Commits

Author SHA1 Message Date
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
marcoveeneman 93dd54ecdc Fixed compile errors in demos 2017-11-24 22:23:27 +01:00
marcoveeneman 77bf52e042 Updated startup makefiles with new path to CMSIS Core headers 2017-11-23 21:47:09 +01:00
marcoveeneman ec4b244c51
Merge pull request #125 from marcoveeneman/tiva_add_uart
Add Tiva UART driver.
2017-11-23 21:37:24 +01:00
Diego Ismirlian dbaa1b8700 USBH: AOA: Various improvements 2017-11-19 21:20:57 -03:00
Diego Ismirlian 61dfc26804 USBH: improve disconnection detection; added a necessary reschedule. 2017-11-19 21:17:56 -03:00
Fabio Utzig ab3f7c22cc
Merge pull request #133 from belak/k20x-mcg-c2
Fix for K20x startup
2017-11-04 17:32:26 -02:00
Kaleb Elwert 96413f3767 Fix for K20x startup 2017-11-04 10:41:06 -07:00
Diego Ismirlian f4cf7e5591 Merge branch 'master' of https://github.com/ChibiOS/ChibiOS-Contrib 2017-10-29 17:52:54 -03:00
Diego Ismirlian decde2ca4c USBH: silence compiler warning 2017-10-29 17:43:27 -03:00
Diego Ismirlian 06af5833ed USBH: main driver: implement usbhBulkTransfer as inline function 2017-10-29 17:41:30 -03:00
Diego Ismirlian c1e174b5b2 USBH: testhal: fix compile warning 2017-10-29 17:39:56 -03:00
Diego Ismirlian bfc5805886 Merge branch 'master' of https://github.com/dismirlian/ChibiOS-Contrib 2017-10-29 17:22:24 -03:00
marcoveeneman e683963b76 Added chconf version tag 2017-10-24 23:07:33 +02:00
Uladzimir Pylinski a0089c14da Merge pull request #131 from kimmoli/scsi-test-unit-ready
SCSI: Respond to TEST UNIT READY command, Fix REQUEST SENSE replying
2017-10-21 20:02:25 +03:00
Kimmo Lindholm 9f2ee0a227 SCSI: Respond to TEST UNIT READY command, Fix REQUEST SENSE replying
When host sends TEST UNIT READY command, set sense 'all ok' if block device reports
that medium is inserted, or set sense 'medium not present' if medium is not inserted.

Do not override sense by default with 'all ok', allow REQUEST SENSE command
to be responded with correct sense data which was set on last failure.

Check just DESC bit when responding to REQUEST SENSE command.
2017-10-21 13:36:49 +03:00
Uladzimir Pylinski 406d932f09 Merge pull request #130 from kimmoli/msd_testhal
USB_MSD: Fix testhal according to msdStart() API change
2017-10-14 10:27:31 +03:00
Kimmo Lindholm 630043a63f USB_MSD: Fix testhal according to msdStart() API change 2017-10-13 20:57:58 +03:00
Uladzimir Pylinski 921d233cdd Merge pull request #129 from kimmoli/scsi-serial-number
SCSI: Respond to unit serial number inquiry
2017-10-13 10:10:32 +03:00
Kimmo Lindholm 39487df4de SCSI: Respond to unit serial number inquiry 2017-10-12 00:06:50 +03:00
Fabio Utzig f392dfa223 Add version tags
Signed-off-by: Fabio Utzig <utzig@apache.org>
2017-10-09 10:12:59 -03:00
dismirlian 5cea7f11ec Merge pull request #1 from axoloti/patch-1
USBH: allow enabling IAD without UVC
USBH: implement ISO/INT out in STM32 LLD driver
USBH: introduce usbhSynchronousTransfer helper function
2017-09-16 11:28:09 -03:00
Mark Harris 741459ac27 usbh:correct spelling of usbhSynchronousTransfer 2017-09-14 17:36:21 +02:00
Mark Harris f5f3c8ffdb usbh:_ptxfe_int, use HPTXSTS, introduce usbhSyncrhonousTransfer 2017-09-14 14:41:28 +02:00
Mark Harris d2269527b7 implement ptxfe_int for outbound INT ep 2017-09-12 16:55:01 +02:00
Axoloti 354313f408 allow enabling IAD without UVC 2017-09-12 11:41:38 +02:00
Fabien Poussin f16bd4416a Merge pull request #126 from marcoveeneman/tiva_spi_update
Aligned the Tiva port to the SPI driver improvements.
2017-09-10 23:25:30 +02:00
marcoveeneman 1cc2988040 Aligned the Tiva port to the SPI driver improvements. 2017-09-10 21:16:14 +02:00
marcoveeneman 5b90306c97 Added testhal applcation for Tiva UART driver. 2017-09-10 19:46:13 +02:00
marcoveeneman 5d77abe7f2 Initial version of the Tiva UART driver. 2017-09-10 19:43:04 +02:00