Jan Dümpelmann
3e6feb7f6d
Redesign of Synopsys device transmission
...
Changes:
- checking if tx buffer empty interrupt is masked
- process more than one packet in isr
- mask tx buffer empty just after all bytes were written
- use of transmit_fifo_packet instead of transmit_packet
2020-04-29 11:32:22 +02:00
hathach
958b5510cb
added comment for hw clearing TXFE
2020-04-27 13:17:47 +07:00
hathach
e785b09118
TXFE is read only bit
2020-04-27 12:06:14 +07:00
hathach
00fcf829a1
sync synopsis fix for esp32s2
2020-04-26 22:41:04 +07:00
hathach
8d18d6077b
turn off TX FIFO Empty for EPIN if all bytes are written
...
fix dcd synopsys issue with usbnet #289
2020-04-26 22:14:59 +07:00
Jerzy Kasenberg
b949ae596f
synopsys: Reduce interrupt time for IN ZLP
...
For IN endpoints output FIFO is filled in interrupt, therefor before
endpoint is enabled, DIEPTSIZ is set with correct size of packet.
Then endpoint is enabled and FIFO empty interrupt is enabled.
This works fine except for the ZLP. Enabling FIFO empty interrupt
results in interrupt handler being called all the time because
there is nothing to put in the FIFO.
Eventually it ends when IN token is received and empty
packed is transmitted out.
This change does not enable FIFO empty interrupt for ZLP reducing
CPU load.
2020-04-24 17:38:30 +02:00
Jan Dümpelmann
551724498a
Added support for STM32F1 Connectivity Line MCU
...
STM32F105 and STM32F107 are using the Synopsys IP
2020-04-22 17:39:53 +02:00
hathach
1f442c0a9a
also add wakeup event
2020-04-18 23:48:36 +07:00
hathach
c3fc5f1595
session end interrupt doesn't trigger on esp32 saola board
...
it is possibly due to the board design without vbus sense. Revisit
later.
2020-04-18 23:42:51 +07:00
hathach
fa71402e17
implement disconnection detection for stm32 synopsys
...
- disconnection is OTG INT session end bit
- add USE_SOF to disable 1ms interrupt on mcu which isn't used now by
the stack
- add suspend detection
2020-04-18 23:40:27 +07:00
hathach
6f9c256ad0
complete remove dcd_set_config(), fix unit test
2020-04-17 13:52:34 +07:00
hathach
05476d9ad7
Merge branch 'master' into remove-dcd-set-config
2020-04-17 13:38:22 +07:00
Ha Thach
85f0894fff
Merge pull request #347 from majbthrd/nuc505_config
...
nuc505: change dcd_set_config() behavior
2020-04-17 13:36:16 +07:00
Ha Thach
1f69807621
Merge pull request #354 from hathach/cxd56-disconnect-connect
...
Cxd56 disconnect connect
2020-04-17 13:12:47 +07:00
hathach
dddf30f532
added disconnect for spresense
2020-04-17 12:53:42 +07:00
hathach
50be9d7c3a
mass rename tud/dcd_irq_handler to tud/dcd_init_handler
2020-04-17 12:27:53 +07:00
hathach
89f99426fc
add code for disconnect/connect (not tested)
2020-04-17 11:48:49 +07:00
Ha Thach
4bbbba48cb
Merge pull request #351 from hathach/valentyusb-dcd-disconnect-connect
...
Valentyusb dcd disconnect connect
2020-04-17 09:52:29 +07:00
Ha Thach
19e2eb66c0
Merge pull request #350 from hathach/synopsys-msp430-dcd-disconnect-connect
...
Synopsys msp430 dcd disconnect connect
2020-04-17 09:51:15 +07:00
Ha Thach
9aa553ccc2
Merge pull request #352 from hathach/samg-dcd-disconnect-connect
...
samg implement dcd connect/disconnect
2020-04-16 23:14:42 +07:00
Ha Thach
33610751d7
Merge pull request #336 from pigrew/edpt_close
...
> If you notice my chain of events above, the bulk transfer was started BEFORE the SET_INTERFACE call. The USB device hardware swaps the order of them being delivered. On STM32, it gives priority to the lower-numbered EP index.
It shouldn't be a matter, control is 2+ stage, before sending the setup. Host should stop all communication to the endpoint that It wants to close.
2020-04-16 23:10:36 +07:00
hathach
36d4efa077
samg implement dcd connect/disconnect
2020-04-16 22:59:19 +07:00
hathach
6377699d77
implement dcd disconnect connect
2020-04-16 22:30:33 +07:00
hathach
3aaad8cd73
add int enable/disable for pullup
2020-04-16 21:30:12 +07:00
hathach
18d936b414
msp430 disconnect/connect
2020-04-16 21:04:28 +07:00
hathach
63655ac9d7
cleanup for esp32
2020-04-16 20:43:26 +07:00
hathach
4c74140b31
stm32 sysnopsys disconnect/connect
2020-04-16 20:20:20 +07:00
hathach
a009775745
dcd disconnect/connect for transdimension ip
2020-04-16 16:56:16 +07:00
hathach
418b69f2db
implement dcd disconnect/connect for lpc ip3511
2020-04-16 16:05:57 +07:00
hathach
969121df4f
added dcd disconnect/connect to lpc17/40
2020-04-16 15:52:45 +07:00
Peter Lawrence
b9fca0bbb4
nuc505: change dcd_set_config() behavior
2020-04-15 14:16:48 -05:00
Nathan Conrad
b0270f499b
stm32fsdev: dynamic allocation of PMA.
2020-04-15 11:53:30 -04:00
Nathan Conrad
16f65890eb
Merge branch 'master' into edpt_close
2020-04-14 10:22:03 -04:00
Nathan Conrad
bbc59f1ceb
stm32fsdev: add static assert for PMA size bigger than EP0 size.
2020-04-13 20:50:17 -04:00
Nathan Conrad
f8e7487355
edpt_close: Updated based on feedback.
2020-04-13 09:51:46 -04:00
hathach
f4df829399
lpc17xx move set configdevice into set address
...
for removing dcd_set_config()
2020-04-13 17:04:18 +07:00
Nathan Conrad
0eeaccaf46
Skeleton, and initial stm32fsdev implementation (that leaks memory)
2020-04-12 21:27:27 -04:00
Ha Thach
04a06ec401
Merge branch 'master' into refactor-irqhandler
2020-04-11 15:49:34 +07:00
Ha Thach
13a3081d30
Merge pull request #333 from hathach/fix-esp32s2-setup-packet
...
fix incorrect setup packet
2020-04-11 15:18:41 +07:00
Ha Thach
07809d03a7
Merge pull request #332 from pigrew/stm32fsdev-dcdconnect
...
stm32fsdev: Implement dcd_connect.
2020-04-11 13:20:31 +07:00
hathach
ae1314f1c7
fix incorrect setup packet
...
also increase usbd stack in example when debug is enabled
2020-04-11 12:55:45 +07:00
Ha Thach
2ff3f765db
Merge pull request #319 from hathach/add-esp32s2
...
port ESP32 S2
2020-04-10 23:53:03 +07:00
hathach
a37a56acd3
remove CONFIG_IDF_TARGET_ESP32S2BETA per review
2020-04-10 23:38:36 +07:00
Nathan Conrad
5bd9d14fc1
stm32fsdev: set dcd_connect API definitions to strong, Modify documentation.
2020-04-10 10:26:41 -04:00
hathach
8953bc9255
added comment note for beta chip walkaround
2020-04-10 20:25:53 +07:00
hathach
c545cfc0bc
Correct dedicated FIFO SRAM size to 1024
...
add note for up to 5 active IN endpoints (including EP0 IN)
2020-04-10 15:42:50 +07:00
hathach
978eec73b3
remove 100us delay at the end of dcd_init()
2020-04-10 15:39:59 +07:00
hathach
30945ab9f3
revert name to dcd_int_handler due to function prototype warning
2020-04-10 15:27:23 +07:00
hathach
c0695b4b55
clear USB_RXFLVI_M before read_rx_fifo()
...
more format clean up
2020-04-10 15:13:12 +07:00
hathach
933e3cdfc7
change indent from 4 -> 2 spaces
2020-04-10 15:01:12 +07:00
hathach
cec747776d
rename dcd_init_handler to dcd_irq_handler to consistent with other ports
2020-04-10 14:47:02 +07:00
hathach
d122d7de88
remove commented code
2020-04-10 14:45:55 +07:00
hathach
a40d1e800d
try to fix racing condition with setup
2020-04-10 14:04:18 +07:00
Nathan Conrad
715c4dbbf8
stm32fsdev: Implement dcd_connect.
2020-04-09 17:03:12 -04:00
hathach
d6578823bb
rename static function for dcd_cxd56 to prevent conflict
2020-04-09 12:00:45 +07:00
hathach
c1f3fbbc03
implement dcd connect/disconnect for samd and nrf
2020-04-09 11:47:02 +07:00
Ha Thach
defea45d44
Merge branch 'master' into refactor-irqhandler
2020-04-09 11:22:20 +07:00
hathach
40e23672ff
rename hal_dcd_isr to dcd_irq_handler for fomu
2020-04-08 16:47:20 +07:00
hathach
e879ad1e6f
move irq from msp430
2020-04-08 16:42:36 +07:00
hathach
8f17945b67
move irq for stm32 synopsys
2020-04-08 16:37:09 +07:00
hathach
9014ca5528
move irq for stm32 fsdev
2020-04-08 16:26:14 +07:00
hathach
880595433c
use macro for easy enable/disable SOF
2020-04-08 15:41:16 +07:00
hathach
7b7a78ab2e
disable SOF interrupt since it is not used for now
2020-04-08 15:33:07 +07:00
Peter Lawrence
ccb65fcf6a
nuvoton: add dcd_disconnect() dcd_connect()
2020-04-07 10:51:55 -05:00
hathach
06e87b47a2
revert name to dcd_init_handler()
...
since the function signature is different
2020-04-06 21:28:02 +07:00
hathach
22a9b05834
rename dcd_int_handler to dcd_irq_handler for consistency with other port
2020-04-06 19:49:25 +07:00
hathach
06377a341b
add tud_irq_handler() for all lpc ip3511 (13, 15, 11)
2020-04-06 18:00:37 +07:00
hathach
138965d1d1
add tud_irq_handler() to all NUC board
2020-04-06 17:43:56 +07:00
hathach
4179334aca
call tud_irq_handler() for all nrf5x board
2020-04-06 17:35:11 +07:00
hathach
fb05451a26
mass rename dcd_isr() to dcd_irq_handler()
2020-04-06 17:24:22 +07:00
hathach
050de0ec33
fix issue and typo with In token when Fifo empty
...
fix transmit packet endpoint's fifo
2020-04-06 16:32:55 +07:00
hathach
2d6d298302
move irqhandler to application
...
tud_isr() must be called by application to forward the irqhandle to the
stack
2020-04-06 14:11:45 +07:00
hathach
1e7c3cf95e
update dcd esp32s2 fifo allocation to match current dcd synopsys
2020-04-03 17:09:38 +07:00
hathach
a3e50242b9
add dcd_esp32s2
...
skip esp32s2_saola for make build since idf use cmake
2020-04-01 17:07:28 +07:00
Ha Thach
435485b524
Merge pull request #304 from pigrew/stm32_xfer_rewrite
...
STM32FSDEV: Rewrite transfer ISR
2020-03-25 10:19:07 +07:00
Ha Thach
95009a9e79
Merge pull request #194 from cr1901/msp430f5529
...
[WIP] MSP430 Support
2020-03-24 11:57:20 +07:00
William D. Jones
6b5157fd28
dcd_msp430x5xx: Add dummy dcd_edpt0_status_complete handler. Add
...
comment which describes why it might be needed.
2020-03-24 00:03:12 -04:00
Nathan Conrad
eaf767b0db
STM32FSDEV: Rewrite transfer ISR
2020-03-22 14:26:48 -04:00
hathach
4f871063fd
Merge branch 'master' into cr1901-msp430f5529
2020-03-22 17:19:57 +07:00
hathach
a93548cfe9
update comment per review
2020-03-17 23:39:53 +07:00
hathach
a39d170672
follow up to pr #301
...
rename OPT_MCU_NUC505_USB_DMA to simply USE_DMA
2020-03-17 10:40:45 +07:00
Peter Lawrence
df05440d92
NUC505 : added comment on DMA choice
2020-03-16 13:20:17 -05:00
Peter Lawrence
fb56c02a6f
NUC505 : fix operation with net_lwip_webserver
2020-03-15 17:44:09 -05:00
hathach
71fb3985ba
Merge branch 'nuc120' of https://github.com/majbthrd/tinyusb into majbthrd-nuc120
2020-03-10 11:53:11 +07:00
hathach
e0cdab5bf7
fix stm32 fsdev epdesc
2020-03-08 16:28:21 +07:00
hathach
c8247f0907
fix zlp for nrf52840
2020-03-08 14:20:28 +07:00
Ha Thach
5f5ee465a6
Merge pull request #291 from hathach/port-samg55
...
Port samg55
2020-03-07 16:38:59 +07:00
Peter Lawrence
7d8ecc63a6
add Nuvoton NUC505
2020-02-07 20:11:00 -06:00
hathach
46f22860fb
correct waklaround with only status IN
...
correct usb descriptor msc dual example to work with samg
2020-02-07 22:13:38 +07:00
hathach
02b2c60231
samg55 work with cdc msc example
2020-02-07 17:39:20 +07:00
hathach
087e3c7f56
Merge branch 'master' into port-samg55
2020-02-07 16:50:07 +07:00
hathach
9ca6311ac4
implement walkaround for incorrect DATA Toggle for status control.
2020-02-07 16:46:18 +07:00
Peter Lawrence
cd8eb2a06b
added support for Nuvoton NUC120
2020-01-25 13:10:32 -06:00
hathach
e2f60a5134
rt10xx: correct max endpoint count is 8
2020-01-17 17:09:23 +07:00
hathach
04d8671641
clean up, disable SOF for dcd trans since we don't use it for now
2020-01-17 12:59:00 +07:00
hathach
3208fe00b6
clean up
2020-01-17 12:06:59 +07:00
Ha Thach
1f95f439e1
Merge pull request #274 from tannewt/dcache
...
Clean and invalidate the DCache when we have one.
2020-01-17 09:47:38 +07:00
Scott Shawcroft
cd6454a330
Add if guards for dcache flushes.
2020-01-16 17:17:49 -08:00
Scott Shawcroft
ae68668df9
flush and invalidate the dcache
2020-01-15 21:59:15 -08:00
Ha Thach
12b191510a
Merge branch 'master' into nucbusreset
2020-01-16 11:22:33 +07:00
Ha Thach
537ceb0f65
Merge branch 'master' into line_endings
2020-01-16 10:55:14 +07:00
Peter Lawrence
2ed395bde3
nuc121: survive USB bus reset
2020-01-15 21:40:24 -06:00
Peter Lawrence
c04bc07c29
nuc121: enhanced driver and hopefully added readability
2020-01-15 20:09:50 -06:00
Nathan Conrad
25c1bea782
Normalize line endings
2020-01-15 14:47:43 -05:00
Peter Lawrence
7f2db321bf
nuc121: better fix for handling large OUT transfers
2020-01-15 10:23:23 -06:00
Peter Lawrence
f2a5335417
nuc121: fix handling of OUT transfers larger than max packet size
2020-01-14 22:07:38 -06:00
Sean Cross
a6b916ba85
Merge pull request #269 from antmicro/volatile_buffers_fix
...
dcd_eptri: Fix rx_buffer/tx_buffer volatile annotation
2020-01-15 07:02:11 +10:00
Mateusz Holenko
c1781e5e7c
dcd_eptri: Fix rx_buffer/tx_buffer volatile annotation
...
This makes `rx_buffer` and `tx_buffer` *pointers*
volatile in order to avoid caching them in a register.
The original notation meant "a pointer to a volatile value"
(equivalent of `volatile uint8_t *`). This resulted in
`while(rx_buffer[ep_num] != NULL) ;` loop to get stuck
forever, even though the IRQ handler set the `rx_buffer[ep_num] = NULL`.
2020-01-14 13:57:17 +01:00
Ha Thach
130250a2be
Merge branch 'master' into nuc121
2020-01-07 16:26:58 +07:00
Peter Lawrence
5c5f876461
dcd_nuc121: allow user ZLP transfers to get a callback
2020-01-04 13:36:26 -06:00
Peter Lawrence
f4371e79b1
add Nuvoton NUC121/NUC125/NUC126
2020-01-04 10:31:55 -06:00
hathach
89f3ad59da
fix #247
2019-12-27 09:42:57 +07:00
hathach
0da45c2e78
clean up
2019-12-26 22:31:29 +07:00
hathach
b5684c5c10
merge dcd_samd51 & dcd_samd21 into dcd_samd
2019-12-26 21:46:59 +07:00
hathach
49b316143a
improve samd, fix missing setup packet occasionally
2019-12-26 17:11:24 +07:00
hathach
5690e7b304
fix samd51 setup packet handling
...
issue occur due to race condition
https://github.com/adafruit/Adafruit_TinyUSB_Arduino/issues/37
2019-12-25 23:47:47 +07:00
hathach
bbada1d3e6
adding lookup table for debugging
...
add msc scsi command list
2019-12-23 18:54:06 +07:00
hathach
94e70f9b01
Merge branch 'master' into port-samg55
2019-12-21 23:53:48 +07:00
hathach
421221baa5
making more progress, but failed with WRITE10
...
incorrect queue 448 bytes instead of 512
2019-12-21 23:51:57 +07:00
hathach
050fa2fd39
able to response to scsi inquiry, but failed to response to test unit ready
2019-12-21 19:33:41 +07:00
Ha Thach
7a05b177a4
Merge pull request #236 from jeremyherbert/master
...
Update dcd_stm32_fsdev.c with note about F042Fx remapping
2019-12-12 10:17:40 +07:00
Jeremy Herbert
9d96b6d66e
Update dcd_stm32_fsdev.c
...
Add a note about pin remapping for the STM32F042Fx
2019-12-12 09:40:06 +10:00
hathach
96a9eca6a0
move VBUS sense out of dcd_synosys to bsp
2019-12-11 14:03:36 +07:00
hathach
752aea7d72
enhance samg
2019-12-09 23:58:13 +07:00
hathach
fa96078882
clear data toggle in clear stall, also set config bit
2019-12-09 23:21:06 +07:00
hathach
75a2157715
fix samd using TUSB_REQ_SET_ADDRESS in dcd_edpt0_status_complete
2019-12-09 23:20:21 +07:00
hathach
0316e0ecd4
update descriptor, enhance ep in transfer
2019-12-09 22:48:35 +07:00
hathach
759fa76280
implementing dcd_edpt_open
2019-12-09 21:36:15 +07:00
hathach
988edce745
fix build
2019-12-09 18:49:38 +07:00
hathach
208a77678c
clean up, switch and update submodule samd to circuitpython branch
2019-12-09 18:37:54 +07:00
Sean Cross
26dcc19b18
valentyusb: eptri: don't double-advance read buffer
...
Due to an error, we were double-advancing the FIFO buffer. The end
result was that the second half of most reads were getting ignored.
This wasn't found during earlier testing because only 64-byte buffers
were tested.
This corrects this error by avoiding double-advancing the buffer.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-29 18:14:23 +08:00
hathach
e9725dcdbe
use dcd_edpt0_status_complete() to prepare for setup packet for samd21/samd51
2019-11-28 13:48:55 +07:00
hathach
d7558e8a0f
use dcd_edpt0_status_complete() to set address without blocking for samd21/samd51/stm32_fsdev
2019-11-28 13:39:29 +07:00
hathach
ac701c398b
clean up
2019-11-28 12:18:56 +07:00
hathach
552cc3ef33
implement dcd_edpt_stall
2019-11-28 11:56:35 +07:00
hathach
5dc04887e2
get passed set address
2019-11-28 11:48:08 +07:00
hathach
6bc245cb36
add dcd_edpt0_status_complete() which is useful for several mcu port
2019-11-28 11:46:36 +07:00
hathach
40b454cf28
get passed first get device descriptor
2019-11-27 23:20:48 +07:00
hathach
6225d5bcfd
able to handle setup packet
2019-11-27 16:01:25 +07:00
hathach
bc21714c7e
detect bus reset
2019-11-27 14:49:19 +07:00
hathach
745f0b4521
clean up
2019-11-27 11:02:24 +07:00
hathach
c691dc4cb2
update
2019-11-25 10:42:32 +07:00
hathach
58e8265964
usb hw init OK
2019-11-24 23:46:28 +07:00
hathach
24b2cea139
Merge branch 'master' into port-samg55
2019-11-24 21:22:42 +07:00
hathach
d991466a8e
fix rt1010 rt1020 only has 1 usb controller, rt1050 rt1060 has 2
2019-11-23 00:48:56 +07:00
hathach
38b14725f7
rename OPT_MCU_IMXRT10XX to OPT_MCU_MIMXRT10XX
2019-11-22 17:40:12 +07:00
hathach
281e8cd9ec
rename OPT_MCU_RT10XX to OPT_MCU_IMXRT10XX
2019-11-22 15:42:46 +07:00
Ha Thach
ca741dfc2a
Merge pull request #220 from hathach/develop
...
Port NXP iMX RT10XX
2019-11-22 15:16:41 +07:00
hathach
6123b600fc
rename dcd_lpc18_43 to dcd_transdimension
2019-11-22 14:47:07 +07:00
hathach
a0b2561a2d
move nxp dcd ehci controller reset and modde into dcd
...
rt1064 work with cdc msc example
2019-11-22 14:20:10 +07:00
hathach
fca4653b95
able to compile dcd 18/43 with rt1064
2019-11-22 12:34:41 +07:00
hathach
2ead26a12d
more clean up
2019-11-22 12:26:40 +07:00
hathach
ccb09db3b7
more clean up
2019-11-22 12:16:47 +07:00
hathach
7e16a9a1db
more constant rename clean up
2019-11-22 12:14:55 +07:00
hathach
8aacd1eacd
refactor dcd_lpc18_43, making it capatible with rt10xx
2019-11-22 12:11:13 +07:00
hathach
623b16af2e
clean up dcd lpc18_43
...
drop supporting both device mode on both ports.
2019-11-22 00:58:18 +07:00
hathach
1f52273d99
move dcd_lpc18_43.h into .c file
2019-11-22 00:38:22 +07:00
hathach
f5d737aa7e
moving irq to bsp for lpc17/40
2019-11-21 23:19:38 +07:00
hathach
043697ab95
rename lpc 17/18 irq to dcd_isr/hcd_isr
2019-11-21 16:08:08 +07:00
Sean Cross
a9282eab51
eptri: clear proper endpoint when opening IN port
...
When opening a USB port, we ensure the buffer is NULL and has
a length of 0.
Due to a mistake in specifying the endpoint type, we never actually
cleared the value when opening an IN endpoint. This patch fixes
the comparison when opening an IN endpoint.
This fixes issue #218 .
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-20 17:45:21 +08:00
Sean Cross
8c5f02960b
valentyusb: rename from `foosn`
...
While Fomu is produced by Foosn, the actual name of the hardware
block is `valentyusb`. Rename the module to match that.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:47 -08:00
Sean Cross
e05e9801e4
fomu: gate debug/logging features
...
This gates the majority of the debug and logging features behind
testable macros.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:47 -08:00
Sean Cross
3292920933
fomu: first stable working commit
...
This appears to be stable, and works well.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:47 -08:00
Sean Cross
1882a87212
fomu: remove reference to SETUP_CTRL.ACK
...
THis bit isn't used anymore, so remove it.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:47 -08:00
Sean Cross
729c8d073c
fomu: dcd_fomu: add next_ev support
...
Now that we have the `USB_NEXT_EV` register, take advantage of
it to work around issue #207 .
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:09:38 -08:00
Sean Cross
913032ae1d
dcd_fomu: nearly there
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:01 -08:00
Sean Cross
835a72c595
fomu: semi-working dcd file
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:01 -08:00
Sean Cross
843136d0e4
fomu: commit latest version
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:01 -08:00
Sean Cross
22fd7bf85e
fomu: first fully-working release
...
This is able to transfer lots of data back and forth across MSC.
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:01 -08:00
Sean Cross
0559fd13fb
fomu: fix some issues with dcd_fomu
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:08:01 -08:00
Sean Cross
32bb68409e
portable: fomu: get msc to enumerate
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:03:12 -08:00
Sean Cross
36ede44885
fomu: wip support
...
Signed-off-by: Sean Cross <sean@xobs.io>
2019-11-13 09:03:12 -08:00
hathach
4008f0d1e6
update dcd nrf5x to be indepent from nrf_usbd.h
...
fix build error with nrfx 2.0
2019-11-11 00:01:12 +07:00
hathach
6baa79b330
board test works
2019-11-04 14:54:04 +07:00
William D. Jones
5d585c03bd
dcd_msp430x5xx: Improve comments regarding SETUP packet handling.
2019-10-29 14:08:39 -04:00
William D. Jones
3f0f7cfd07
dcd_msp430x5xx: Clarify hardware STALL behavior and current vs ideal
...
behavior of driver in comments.
2019-10-29 12:52:56 -04:00
hathach
4e8c57171c
Merge branch 'master' into cr1901-msp430f5529
2019-10-25 21:20:05 +07:00
William D. Jones
d0146be00b
dcd_msp430x5xx: Fix typo in copy-paste in transmit_packet.
2019-10-10 04:19:48 -04:00
William D. Jones
c8e899fef0
dcd_msp430x5xx: Improve SETUP packet and EP0 NAK interactions, per
...
42.3.1.3 in Reference Manual; fix is incomplete but works.
2019-10-10 04:02:35 -04:00
hathach
c42edc080c
Merge branch 'master' into develop
2019-10-09 11:03:55 +07:00
Kamil Tomaszewski
0cea82568c
Disable/enable only USB interrupt
2019-10-08 09:58:56 +02:00
Kamil Tomaszewski
9923604221
Send SUSPEND and RESUME signals
2019-10-07 14:04:48 +02:00
Kamil Tomaszewski
b3872febe2
Disable/enable interrupt
2019-10-07 14:03:02 +02:00
Kamil Tomaszewski
0747c4b61b
Add Spresense board
2019-10-04 13:19:34 +02:00
hathach
281cd858b0
adding lpc1549, but couldnt recieve setup packet, though setup received interrupt is triggered
2019-10-04 15:56:45 +07:00
William D. Jones
5ee1070c16
Merge remote-tracking branch 'origin' into msp430f5529
2019-10-02 23:18:49 -04:00
William D. Jones
05914de109
dcd_msp430x5xx: Fix typos in dcd_edpt_clear_stall.
2019-10-02 22:36:45 -04:00
William D. Jones
3edb5548e9
dcd_msp430x5xx: Ensure DBUF bit is cleared on endpoint open, as it
...
could get spuriously set in debugging sessions. cdc_msc functional.
2019-10-02 01:19:12 -04:00
hathach
820a3705f5
Merge branch 'master' into develop
2019-10-02 12:13:47 +07:00
hathach
0673be7724
ported stm32f1, tested with f103 blue pill
2019-10-02 12:01:34 +07:00
Nathan Conrad
1e193212d7
Add testcase for EP0 stall recovery to USBTMC test script.
2019-10-02 00:31:47 -04:00
Nathan Conrad
e5f38e3e86
Remove references to EP kind.
2019-10-02 00:11:16 -04:00
Nathan Conrad
838cfe02c1
Merge remote-tracking branch 'origin/master' into ST_FSDEV_EP0
2019-10-02 00:09:07 -04:00
William D. Jones
19ee519926
dcd_msp430x5xx: Correct byte count masks in transmit/receive routines.
2019-10-02 00:01:58 -04:00
William D. Jones
54478aaa2a
dcd_msp430x5xx: Add STALL support for nonzero endpoints.
2019-10-01 23:28:41 -04:00
William D. Jones
fad44c03c8
dcd_msp430x5xx: Fix TOGGLE bit behavior, clear stall when endpoint
...
opened due to reset potentially not resetting everything.
2019-10-01 23:03:39 -04:00
hathach
d27291f288
Merge branch 'master' into develop
2019-09-30 14:45:34 +07:00
William D. Jones
b623e3023e
dcd_msp430x5xx: Implement receive_packet for all endpoints, correct
...
some mistakes in transmit_packet.
2019-09-29 03:58:30 -04:00
William D. Jones
549ad1d9b6
dcd_msp430x5xx: Fix missing mask when posting IN xfer events.
2019-09-29 03:02:59 -04:00
William D. Jones
838b431fac
dcd_msp430x5xx: Implement transmit_packet for nonzero endpoints. Untested.
2019-09-29 02:43:05 -04:00
William D. Jones
2247f132ca
Implement dcd_edpt_xfer for nonzero endpoints.
2019-09-29 02:22:09 -04:00
William D. Jones
ea0e799df6
dcd_msp430x5xx: Fix clear stall logic.
2019-09-29 02:17:59 -04:00
William D. Jones
529efcc0d2
dcd_msp430x5xx: Implement dcd_edpt_open.
2019-09-29 00:21:40 -04:00
William D. Jones
5d9f833915
dcd_msp430x5xx: Implement STALL logic for EP 0.
2019-09-28 02:09:03 -04:00
William D. Jones
63c94ff684
dcd_msp430x5xx: Improve EP0 IN handling (reuse short_packet field).
2019-09-28 01:51:05 -04:00
William D. Jones
030560792d
dcd_msp430x5xx: Implement dcd_set_address.
2019-09-27 21:59:45 -04:00
William D. Jones
3ac43076da
dcd_msp430x5xx: Implement EP0 IN xfers, clean up.
2019-09-27 21:22:19 -04:00
Nathan Conrad
c4483d244b
Fix typo of CFG_TUD_ENDOINT0_SIZE.
2019-09-27 21:22:19 -04:00
Nathan Conrad
4ccdc5522d
Fix typo of CFG_TUD_ENDOINT0_SIZE.
2019-09-27 12:41:46 -04:00
hathach
6183dbd0ce
add -Wextra for more warnings to example
...
non-stack warning (probably mcu driver) should be suppressed in the
board.mk
2019-09-27 00:15:43 +07:00
Nathan Conrad
f19082f02d
Reset TX and RX endpoints to NAK when receiving setup packet.
2019-09-25 20:55:15 -04:00
Nathan Conrad
048e0448c0
ST FSDEV:Remove setting the EP kind, as I think it was causing issues during enumeration (sometimes). Also move a membar.
2019-09-25 20:54:59 -04:00
William D. Jones
01b4115b0b
dcd_msp430x5xx: Fix Setup packet delay by actually enabling
...
corresponding interrupt.
2019-09-24 04:06:34 -04:00
William D. Jones
550e8215f3
dcd_msp430x5xx: Setup packets are now received successfully (with delay).
2019-09-24 03:43:51 -04:00
William D. Jones
d2e4af5a7b
msp430f5529: Change EP0 size to 8, implement interrupt logic up to bus
...
reset detection.
2019-09-24 02:41:11 -04:00
William D. Jones
950614a841
msp430f5529: Implement dcd_int_enable/disable.
2019-09-23 22:58:49 -04:00
William D. Jones
a6a79df9fb
msp430f5529: Enable clocks/PLL for msp_exp430f5529lp and enable USB
...
module in dcd_msp430x5xx; device does not enumerate.
2019-09-23 18:53:31 -04:00
William D. Jones
907bc3df9b
msp430f5529: Ensure cdc_msc demo compiles.
2019-09-23 17:48:18 -04:00
hathach
7ba8e81852
Merge pull request #177 from cr1901/fifo-fix
...
dcd_synopsys: Fix off-by-one error in FIFO allocation.
2019-09-22 11:38:54 +07:00
William D. Jones
108f756e22
dcd_synopsys: Fix off-by-one error in FIFO allocation.
2019-09-21 23:01:06 -04:00
Nathan Conrad
ce9f133d25
FSDEV: go to NAK when unstalling; on reset, set EP0 to NAK, prioritize reset interrupt, fix small typos.
2019-09-21 12:00:04 -04:00
hathach
94c9cf0eff
doc update
2019-09-20 16:14:35 +07:00
hathach
7b2f8cc73a
added stm32 L0 support
...
close #125
2019-09-20 13:49:33 +07:00
Nathan Conrad
525b4cdb72
Use ESOF for wakeup timing.
2019-09-19 09:51:40 -04:00
Nathan Conrad
642afeea8b
s/static const/define/
2019-09-19 09:30:16 -04:00
Nathan Conrad
85623584f9
Remove debug assertions.
2019-09-19 09:24:52 -04:00
Nathan Conrad
5fcc1468eb
Merge branch 'master' into fsdev_smallPacket
2019-09-19 09:16:48 -04:00
Nathan Conrad
89ffe78f84
ST FSDEV: No need to always reset the interrupt priority, also add some synchronization primitives after disabling interrupts.
2019-09-16 22:56:17 -04:00
Nathan Conrad
a33a854793
Include board header file... :X
2019-09-16 20:56:57 -04:00
Nathan Conrad
d341337c6a
Implement remote wakeup + perhaps better sleep?
2019-09-16 20:25:50 -04:00
Nathan Conrad
6b9783cead
s/unsigned int/uint32_t/
2019-09-16 09:20:15 -04:00
hathach
0c70948d0d
Merge pull request #163 from hathach/develop
...
fix #143
2019-09-16 16:37:27 +07:00
hathach
a37d2d64be
fix #143
2019-09-16 13:32:47 +07:00
Nathan Conrad
05c13342a3
Implement EP with size <64.
2019-09-15 23:51:42 -04:00
Nathan Conrad
18303e742e
Covert macros to inline functions.
2019-09-15 23:46:03 -04:00
Nathan Conrad
ae873a709e
Wrote TX instead of RX.
2019-09-15 23:33:36 -04:00
William D. Jones
6280e4e7cb
msp430f5529: Add empty msp_exp430f5529lp BSP and DCD.
2019-09-14 18:02:17 -04:00
Nathan Conrad
4ea212a432
This demonstrates that I don't pre-build things before committing them... oops.
2019-09-13 23:52:43 -04:00
Nathan Conrad
c831311a12
Off-by-one error in Synopsys assertions. (and move some braces to their own lines.
2019-09-13 23:38:58 -04:00
hathach
986beda9eb
adding stm32l4 support, board test run with stm32l476disco, usb doens't work yet
2019-09-13 11:22:44 +07:00
hathach
ff7261600c
ported stm32f2, added board stm32f207zg nucleo
...
close #127
2019-09-12 10:41:03 +07:00
Nathan Conrad
d3507b0787
Merge remote-tracking branch 'origin/master' into stfsdev_cleanups
2019-09-11 20:36:48 -04:00
Nathan Conrad
3326b9d008
Use types with explicit bit widths.
2019-09-11 20:33:47 -04:00
hathach
7f166d860d
stm32f7 work with dcd synopsis
...
close #124
2019-09-11 22:48:07 +07:00
Nathan Conrad
7b93177890
Use TU_VERIFY_STATIC, use more uint instead of uint8_t/uint16_t. Create reg16_clear_bits function to reduce typec conversion warnings.
2019-09-11 09:45:48 -04:00
Nathan Conrad
784dc52b62
Update header comments.
2019-09-11 09:44:25 -04:00
Nathan Conrad
4cf2b30759
Fix bug where the EPREGs were not being initialized as expected.
2019-09-11 09:43:57 -04:00
hathach
678ba586df
Merge pull request #122 from cr1901/synopsys
...
Synopsys Refactor
2019-09-11 10:37:49 +07:00
Nathan Conrad
4f6bedeac9
Rename the STM32 MCU options.
2019-09-10 12:57:43 -04:00
Nathan Conrad
23d39f2b15
Remove OPT_MCU_STM for L and G series.
2019-09-10 12:13:36 -04:00
Nathan Conrad
65e72de7ce
Move interrupt handler into device driver, and rename the OPT_MCU_STM32 constants.
2019-09-10 09:35:52 -04:00
Nathan Conrad
49c58be4ce
Fix silly typo in the F3xx support.
2019-09-10 01:31:14 -04:00
Nathan Conrad
bc2a65b20b
A few bug fixes, remove the unstested device notices, note supported boards in READMEs, and implement PMA
...
access stride (used on MCU's with 512 byte USB buffers).
2019-09-10 01:03:24 -04:00
Nathan Conrad
f7b0aeec52
Start clock on F0 and F0, and handle USB interrupts.
2019-09-09 19:20:26 -04:00
Nathan Conrad
d1976a30b3
Update F3 BSP and create F070RB BSP. Both are untested (but compile).
2019-09-09 16:14:38 -04:00
Nathan Conrad
5ec59c2a30
Add STM32 FSDEV driver.
2019-09-09 14:55:39 -04:00
Nathan Conrad
b4c8a09f20
Remove STM32 F3 port.
2019-09-09 13:29:26 -04:00
William D. Jones
1385d7c494
stm32: Refactor so F4 and H7 use a single Synopsys IP source file.
2019-09-09 10:48:14 -04:00
William D. Jones
82cd4b5350
dcd_stm32f4: Merge relevant changes from dcd_stm32h7.
2019-09-09 10:27:46 -04:00
William D. Jones
3efc81b285
dcd_stm32h7: Merge relevant changes from dcd_stm32f4. USB2 -> USB works as alias.
2019-09-09 10:14:20 -04:00
hathach
e123cad7bb
enhance dcd stm32f4 to support max 4 or 6 endpoints on 407 or 412
2019-09-08 23:10:51 +07:00
hathach
4663f9084d
ported board stm32f412g discovery
...
- added soft connect for enable pull up register dcd stm32f4
2019-09-08 21:57:02 +07:00
hathach
56f1ccd68a
fix #97
2019-09-05 21:59:19 +07:00
hathach
143a138028
Merge pull request #116 from hathach/develop
...
Board update
2019-09-05 16:18:34 +07:00
hathach
a90e2aa2ce
55s69 device work with usb0
2019-09-05 16:12:13 +07:00
hathach
7350e9c25c
Merge pull request #114 from cr1901/stm32h7
...
STM32H7 Support
2019-09-05 15:29:13 +07:00
William D. Jones
8f8ca77a91
stm32h7: Mark USB FIFOs as volatile, otherwise optimizations will remove
...
reads/writes to the FIFOs.
2019-09-04 01:06:07 -04:00
William D. Jones
910fd867c7
stm32h7: Fix indentation error where OUT XFER interrupt wasn't handled
...
in the correct scope.
2019-09-03 01:37:44 -04:00
William D. Jones
1a3dc9cba1
stm32h7: USB_OTG_FS -> USB2_OTG_FS.
2019-09-03 01:28:41 -04:00
William D. Jones
f703a74daa
stm32h7: Implement STALL logic for endpoints.
2019-09-03 01:28:41 -04:00
William D. Jones
28b131ea94
stm32h7: Implement dcd_edpt_open. cdc_msc_hid demo functional.
2019-09-03 00:37:50 -04:00
William D. Jones
d4302dacc5
stm32h7: Fix accidental overwrite of STUPCNT field in DOEPTSIZ register.
2019-09-03 00:25:21 -04:00
William D. Jones
9210167603
stm32h7: Implement dcd_set_address.
2019-09-02 21:00:30 -04:00
William D. Jones
0d0b802ee0
stm32h7: Implement IN and OUT receive for EP0; device descriptor returned.
2019-09-02 19:32:11 -04:00
William D. Jones
f602534536
stm32h7: Implement setup packet events.
2019-09-02 13:34:33 -04:00
hathach
074681da8b
dma of lpc54114 can also execute up to 64 bytes each transfer
...
There is still issue with cdc_msc_hid example
2019-09-01 17:05:34 +07:00
hathach
aeea6754af
rename lpc_usbd to lpc_ip3511
2019-09-01 16:44:40 +07:00
hathach
3067809957
adding lpc54xxx to dcd, able to go through enumeration
2019-09-01 16:15:23 +07:00
hathach
957201fc58
fix undef __ARM_ARCH_6M__
2019-09-01 11:59:50 +07:00
hathach
2d041aaa1d
clean up
2019-09-01 08:11:22 +07:00
hathach
30f707cad2
rename lpc11_13_15 to simply lpc_usbd since it is almost used by in recent year for nxp mcu
2019-09-01 00:51:58 +07:00
hathach
bac75a81fd
support LPC51u68 #100
2019-08-31 22:44:08 +07:00
William D. Jones
8b165e1024
stm32h7: Ensure FS (and the only) PHY is selected for OTG_HS2.
2019-08-30 22:07:35 -04:00
William D. Jones
7153561984
stm32h7: Enable USB peripheral (device does not enumerate yet).
2019-08-30 21:57:06 -04:00
William D. Jones
0fb9ab9a09
stm32h7: Add empty template cdc_msc_hid example for STM32H743 Nucleo board that compiles.
2019-08-24 12:40:18 -04:00
hathach
47cd08d526
clean up
2019-08-05 22:31:41 +07:00
hathach
d1df041519
nrf5x remove the depenedent on nrfx_power.h
2019-08-05 22:09:37 +07:00
hathach
d211035a0a
merge dcd/hal_nrf5x.c into dcd/dcd_nrf5x.c
2019-08-05 21:54:20 +07:00
hathach
ed6fa460e9
stm32 minor change
2019-07-19 10:59:35 +07:00
hathach
f16ebd512b
indent clean up
2019-07-04 18:45:10 +07:00
hathach
73d7ab201e
remove dcd_edpt_busy()
2019-06-10 22:29:18 +07:00
hathach
13e01c7dca
add TU_ prefix to compiler ATTR to prevent name conflict with application
2019-06-06 10:39:37 +07:00
hathach
3e6d911ce9
more clean up use inline bit funciton instead of macros
2019-05-14 12:54:29 +07:00
hathach
61ec407752
update license year to 2019
2019-05-14 11:48:05 +07:00
hathach
667133304b
fix samd dcd_clear_stall also reset data toggle
2019-05-10 00:10:18 +07:00
hathach
77bc421359
fix clear stall usage, fix reset data toggle with dcd_clear_stall for nrf52
2019-05-09 23:31:18 +07:00
hathach
2050778763
clean up
2019-05-01 20:41:26 +07:00
hathach
64bed848d0
fix #53 use nrfx_usbd_errata.h
2019-04-08 17:36:12 +07:00
hathach
dd9c441a61
samd support suspend and resume. Though cannot distinguish between Suspend and Disconnect
...
should work with #47
2019-04-02 02:14:22 +07:00
hathach
06e1fac7c5
nrf5x enable suspend after set address, instead of set config
2019-04-02 01:20:34 +07:00