Commit Graph

606 Commits

Author SHA1 Message Date
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