Ryan Vasquez
3b808a59ef
corrected the Callback function call in attach, minor type in the USBserial library
2019-08-23 11:37:41 +01:00
Neil Tuttle
227b6ce027
PSOC6: USB device implementation
2019-08-12 08:32:05 +01:00
George Beckstein
738cbb798d
Removed mbed.h global include
2019-07-11 11:40:52 +01:00
George Beckstein
680625b6b7
Removed incorrect comment
2019-07-11 11:40:52 +01:00
aglass0fmilk
689e6877ee
Added spdx identifiers and fixed indentation in targets.json
2019-07-11 11:40:52 +01:00
George Beckstein
2e4f74222c
Astyle fixed USBPhy_Nordic.cpp
2019-07-11 11:40:52 +01:00
George Beckstein
75cb07ad4f
Changed formatting, check if endpoint is stalled in unstall. Added errata header
2019-07-11 11:40:52 +01:00
aglass0fmilk
e81f6a5640
Fixed failure on endpoint test data toggle reset (under Windows): "Data toggle not reset when calling ClearFeature(ENDPOINT_HALT) on an endpoint that has not been halted."
2019-07-11 11:40:52 +01:00
George Beckstein
70703ec06c
Added in code to fix deepsleep underflow. Nullify event handler member variable.
2019-07-11 11:40:52 +01:00
George Beckstein
655f3db0ca
Lock sleep when USB is initialized
...
Added logic to lock deep sleep when USB is initialized to prevent malfunctioning. This is consistent with the other drivers. See PR ARMmbed/mbed-os#9879
2019-07-11 11:40:52 +01:00
George Beckstein
d2fe3a2562
Autoformatted with astyle
2019-07-11 11:40:52 +01:00
George Beckstein
c427760d27
Fixed some comments
2019-07-11 11:40:52 +01:00
George Beckstein
925f8cb724
Fixed IRQ_ENABLE call to IRQ_DISABLE (oops).
2019-07-11 11:40:52 +01:00
George Beckstein
8b1d8dab0e
Finished compatibility changes for nrfx renaming
2019-07-11 11:40:52 +01:00
George Beckstein
75a799d817
Fixing compatibilities with new nrfx drivers
2019-07-11 11:40:52 +01:00
George Beckstein
d0a08076ae
Removed redundant virtual status transfer notifications.
2019-07-11 11:40:52 +01:00
George Beckstein
036b5b2aa8
Added workaround for "unloading" IN endpoints after unstalling. Disable and then reenable when USBPhyHw::endpoint_unhalt() is called.
2019-07-11 11:40:52 +01:00
George Beckstein
2797bbf5a7
Removed unnecessary logic and changed round robin DMA scheduling
2019-07-11 11:40:52 +01:00
George Beckstein
84b54294f4
Added in flag for preventing double IRQ triggering and added asserts for Nordic driver calls
2019-07-11 11:40:52 +01:00
George Beckstein
8bf6c048cb
Ignore events that happen when an endpoint is stalled/halted
2019-07-11 11:40:51 +01:00
George Beckstein
e05d2fcf49
Added a return from the virtual status transfer software-triggered interrupt. Not entirely sure this is appropriate.
2019-07-11 11:40:51 +01:00
George Beckstein
059a59a9f3
Added simulated status stage interrupt
2019-07-11 11:40:51 +01:00
George Beckstein
153e60d5e9
Trying virtual status stage and generated interrupt
2019-07-11 11:40:51 +01:00
George Beckstein
fae90141e4
Added setup status enum and removed some old commented out code
2019-07-11 11:40:51 +01:00
George Beckstein
c2beffb7fa
Implemented USBPhyHw::unconfigure() as it was causing configuration changes to fail. Endpoints were not being removed properly in the Nordic driver
2019-07-11 11:40:51 +01:00
George Beckstein
1b2df29254
Added data toggle clearing to removing endpoints. Reworked aborting endpoints in nordic driver to prevent an ASSERT when it is called on ISO endpoints
2019-07-11 11:40:51 +01:00
George Beckstein
52747d9c96
Changed a little formatting
2019-07-11 11:40:51 +01:00
George Beckstein
b26055a682
Added code to ignore ZLP packets on the ISOOUT endpoint... not fixing issue yet
2019-07-11 11:40:51 +01:00
George Beckstein
54b8c497ad
Removed function call for SOF event -- frame counter is already included in data from usb event
2019-07-11 11:40:51 +01:00
George Beckstein
242c08d746
Removed 0 max packet size assert for ISO endpoints. Ensured usbd_ep_abort would not be called on ISO endpoints (this currently causes an ASSERT in the Nordic driver
2019-07-11 11:40:51 +01:00
George Beckstein
82a2e80056
Fixed bug causing usb_control_stall_test to fail intermittently. Preparing the Nordic HW for the status stage of a control transfer would sometimes cause the HW to automatically ACK an "invalid" command during the control stall test. This would cause the test to fail (because an invalid request was not stalled).
2019-07-11 11:40:51 +01:00
George Beckstein
0acbeb8304
Reviewing functions. Added critical sections to some functions that access state information.
2019-07-11 11:40:51 +01:00
George Beckstein
b6f4e429fb
Removed disable from disconnect to see if it affects the success of the soft reset test.
2019-07-11 11:40:51 +01:00
George Beckstein
2209d06ff8
Added EP0 stalls to setup event handler
2019-07-11 11:40:51 +01:00
George Beckstein
7e1c50f76e
Added in triggers to synchronize control transfer stages with what the hardware expects. First working example!
2019-07-11 11:40:51 +01:00
George Beckstein
2289cc3f14
Non-working custom feeder. Modified nordic driver to disable automatic EP0STATUS task triggering at end of DMA transfer
2019-07-11 11:40:51 +01:00
George Beckstein
24d8c86007
working on making the mbed and nordic drivers compatible
2019-07-11 11:40:51 +01:00
George Beckstein
cd6892d0f0
Added errata fixes (171, 187) from nRF SDK 15.2 that would prevent USBD from starting up
2019-07-11 11:40:51 +01:00
George Beckstein
c8e93bf3c0
Changed driver to request hf and lf clock sources... not sure why USB Ready event isn't ever getting triggered
2019-07-11 11:40:51 +01:00
George Beckstein
ab1de1542b
Changed power handler to enable/start & disable/stop USBD driver in background
2019-07-11 11:40:51 +01:00
George Beckstein
f92f8df3d8
Configured sdk for enabling USB. Preliminary implementation of USB for nRF52840
2019-07-11 11:40:51 +01:00
Kevin Bracey
2fbbd9d2ca
Introduce Semaphore::acquire methods
...
Deprecate wait() in favour of acquire(), try_acquire(),
try_acquire_for() and try_acquire_until().
Brings Semaphore more into line with CMSIS-RTOS 2 (which uses "acquire"),
itself (as it has "release"), and other classes having "try", "try for"
and "try until".
Also steps away from vague "wait" term - the primary operation here is
to acquire the semaphore, and this will of course sleep.
2019-05-28 17:02:06 +03:00
Martin Kojtal
d299b3fc8b
Merge pull request #9443 from juhaylinen/usbcdc_ecm
...
Add USBCDC_ECM class
2019-05-20 10:30:19 +01:00
Martin Kojtal
3ea1c56124
Merge pull request #10147 from kjbracey-arm/atomic_bitwise
...
Assembler atomics
2019-05-13 14:18:05 +01:00
Kevin Bracey
87396e0bf6
Assembler atomics
...
Reimplement atomic code in inline assembly. This can improve
optimisation, and avoids potential architectural problems with using
LDREX/STREX intrinsics.
API further extended:
* Bitwise operations (fetch_and/fetch_or/fetch_xor)
* fetch_add and fetch_sub (like incr/decr, but returning old value -
aligning with C++11)
* compare_exchange_weak
* Explicit memory order specification
* Basic freestanding template overloads for C++
This gives our existing C implementation essentially all the functionality
needed by C++11.
An actual Atomic<T> template based upon these C functions could follow.
2019-04-26 13:12:35 +03:00
Russ Butler
3a891f9bfe
Fix USB control transfers using small size
...
Fix support for wMaxPacketSize values other than 64 for endpoint 0.
2019-04-24 11:12:40 -05:00
Martin Kojtal
6b9d1573fb
Merge pull request #10096 from fkjagodzinski/test-usb-hid
...
Add USB HID tests
2019-04-17 14:06:51 +01:00
Filip Jagodzinski
565ceb0048
USBHID: Fix the initial HID report read operation
...
The first 4 bytes received were lost due to a wrong address.
Read the output report into HID_REPORT.data.
2019-04-09 17:03:21 +02:00
Russ Butler
2986b3af7c
Fix doxygen comment in USBDevice
...
Update the doxygen to correctly describe the return value of
endpoint_read_result.
2019-04-08 17:30:22 -05:00
Martin Kojtal
e7987a9f04
Merge pull request #10166 from cmonr/astyle-fix
...
Travis CI: Tweak astyle to not over-exclude files
2019-03-22 06:36:07 +01:00