hathach
7a57428f3e
reduce memory use by cmsis rtx
...
able to run with IAR host cmsis rtx
2014-03-19 17:26:35 +07:00
hathach
61657f6751
change OSAL_TASK_FUNCTION to adapt with cmsis rtx
2014-03-19 16:50:49 +07:00
hathach
96bb6c8968
remvoe main as thread of cmsis rtx for portability.
...
Keil & lpcxpresso4 host_cmsis_rtx work well
2014-03-19 16:06:27 +07:00
hathach
a8ea9e99d5
rename errors.c/h to tusb_errors.c/h
2014-03-18 18:54:44 +07:00
hathach
f6a3eeb942
clean up
2014-03-18 18:46:28 +07:00
hathach
cf82b13a0e
finish descriptor refractor for hid keyboard & mouse
2014-03-18 18:38:15 +07:00
hathach
eab4f9642c
refractor descriptor passing for device with user-friendly structures
2014-03-18 18:07:48 +07:00
hathach
34756f3862
app descriptor rename
2014-03-18 16:58:24 +07:00
hathach
e73667c078
clean up tusb_descriptors
2014-03-18 16:23:23 +07:00
hathach
2c4a2e5b9e
rename TUSB_CFG_OS_TICKS_PER_SECOND to TUSB_CFG_TICKS_HZ
...
remove CFG_TICKS_PER_SECOND
2014-03-18 16:10:25 +07:00
hathach
fe1b39e539
remove hardfault handler
2014-03-17 17:32:28 +07:00
hathach
23aa7070df
refrator, replace osal_tick_get / osal_tick_tock by tusb_tick_get
2014-03-17 17:23:32 +07:00
hathach
eaf2e888ab
doxygening
2014-03-17 16:46:11 +07:00
hathach
d1d4ddd856
doxygen document
2014-03-16 22:20:33 +07:00
hathach
18d577abfb
fix out of range array in usbd
2014-03-14 17:32:01 +07:00
hathach
eff1fe99f8
clean all device os none warnings
2014-03-14 17:24:30 +07:00
hathach
4cdebe2e76
fix warning for device os none
2014-03-14 17:18:05 +07:00
hathach
4f1ae1cd1d
clean up more warnings
2014-03-14 16:11:38 +07:00
hathach
16df2a2f62
Suppress Keil warnings #66-D: enumeration value is out of "int" range
2014-03-14 15:51:07 +07:00
hathach
f28746f28a
more warning clean up
2014-03-14 15:16:45 +07:00
hathach
0757d2eb6c
more warnings clean up
2014-03-14 15:11:57 +07:00
hathach
5f309413dc
clean more warnings
2014-03-14 14:33:50 +07:00
hathach
5e2ed2534e
clean up warning in lpcxpresso
...
remove -Wpacked -Wpadded in gcc
2014-03-14 11:59:39 +07:00
hathach
214af7e988
zero warnings compiling host os none on keil
2014-03-14 10:19:44 +07:00
hathach
97cce2fa58
clean up compiler warning transfer of control bypasses initialization
2014-03-14 00:06:43 +07:00
hathach
2502be94f7
suppres compiler warning transfer of control bypasses initialization
2014-03-13 23:52:26 +07:00
hathach
958512a5bd
clean up more warnings
2014-03-13 18:43:52 +07:00
hathach
6fbca0ea87
remove legacy code of msc_device.c read10 & write10
...
clean up some warnings
2014-03-13 18:25:20 +07:00
hathach
f1692c93ac
fix some warnings
2014-03-13 18:11:59 +07:00
hathach
8fbafc460c
fix a problem with dcd 13uxx dcd_pipe_clear_stall that should clear toggle for buffer0 (instead of active buffer)
...
as the next transfer is always forced to be happened on buffer0
2014-03-13 17:06:18 +07:00
hathach
368d09695f
fix build error with lpcxpresso device os none
2014-03-12 22:22:00 +07:00
hathach
13dd843a9f
fix IAR alignment OHCI hcca will occupies the whole 256 (instead of just 252 like the specs)
2014-03-12 16:34:05 +07:00
hathach
1e957bb672
change dcd 176x alignment placement to work with IAR
2014-03-12 15:11:48 +07:00
hathach
bb8602ce41
clean up IAR ending warning
2014-03-12 14:49:51 +07:00
hathach
0f0d9d127b
able to build lpc11u with IAR
...
clean ending warming with IAR
2014-03-12 14:43:58 +07:00
hathach
b6e4c0d348
a fix to IAR's incapability to force struct's member on specified alignment
2014-03-12 14:28:43 +07:00
hathach
9ba209cda0
IAR line ending warning
2014-03-12 14:10:38 +07:00
hathach
8f03dea95a
fix iar warning
2014-03-12 14:03:17 +07:00
hathach
c92b03edfb
added scatter file for lpc11u & lpc13u for it to run with keil
2014-03-12 12:49:59 +07:00
hathach
6a736db159
try to port lpc11uxx device demo with IAR
2014-03-10 15:31:12 +07:00
hathach
3555abc378
cannot get IAR work with lpc1769 device demo
2014-03-10 15:02:11 +07:00
hathach
b586fe632a
change desc_str_table to array of pointer of uint8_t* to be compatible with IAR (lack of support for VLA initialization)
...
IAR device os none works with ea4357
2014-03-10 14:20:38 +07:00
hathach
ad72db5aea
change IAR TUSB_CFG_ATTR_USBRAM to _Pragma("location=\".ahb_sram1\"") instead of @ .ahb_sram1 so that we can place it before the variable for a cleaner code
...
change pipe xfer API buffer from void* to uint8_t*
change FIFO_DEF to have a separated buffer to be compatible with IAR\
refractor IAR data alignment pragma
2014-03-10 13:13:13 +07:00
hathach
d5f278bbf0
clean up dcd_lpc175x_6x.c
2014-03-10 11:36:19 +07:00
hathach
a609cffda2
refractor dcd_lpc175x_6x
...
- remove dd allocation table and use fixed 2 dd for each endpoints
- change dd::used to dd::int_on_complete
--> fixed all the bugs with lpc175x_6x with MSC device & CDC device
2014-03-10 11:18:50 +07:00
hathach
73ac4b4c80
rename tusbd_msc_scsi_received_isr to tusbd_msc_scsi_cb
...
fix the status phase true --> false
ASSERT_STATUS( dcd_pipe_xfer( p_msc->edpt_in , p_csw, sizeof(msc_cmd_status_wrapper_t), false) );
board ea4357 added P9_5 pull down for device connect
2014-03-09 15:30:57 +07:00
hathach
dcc58a7afc
refractor app_os_prio.h
2014-03-06 11:37:37 +07:00
hathach
c35e668dc4
IAR host os none work well with ea4357
2014-03-05 21:37:53 +07:00
hathach
2a866365e9
added support for IAR retarget but not yet succeeded. lpc17xx have problem connect with jlink
2014-03-04 16:31:44 +07:00
hathach
6f24dd50a0
change lpc17xx cmsis file & ohci to be able to build with IAR
2014-03-04 15:19:50 +07:00
hathach
5f8f046eaa
refractor remove tusbh_msc_is_failed
...
increase usbh enum task from 150 to 200 due to stack overflow when mounting msc device
added task for msc host freeRTOS with stack = 300 (still cannot execute copy command)
2014-02-28 18:42:33 +07:00
hathach
da6b2fbef8
EHCI: immediately reset port when device connected. This proves to help prevent duplication connection event (also with OHCI)
...
increase delay after reset to 100 ms (NXP's EHCI does not work with 50ms)
--> fix all duplication connection with OHCI & EHCI
2014-02-28 17:08:47 +07:00
hathach
a1978e20fe
merge common define in osal/osal_cmsis_rtx.h & osal/osal_freeRTOS.h
2014-02-28 15:50:04 +07:00
hathach
4b6c6929cb
fix the duplicated plug connection status change with lpc17xx by using immediate reset on isr. However Khanh's G5 mouse is not enumerated !!
...
remove TUSB_CFG_CONFIGURATION_MAX from config file
fix some warning
2014-02-20 16:06:31 +07:00
hathach
533c8d2eed
use hcd_pipe_is_busy instead of hcd_pipe_is_idle
...
remove hcd_pipe_is_idle
2014-02-20 10:41:31 +07:00
hathach
d86523b16c
re-enable blocking waiting in ehci controller reset (otherwise it wont works)
2014-02-19 15:50:39 +07:00
hathach
bbe26facb3
some code clean up
...
NOTE: host on ea4357 does not work anymore
2014-02-19 15:29:29 +07:00
hathach
03ad1afef9
clean up warnings
2014-01-24 22:04:59 +07:00
hathach
a982a52ab3
refractor __n2be_16
2014-01-24 21:51:24 +07:00
hathach
275e834bbe
add device_os_none keil project for all boards
2013-12-27 13:40:59 +07:00
hathach
d020c2f609
remove immediately reset when device plug.
...
check to make sure device is still plug after initial delay (200ms) before reset
remove blocking waiting when reset in ehci.c
2013-12-19 13:55:22 +07:00
hathach
cfcef0558a
fix plug & unplug issue by reseting port immediately instead of waiting for usbh enumeration task to do so
2013-12-19 12:43:22 +07:00
hathach
2715650751
refractor ohci.c
2013-12-19 12:11:13 +07:00
hathach
cc736fd45e
able to run ohci hid mouse demo
...
- an old mouse cause double plug event
- an old mouse failed to response the first get 8 byte device descriptor
2013-12-19 11:59:19 +07:00
hathach
b828aabbe4
implement hcd_pipe_close, able to plug & unplug device from ohci lpc17xx
2013-12-18 16:23:09 +07:00
hathach
eaacbd4a36
able to run MSC host demo on lpc17xx
...
implement walk around for halted ED in OHCI
2013-12-18 14:57:34 +07:00
hathach
915296013e
add in hcd_pipe_open & hcd_pipe_xfer
2013-12-17 11:26:39 +07:00
hathach
75ffc0bfec
implement ohci
...
- hcd_port_reset
- hcd_port_connect_status
- hcd_port_speed_get
- hcd_pipe_control_open
- hcd_pipe_control_xfer
- done_queue_isr for control xfer
able to go through enumeration with MSC device
2013-12-16 12:35:05 +07:00
hathach
736cbdc276
using PINSEL_ConfigPin for setting pinsel
2013-12-13 12:41:29 +07:00
hathach
30c8f68930
able to get connect status change interrupt occured
2013-12-13 12:26:37 +07:00
hathach
51b6c6ff41
implement inline bit manipulation function
2013-12-12 12:21:38 +07:00
hathach
4d14e2ac50
add structure & define for ohci
2013-12-11 14:31:27 +07:00
hathach
8bd6440547
fix error in dcd_lpc175x_6x (still has problem with control transfer)
...
fix build error for host
start to add keil support for device
opt out pca9532.c when ea4357 is not the selected board
2013-12-11 11:31:09 +07:00
hathach
b35acbdcb2
add some doxygen
2013-12-10 10:57:59 +07:00
hathach
a40d20387d
complete dcd 17xx control xfer with soft DMA
...
keyboard LED set report run ok with lpc17xx
there is problem with cdc set line encoding
2013-12-09 16:11:10 +07:00
hathach
b08ecda657
house keeping, lpc43xx works okie
2013-12-09 11:57:09 +07:00
hathach
2af9ecbed5
refractor dcd lpc43xx control xfer (with int on complete)
2013-12-09 11:49:34 +07:00
hathach
055285c559
minor refractor
2013-12-09 11:28:11 +07:00
hathach
e320659f8a
add keyboard led mask
...
make usbd control request to subtask
add get/set report via control pipe to hidd
enforce soft DMA to control pipe for lpc11u (lpc17xx not yet)
temp add led_blinking_set_interval to change led blinking interval
refractor dcd_pipe_control_xfer to have interrupt on complete option
add get/set report support of moused_app and keyboardd_app, keyboard LED will make LED blink faster
2013-12-09 11:15:13 +07:00
hathach
1ad78f104e
refractor hid device driver
2013-12-02 14:17:51 +07:00
hathach
2c8b8ea529
add board lpclink2, able to run device stack without any problems
2013-12-02 00:40:10 +07:00
hathach
4b78578266
fix potential wrong endpoint handle for stalling unsupported scsi command
2013-12-01 22:34:59 +07:00
hathach
24e92f79e7
adjust packet per TD for lpc13u is 1023, 11u is 64
2013-12-01 16:11:41 +07:00
hathach
a9a5146108
correct stall & clear stall behavior for non-control pipe
...
fix data_residue when read10, write10 return 0 (no need for BE conversion)
2013-12-01 15:48:49 +07:00
hathach
edb4226f23
change class_ixr to class_cb
...
use IAD whenever enable CDC to make sure windows driver can detect
change keyboard, mouse send report to int_on_complete = true
2013-12-01 13:53:36 +07:00
hathach
d2f91af6b3
add some document for msc_device API
2013-12-01 12:18:26 +07:00
hathach
e0db04e6b4
tested with lpc13u
2013-12-01 00:34:18 +07:00
hathach
864935fbe8
code clean up
2013-11-30 22:38:15 +07:00
hathach
6e30a068d2
completely change the dcd for lpc11u & lpc13u to overcome the fact that lpc11u dma cannot transfer more than 64 bytes
...
each buffer. This implement an soft DMA for lpc11u & lpc13u (previously 1023 max) queued transfer
2013-11-30 22:29:37 +07:00
hathach
af87e231c5
house keeping
2013-11-26 14:17:58 +07:00
hathach
47d8af7111
complete msc demo with lpc13uxx with readonly flash
2013-11-26 13:58:13 +07:00
hathach
8f70a6a886
change endian conversion to native to be & be to native
...
completely deferred xfer isr event to usbd task
complete read10, write10 sequence for large data transfer
2013-11-26 13:15:40 +07:00
hathach
51def3f7ed
refractor usbd task
...
move control request data into task event
adding tusbd_msc_read10_cb, tusbd_msc_write10_cb (not fully supported)
2013-11-25 16:42:04 +07:00
hathach
a5ba283557
change MCU to TUSB_CFG_MCU
2013-11-25 12:48:27 +07:00
hathach
41ffcaf4a5
temp fix for dcd 43xx suspend detection (disconnection does not generate interrupt)
2013-11-22 16:10:05 +07:00
hathach
83f1d660ce
clean up
...
add some doxygen work
finalize device disconnection & suspend
- suspend & resume & remote wake up is not supported yet
2013-11-22 15:16:24 +07:00
hathach
d1ef89a154
fixed lpc11u/13u VBUS (P0_3) with pulldown resistor for USB_VBUS_DEBOUNCED is correct
...
added disconnect callback for lpc11u/13u
2013-11-21 15:24:02 +07:00
hathach
c303154b7a
add class mounted callback for hid mouse/keyboard & refractor mouse/keyboard app
2013-11-21 13:54:29 +07:00
hathach
c461c72ac2
clean up
2013-11-21 13:20:46 +07:00
hathach
6887e5e642
refractor usbd-dcd callback, add bus event isr
2013-11-21 12:47:55 +07:00
hathach
d94efa60d6
fixed dcd lpc17xx queue transfer & IOC handling
...
able to run MSC demo
2013-11-20 15:34:49 +07:00
hathach
850fcf03f0
refractor descriptor
2013-11-20 12:52:07 +07:00
hathach
dbfad50d43
house keeping
2013-11-20 12:21:29 +07:00
hathach
d284ecaccb
add sw int_on_complete support for dcd lpc17xx
2013-11-20 12:03:04 +07:00
hathach
2dafeee585
complete dcd for lpc175x_6x
...
cdc device demo can work but there is hardfault with dma descriptor with fast typing
2013-11-19 16:41:30 +07:00
hathach
94854f805a
get lpc17xx running through enumeration (with control data < 64)
2013-11-18 17:29:12 +07:00
hathach
b104d21e71
fix dcd_pipe_control_xfer for dcd43xx
...
refractor tusb_descriptors.h
2013-11-16 22:16:03 +07:00
hathach
672057de5a
IAD support
2013-11-15 17:20:40 +07:00
hathach
6e463caec0
add semaphore for control xfer for > 64 support for some mcu such as lpc11u/lpc17xx
2013-11-15 16:47:26 +07:00
hathach
d4a260c090
refractor usbd's get descriptor
2013-11-15 15:05:23 +07:00
hathach
699edf9485
separate data & status from dcd_pipe_control_xfer
2013-11-15 14:15:05 +07:00
hathach
05c439e45a
refractor usbd, first step to make get configuration as sub task
2013-11-15 13:26:12 +07:00
hathach
fc68439b74
add usbd_task to handle event task eg setup received
2013-11-15 12:30:22 +07:00
hathach
ba49d26e19
fix build error with device 43xx
...
refractor mscd ramdisk demo
2013-11-15 00:01:07 +07:00
hathach
6e8440afe5
complete double buffering for queueing xfer for lpc11u/13u requried by msc device
2013-11-14 14:12:07 +07:00
hathach
7d84139bd4
fix potential issue with stall endpoints
...
NOTE: cannot able to STALL control OUT endpoints --> unsupported with data out request may got to an issue.
clean up configure, add max string descriptor configure as windows sometimes ask for string @ index 238 !!!
2013-11-13 14:00:39 +07:00
hathach
92d9c36dbc
able to build and run cdc device demo on lpc11uxx
2013-11-13 12:40:11 +07:00
hathach
d8f32a79fc
technically, mouse + keyboard device demo also work on lpc13uxx
2013-11-11 14:02:55 +07:00
hathach
9a81cbcd59
remove xfer_type in endpoint_handle_t
...
cdc device demo runs on lpc13uxx
2013-11-11 13:52:31 +07:00
hathach
f00a4b448d
adding support for lpc13uxx
2013-11-11 12:48:21 +07:00
hathach
7ff0dbb64c
add tusbd_cdc_is_busy
...
enhance cdc serial device demo
refractor fifo.c
2013-11-08 14:46:48 +07:00
hathach
15d3a418bd
add windows driver for cdc
...
add simple echo cdc serial demo
add cdc device send/receive API
refractor descriptor
refractor cdc.h
add usbd driver function
- init
- bus_reset
2013-11-08 12:03:32 +07:00
hathach
8c9def8618
clean up tusb_descriptors
2013-11-07 11:51:39 +07:00
hathach
9171d106bc
added hid device hidd_isr callback
...
refractor keyboard dev demo app
2013-11-06 19:55:48 +07:00
hathach
60d444b452
fix a bug with USB1, but still cannot get interrupt occurred on USB1
2013-11-06 14:53:18 +07:00
hathach
58b41a05db
refractor for device able to work on usb1 of lpc43xx. But could not get it work on EA4357
2013-11-06 14:20:45 +07:00
hathach
b2b53e61fb
refractor dcd_controller_reset & hcd_controller_reset to hal_controller_reset
2013-11-06 12:15:11 +07:00
hathach
83d9ececfb
msc add support
...
- SCSI_CMD_MODE_SELECT_6
- SCSI_CMD_MODE_SENSE_6
- SCSI_CMD_PREVENT_ALLOW_MEDIUM_REMOVAL
fix msc device bug with no data unsupported command
complete msc device demo with ram disk of 8KB
2013-11-05 13:02:15 +07:00
hathach
d02ef07337
added support for
...
- sense data scsi_sense_fixed_data_t
- read format capacity scsi_read_format_capacity_data_t
change msc device callback to support actual response
fix dcd_pipe_clear_stall also reset toggle
2013-11-01 22:00:39 +07:00
hathach
f2ae5b541f
add dcd pipe clear stall
...
- tusb_error_t dcd_pipe_clear_stall(uint8_t coreid, uint8_t edpt_addr) but does not take endpoint_handle_t as input
complete msc device driver
add usbd clear stall endpoint
2013-11-01 14:44:14 +07:00
hathach
3a54ad4c0d
implement msc device class
...
usbd auto stall control for not supported return from class control request
usbd implement xfer isr callback mechanism
DCD
- implement dcd multiple qtd support
- dcd dcd_pipe_stall
- implement dcd_pipe_queue_xfer
- xfer_complete_isr
- flush control endpoint if received new setup while previous transfer is not complete
change msc_cmd_block_wrapper_t flags field to dir
force full speed for easy testing
NOTEs: somehow unable to get endpoint IN interrupt with ioc
2013-11-01 12:11:26 +07:00
hathach
c760c69d51
clean up
2013-10-30 14:16:45 +07:00
hathach
3a37dd66cc
refractor hid device
...
add check dcd_pipe_open if endpoint is already used
refractor usbd : parse and auto open class driver
2013-10-30 14:13:06 +07:00
hathach
b8a7ea6d46
add dcd control pipe stall protocol
2013-10-30 12:52:25 +07:00
hathach
d67a7b7959
fix dcd_data declared with TUSB_CFG_ATTR_USBRAM
...
fix lpc43xx UM: non-control unused endpoint type should be set to different than control in ENDPTCTRL
add hid mouse device
fix mouse descriptor with vertical wheel support
2013-10-30 12:20:00 +07:00
hathach
d9ce879df8
able to enumerate mouse + keyboard (missing timing at set configured though)
2013-10-29 17:16:41 +07:00
hathach
cb0a02f8c9
change device driver init to open (when configured)
...
fix HID_REQUEST_CONTROL_SET_REPORT handle
2013-10-29 16:29:48 +07:00
hathach
5ab195a73d
temporarily implementation of dcd_pipe_is_busy
2013-10-29 15:09:16 +07:00
hathach
db986b3107
able to fully enumerated with keyboard
2013-10-29 14:19:56 +07:00
hathach
357813f171
implementing sw device stack
2013-10-29 11:27:25 +07:00
hathach
d925026089
make device keyboard buildable & runnable with ea4357
2013-10-27 21:33:06 +07:00
hathach
064d0cf5a9
document cdc
2013-10-27 19:59:06 +07:00
hathach
318a058d3c
static assert to check OSAL_QUEUE_DEF's queue_depth parameter < 256
...
enable HOST_HCD_XFER_INTERRUPT by default (previously only enabled with HID), as it is widely used
implement tusbh_cdc_is_busy
add compilation switch in usbh enumeration for hub
rewrite CDC serial application to address usb-serial race condition
2013-10-27 19:34:36 +07:00
hathach
0d9e1163df
fix osal_none timeout, instant return with OSAL_TIMEOUT_NOTIMEOUT
2013-10-27 16:48:09 +07:00
hathach
eb39d88360
rndis document
2013-10-27 15:42:31 +07:00
hathach
f941f88549
rndis document
2013-10-27 15:15:28 +07:00
hathach
76e993c45c
rndis document
2013-10-26 20:25:14 +07:00
hathach
df8d56f485
more document
2013-10-26 20:14:12 +07:00
hathach
dae4fdc04f
cdc document
2013-10-26 20:12:39 +07:00
hathach
acd69a7692
document msc
2013-10-26 19:14:06 +07:00
hathach
621cdc7013
doxygen document for msc
2013-10-26 14:12:45 +07:00
hathach
d1d2bbdf5d
update doxygen
2013-10-26 12:42:27 +07:00
hathach
0d00742cf0
more doxygen work
...
rename tusb_mouse_report_t (keyboard) to hid_mouse_report_t (keyboard)
2013-10-25 17:28:31 +07:00
hathach
7bf5cbc3fc
move descriptor to common folder
2013-10-25 13:46:38 +07:00
hathach
5f23653c69
more doxygen work
2013-10-25 13:45:57 +07:00
hathach
6c629a18fc
partially document CDC & RNDIS
2013-10-24 17:26:06 +07:00
hathach
b1142ff065
document hub
2013-10-24 17:00:04 +07:00
hathach
5f584384eb
document msc host
2013-10-24 16:47:18 +07:00
hathach
d8d00ca768
refractor HID document
2013-10-24 15:48:57 +07:00
hathach
b71ffe3d5a
change TUSB_CFG_CONTROLLER0/1_MODE to TUSB_CFG_CONTROLLER_0/1_MODE for clearance
...
adding configuration docs for tinyusb_config.h
document HID mouse & keyboard API
2013-10-24 15:32:54 +07:00
hathach
15c80a9580
clean up
2013-10-16 12:35:55 +07:00
hathach
de7e21dc66
refractor hub api
...
fix all test build errors
2013-10-16 11:05:33 +07:00
hathach
6f9172c15f
clean up warnings here and there
2013-10-02 14:20:05 +07:00
hathach
1263dbb122
enhacne msc demo, update IAR project file
2013-10-02 13:32:39 +07:00
hathach
5c8389b9ae
update freertos project
...
temp hack to fix problem with no TD on status endpoint of hub in case of error
2013-10-02 11:01:28 +07:00
hathach
640b0ec546
- move disconnection handle to enum task --> move tusbh_xxx_unmount is invoked in non-isr context
2013-10-01 13:53:54 +07:00
hathach
7f4a3fc829
ignore multiple level of hub
2013-10-01 13:23:31 +07:00
hathach
71b2859fe5
handle unplug the hub itself
2013-10-01 13:09:52 +07:00
hathach
4da3b03430
refractor hub
2013-10-01 12:12:35 +07:00
hathach
14ebd6c4d9
refractor hub
2013-10-01 11:29:25 +07:00
hathach
93821c55ce
hack ehci advance async to handle disconnect via hub
2013-09-30 18:40:20 +07:00
hathach
5eebec61f1
refractor hub
2013-09-30 17:14:44 +07:00
hathach
0f05d27ac9
refractor hub
2013-09-30 16:59:41 +07:00
hathach
9ecaec67b3
refractor hub
2013-09-30 16:40:02 +07:00
hathach
5fb22e3f34
refractor hub
2013-09-30 16:13:08 +07:00
hathach
821f85cb20
refractor hub
2013-09-30 15:34:22 +07:00
hathach
3cc169f2fd
able to mount one device on the hub
2013-09-30 15:16:23 +07:00
hathach
cb600ed988
clean up hid host (temp let test failed)
2013-09-28 01:01:44 +07:00
hathach
bfa96ae9da
fix an "extra" semaphore wait in msc host
2013-09-27 23:23:45 +07:00
hathach
eb1a101667
house keeping
2013-09-27 22:38:23 +07:00
hathach
9d60db0f9f
add scsi write10 & test unit ready
...
done copy command
implement get_fattime using __DATE__ and number of calls
2013-09-26 14:37:40 +07:00
hathach
f827750120
add cat command to cli
2013-09-26 01:14:27 +07:00
hathach
09724c5d11
refractor msch
2013-09-26 00:17:45 +07:00
hathach
1fee50b9fe
add tusbh_msc_status
...
reanme PRINTF_TARGET_DEBUG_CONSOLE to PRINTF_TARGET_SEMIHOST
add read10 implementation
able to read fat root sector
2013-09-25 16:20:38 +07:00
hathach
bbfa85aa08
allow a limited model to deal with stalled pipe/transaction
...
added stall clear & able to mount the stupid toshiba thumb drive
add HCD pipe API
- bool hcd_pipe_is_busy(pipe_handle_t pipe_hdl);
- bool hcd_pipe_is_stalled(pipe_handle_t pipe_hdl);
- uint8_t hcd_pipe_get_endpoint_addr(pipe_handle_t pipe_hdl);
- tusb_error_t hcd_pipe_clear_stall(pipe_handle_t pipe_hdl);
remove tusbh_device_mount_failed_cb (not neccessary for user)
2013-09-24 18:23:34 +07:00
hathach
63b776f7cf
add some tests support for msc host
...
refractor msch buffer for getting inital scsi like inquiry, read capacity
adding support for resovling stall on control pipe
2013-09-24 15:21:16 +07:00
hathach
c4fef827b1
refractor, add wheel for mouse demo
2013-09-23 01:12:59 +07:00
hathach
85f3ad9d3b
refractor hcd API to allow queue xfer without actually transferring data
2013-09-23 00:24:51 +07:00
hathach
a8a10e8650
added read capacity 10 with hacking code
2013-09-22 23:54:44 +07:00
hathach
cc91a73cdc
fix pingstate for highspeed bulk out transfer
...
temp implementation of msc host --> can issue inquiry command
2013-09-22 18:44:55 +07:00
hathach
5708863859
house keeping, clean up warnings
2013-09-21 14:38:40 +07:00
hathach
d15ba08fdc
house keeping
2013-09-21 13:17:43 +07:00
hathach
295612b48f
remove ATTR_WEAK for all necessary driver callback
...
fix ceedling tests
2013-09-21 00:42:39 +07:00
hathach
f8f398a681
start to add msc host, fix dangerous problem with unstable device when plugged --> 200 ms delay. 50ms delay after each port reset
2013-09-20 23:53:48 +07:00
hathach
52ae0afeb6
refine hid host driver
2013-09-20 16:20:28 +07:00
hathach
86681fe442
starting to add support for IAR workbench
2013-09-19 16:11:11 +07:00
hathach
61c591b9ac
clean up warnings
2013-09-18 23:34:03 +07:00
hathach
e32e901cd1
increase usb transaction time-out as host_cmsis_rtx easily timeouted
2013-09-14 00:00:05 +07:00
hathach
0d279facbb
fix cmsis rtx tick configuration
...
everything should work
TODO: remove static for variable error in control xfer subtask
2013-09-13 23:32:07 +07:00
hathach
67453b89f0
fix task def with cmsis rtx
2013-09-13 23:01:43 +07:00
hathach
ad0ef2e266
all project can run ok
2013-09-13 22:30:11 +07:00
hathach
c71f5c6f1b
integrate & able to run cmsis-rtx with current code base
2013-09-13 16:53:17 +07:00
hathach
09dd83c05b
add set msg & get set cmplt for OID_GEN_CURRENT_PACKET_FILTER (default = 0 reject all) to
...
○ NDIS_PACKET_TYPE_DIRECTED
○ NDIS_PACKET_TYPE_MULTICAST
○ NDIS_PACKET_TYPE_BROADCAST
2013-09-11 15:03:37 +07:00
hathach
14a8e26697
able to get blinky + greeting
2013-09-10 10:43:24 +07:00
hathach
d3e83bc802
print out mac address
2013-07-19 12:08:04 +07:00
hathach
a522263a9d
add implementation for
...
- tusbh_cdc_rndis_is_mounted
- tusbh_cdc_rndis_get_mac_addr
2013-07-19 02:30:22 +07:00
hathach
ce865721a5
add test & code to send rndis msg query for permanent address (MAC address)
2013-07-19 01:52:56 +07:00
hathach
3b12917fb0
extract send message & wait & get complete message to send_message_get_response_subtask
2013-07-14 08:33:39 +07:00
hathach
03873135a9
add some required NDIS OID define
2013-07-13 00:11:17 +07:00
hathach
0e14752c81
pass the initialize_cmplt
2013-07-06 19:06:30 +07:00
hathach
25304d142f
refractor qhd_xfer_error_isr (omit xfer_type para)
...
add accumulated total xferred byte for an endpoint until transfer with IOC set
- control xfer will have length of data phase in usbh_xfer_isr callback
2013-07-06 14:52:02 +07:00
hathach
68da489c2e
refractor ehci.c adding qhd_get_xfer_type
2013-07-06 13:41:48 +07:00
hathach
e4ae45359d
fix bug with RNDIS class open using non-static variable p_cdc
...
fix bug with SUBTASK_EXIT with single if (add do while wrapper)
add payloay message
able to send initialize & wait on notification pipe & get initialize cmpt
2013-07-05 20:21:24 +07:00
hathach
355fd7e648
adding subclass RNDIS-CDC driver API
...
- implement init
- close
- xfer_isr
- open
adding waiting for notification after send rndis_initalize_msg
2013-07-05 16:22:42 +07:00
hathach
e4ff63c604
fix a minor bug
2013-07-05 13:41:34 +07:00
hathach
7345a4515d
fix bug with rndis overshadow the normal cdc callback
2013-07-05 13:37:57 +07:00
hathach
374aea7a11
change usbh_control_xfer_subtask to use flat API instead of passing tusb_control_request_t struct
2013-07-05 13:23:42 +07:00
hathach
c08c655fd1
implementing initializing for RNDIS
2013-07-05 11:46:12 +07:00
hathach
aed07d83db
host enum task use static control_request variable instead of literal of requests
...
increase enum task stack size from 128 to 150 as it comes dangerously close to overflow
2013-07-04 16:01:20 +07:00
hathach
0d37c4a319
refractor control request used in enumeration task to reduce task data
...
--> enum task now can work with 128 depth
2013-07-04 14:00:41 +07:00
hathach
97cbb39f6f
port osal_mutex to freeRTOS, able to mount mouse & cdc device
...
tinyusb host stack overflow though
2013-07-04 13:24:54 +07:00
hathach
391e132d6b
no big deal, only rename tusb_std_request_t to tusb_control_request_t
2013-07-04 12:25:39 +07:00
hathach
d3aed01874
add some printf when a class is mounted
...
add initial tests for rndis
2013-07-04 10:47:31 +07:00
hathach
c5afb9d50f
change class (hid/cdc) _mounted_isr to _mounted_cb
2013-07-04 09:45:20 +07:00
hathach
51e9a1817b
change some license text
2013-07-03 13:14:14 +07:00
hathach
4a8686e868
adding _mounted_isr & _umounted_isr callback for host keyboard & mouse
...
remove TUSB_EVENT_INTERFACE_OPEN & TUSB_EVENT_INTERFACE_CLOSE
2013-07-03 12:46:12 +07:00
hathach
b0f45b3651
temporarily check cdc mounted by pipe_in & pipe_out
...
add tests for tusbh_cdc_xfer_isr
2013-07-03 12:06:07 +07:00
hathach
1667ef5041
replace tusbh_cdc_isr by tusbh_cdc_xfer_isr with extra parameter as
...
- pipe id
- xferred_bytes
host_class_driver_t add xferred_bytes parameter
void (* const isr) (pipe_handle_t, tusb_event_t); --> void (* const isr) (pipe_handle_t, tusb_event_t, uint32_t);
update hid_host & its tests
2013-07-03 11:36:08 +07:00
hathach
b3f98bc15a
rename cdc descriptor type
...
add tusbh_cdc_mounted_isr & tusbh_cdc_unmounted_isr
2013-07-03 10:53:16 +07:00
hathach
539c7cdbe1
update usbh_xfer_isr to take actual byte transferred and correct tests
2013-07-02 17:37:55 +07:00
hathach
e1ad7b62cf
add way to calculate the actual byte transferred with ehci
...
add come callback for cdch
add code for cdc serial demo
2013-07-02 17:20:25 +07:00
hathach
6ce90e2bd8
add tusbh_cdc_send, t usbh_cdc_receive
...
add cdc_serial_app for virtual com demo
2013-07-02 16:41:13 +07:00
hathach
7e5c6ded2d
add tusbh_cdc_serial_is_mounted API
...
test for cdch close driver
2013-07-02 15:32:41 +07:00
hathach
b04b145965
add cdc_rndis enum & struct
2013-07-02 14:45:42 +07:00
hathach
12526b34a1
extract qhd_xfer_error_isr
...
add support for period list in xfer_error_isr
pass period TUSB_EVENT_XFER_ERROR & TUSB_EVENT_XFER_STALLED tests
2013-07-02 12:22:46 +07:00
hathach
9fea5291bf
refractor extract list_next
...
add support for TUSB_EVENT_XFER_STALL
add test for error/stall in periodic list
2013-07-02 12:01:51 +07:00
hathach
958d390a85
refractor code
2013-07-01 20:28:16 +07:00
hathach
3f9f3f08d2
add cdc host driver close cdch_close
...
refractor
- add helper function in ehci qhd_next & qtd_next
- extract function qhd_create_pipe_handle
rename tusb_transfer_type_t to tusb_xfer_type_t
add some handling for stall
2013-07-01 18:53:25 +07:00
hathach
d8bd749c75
change control xfer check in usbh_xfer_isr
...
rename
- async_list_process_isr to async_list_xfer_complete_isr
- period_list_process_isr to period_list_xfer_complete_isr
extract function void qhd_xfer_complete_isr(ehci_qhd_t * p_qhd, tusb_transfer_type_t xfer_type)
2013-07-01 16:14:46 +07:00
hathach
3f0d740776
rename usbh_isr to usbh_xfer_isr
2013-07-01 15:30:29 +07:00
hathach
35adca5ba3
house keeping
2013-07-01 11:37:53 +07:00
hathach
e1883fcd26
add acm_capability saving to host data & its test
2013-07-01 11:29:23 +07:00
hathach
e94ce81b04
fix compilation error
2013-07-01 10:43:55 +07:00
hathach
a4f7dc1105
add & pass a first few test for cdc host
...
implement cdch_open_subtask
2013-07-01 10:35:37 +07:00
hathach
a943cce991
test refractor
2013-06-29 21:00:33 +07:00
hathach
9e607f6dee
add SUBTASK_EXIT in osal.h for TDD project
2013-06-29 16:20:24 +07:00
hathach
7e6e5cc356
[CDC]
...
- add configure option
- add include path
- add driver function table
2013-06-29 16:06:45 +07:00
hathach
d4f31e149a
adding descriptor, structure, enum support for cdc
2013-06-29 15:56:32 +07:00
hathach
a07ff5a3ce
use SUBTASK_EXIT to restart & exit task without "assert"
2013-06-27 16:32:54 +07:00
hathach
3bca56665c
add mutex support for osal
...
add test for mutex in test_osal_none.c
implement usbh_control_xfer using mutex to get access to queue xfer on control pipe
(while semaphore is used to sync with hcd DMA)
failed to issue control xfer: set idle & get report descriptor in hidh_open_subtask (more to work on)
2013-06-27 16:19:22 +07:00
hathach
c81c4bb817
add set idle request for hidh_open_subtask
...
add interface number to hidh_interface_info_t
refractor hidh_open_subtask to be a true subtask
cannot run with set idle code ON because of semaphore misuse
2013-06-27 03:20:14 +07:00
hathach
ea2e63a332
remove app_os_prio.h in os_none configure
...
remove instance_num in hidh API
temporarily pause device stack developement
should fix travis-ci build error
2013-06-26 18:00:05 +07:00
hathach
2cc5df9b00
add custom bulk out test
2013-06-23 01:10:59 +07:00
hathach
fe53297b17
fix bug with custom class that terminate xfer after the first QTD
2013-06-22 22:26:00 +07:00
hathach
54c065b1d5
fix license
2013-06-22 12:54:47 +07:00
hathach
07f36e8a61
fix a stupid bug
2013-06-21 14:52:18 +07:00
hathach
5c564df8c1
add api for hcd: hcd_pipe_is_idle
...
add api for usbh: tusbh_device_get_mounted_class_flag
implement api for custom class
- is mounted
- read
2013-06-21 14:20:08 +07:00
hathach
3924764dff
[host lpc43xx] adding support for host custom class
...
refractor usbh class driver indexing
opt out periodic list code in EHCI (need to refractor/group later)
[device lpc176x] rename dcd_endpoint_configure to dcd_pipe_open
add usbd_pipe_open to manage pipe
2013-06-21 13:11:45 +07:00
hathach
743e5a7a93
house keeping
2013-06-16 15:39:09 +07:00
hathach
4d6121d44a
refractor set endpoint max packet size
2013-06-16 15:32:08 +07:00
hathach
357e8d32ec
clean up some & add code for managing control request targeting interface
2013-06-16 14:41:48 +07:00
hathach
77e0834f34
use dcd_pipe_control_read in endpoint_control_isr
2013-06-14 19:10:11 +07:00
hathach
f219a9c77d
add dcd_pipe_control_read
2013-06-14 19:06:33 +07:00
hathach
40b65b265c
implement hidd_control_request including std & class specific to interface number.
...
refractor usbd_setup_received
2013-06-14 18:22:40 +07:00
hathach
4103cc374f
add coreid to hidd_init
...
temporarily implement hidd_init using dcd from lpc17xx
add more test for dcd lp176x
implement dcd_endpoint_configure
2013-06-12 21:06:43 +07:00
hathach
ee57a6f13f
clean up
2013-06-12 14:06:41 +07:00
hathach
17a27f7398
[lpc176x][device] pass set configure control request
2013-06-11 17:53:33 +07:00
hathach
5ae9c72f84
[lpc176x][device] get pass get string descriptors
2013-06-11 17:35:53 +07:00
hathach
cae19b8f56
fix bug with setup packet received (wrong increasement of pointer)
2013-06-11 17:12:44 +07:00
hathach
049a22f2cc
refractor dcd_pipe_control_write_zero_length to use dcd_pipe_control_write
2013-06-11 16:30:06 +07:00
hathach
d55f9ecef1
get pass set address
2013-06-11 16:13:50 +07:00
hathach
72b5b61597
able to xfer device descriptor on control endpoint of lpc176x
2013-06-11 16:01:30 +07:00
hathach
503d279af5
ADDING LPC176X device
...
implementing dcd_lpc175x_6x.c
add usbd_dcd.h
add usbd_isr with TUSB_EVENT_SETUP_RECEIVED & TUSB_EVENT_BUS_RESET event
parameterize TUSB_CFG_DEVICE_CONTROL_PACKET_SIZE (replace USB_MAX_PACKET0)
--> able to get interrupt and receive setup packet, but SET ADDRESS (expected get device descriptor).
uncomment write zero length will cause issue, no more interrupt ?
2013-06-08 02:50:10 +07:00
hathach
e3bb5e9f2f
change buffer_start_addr from uint8_t* to uint32_t due to travis linux 64bit
2013-06-05 11:56:55 +07:00
hathach
f69fefefa9
added dcd_dma_descriptor_t typdef
...
reorganize test project, multiple test projects each is specifically for an MCU
2013-06-05 11:23:41 +07:00
hathach
3394b4beaa
re-create ngx4330.h
...
remove some rom driver dependency on upper layer
introduce CAP_DEVICE_ROMDRIVER to overwrite TUSB_CFG_DEVICE_USE_ROM_DRIVER within the lib
add support for lpc175x_6x
- able to build and blink led on lpcxpresso1769 with device (without any class enabled)
2013-06-04 13:36:18 +07:00
hathach
cdc830782f
rename tusb_device_is_configured
...
remove dcd_lpc18xx_lpc43xx.h and dcd_lpc11uxx_lpc13xx move define to hal
2013-06-04 10:43:58 +07:00
hathach
a3ed66344d
fix compiler bug with ceedling tests
2013-06-03 16:40:02 +07:00
hathach
9f9adca03b
add TUSB_CFG_PROUDCT_ID check
...
move USB_MAX_EP_NUM to device dependency
- lpc43 --> 6
- lpc11/13 --> 5
2013-06-03 15:56:14 +07:00
hathach
52f18f3784
refractor device mouse main.c & tusbd_hid_mouse_send_report
2013-06-03 14:37:41 +07:00
hathach
b527e6ec4a
refractor tusb_descriptors
...
usbd device_class_driver
added & tested HID mouse for device (work together with hid keyboard)
rename DEVICE_ROM_REG_BASE, DEVICE_ROM_DRIVER_ADDR
2013-06-03 14:31:17 +07:00
hathach
7d78fc1baf
rename romdriver handle
...
forming API for USBD-CLASS driver (abstract away from rom driver)
separate buffer of hid class from buffer of core driver
2013-06-01 21:54:08 +07:00
hathach
9e49056721
refractor change tusbd_hid_keyboard_send_report API
2013-05-31 21:24:40 +07:00
hathach
03d85acfc7
refractor string descriptors, allow one-stop configure descriptor for
...
- manufacturer, product etc ... (only english now)
2013-05-31 18:21:31 +07:00
hathach
ed64401e61
rename descriptor variables
2013-05-31 14:42:38 +07:00
hathach
3b9a616ca9
change at86rf to 1ghznode
...
rom device runs ok with lpc11uxx
2013-05-31 13:57:57 +07:00
hathach
04a641f067
ea4357 can be enumerated, but get setconfiugre value of 0
2013-05-29 16:56:15 +07:00
hathach
d5836751d9
keyboard example works with lpc1347 xpresso
2013-05-29 15:23:07 +07:00
hathach
dda0808ebb
fix lpcxpresso1347 board_leds
...
temp change USBD_API to ROM_API
add lpc13xx device support
fix romdriver pointer
able to init rom driver
2013-05-29 14:39:14 +07:00
hathach
1e5bd82af2
rename NGX to ngx
...
add a bunch of stub header for dcd (175x_6x, 13xx, 18xx_43xx)
add dcd_nxp_romdriver for handling usb rom driver
add BIT_TEST_ in binary.h
remove mw_usbd_hid.h include due to lexical conflict
2013-05-28 15:24:27 +07:00
hathach
ed217948b8
rename descriptor type, hid descriptor type
2013-05-25 17:19:18 +07:00
hathach
ae02263d81
add stub function to able to build device with EA4357
...
- dcd_controller_reset
- dcd_controller_connect
2013-05-25 16:03:40 +07:00
hathach
132c3996ea
move scu_pinmux(0x2, 5, MD_PLN | MD_EZI | MD_ZI, FUNC2) to hal/hal_lpc43xx.c
...
dual host run without problem with mcb4300
2013-05-23 14:56:11 +07:00
hathach
94fc55ba2c
fix host build error (problem with conflict name in hid.h)
2013-05-23 13:29:46 +07:00
hathach
8cb7818bcc
- move CMSIS & driver lib for lpc13u to codebase bsp/lpc13xx
...
- change descriptor.c/h able to build device example
2013-05-23 13:22:46 +07:00
hathach
d7ae21203c
fix issue with osal_none queue def
2013-05-21 17:57:21 +07:00
hathach
40503b913b
abstract os priority for application tasks
2013-05-14 21:32:13 +07:00
hathach
f8d1c3da3e
rename tusbh_hid_keyboard/mouse_is_supported to tusbh_hid_keyboard/mouse_is_mounted
2013-05-14 03:03:54 +07:00
hathach
cc49607434
test refractor
2013-05-12 19:32:32 +07:00
hathach
81780008e9
add cardinality_of function to return number of set bits
...
refractor tests in ehci
2013-05-11 00:40:21 +07:00