Commit Graph

237 Commits

Author SHA1 Message Date
hathach 1c73d2f923 keil work with lpc17xx device 2014-03-10 11:46:51 +07:00
hathach 802bb80aef move WinCDCdriver.inf 2014-03-10 11:40:17 +07:00
hathach d5f278bbf0 clean up dcd_lpc175x_6x.c 2014-03-10 11:36:19 +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 e506f4cae2 ported board_buttons API to EA4357 but device is not mounted yet 2014-03-07 15:31:41 +07:00
hathach 01760794fe lpc1347 mouse & keyboard & cdc works well 2014-03-07 14:54:19 +07:00
hathach 05474e4bd2 refractor mouse app 2014-03-07 13:05:43 +07:00
hathach 3d17212f29 added board_buttons for lpcxpresso/board_lpcxpresso1769.c 2014-03-07 12:45:49 +07:00
hathach 26b1b879dd refractor device mouse app to use board_buttons 2014-03-06 23:48:44 +07:00
hathach 4b8c0d97c6 add board_buttons API and refractor device keyboard app 2014-03-06 23:26:40 +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 bbe26facb3 some code clean up
NOTE: host on ea4357 does not work anymore
2014-02-19 15:29:29 +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 8de6ee22dc move device app code 2013-12-24 16:15:18 +07:00
hathach 30c8f68930 able to get connect status change interrupt occured 2013-12-13 12:26:37 +07:00
hathach 4d14e2ac50 add structure & define for ohci 2013-12-11 14:31:27 +07:00
hathach b35d2c8f43 add lpc17xx build config for host demo 2013-12-11 12:13:22 +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 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 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 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 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 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 9cb99d3716 house keeping 2013-11-08 19:37:26 +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 3945869cc2 refractor tusb_descriptor, adding support for cdc descriptor 2013-11-07 12:28:10 +07:00
hathach 8c9def8618 clean up tusb_descriptors 2013-11-07 11:51:39 +07:00
hathach f1d47702e8 refractor mouse dev app 2013-11-06 20:06:28 +07:00
hathach 9171d106bc added hid device hidd_isr callback
refractor keyboard dev demo app
2013-11-06 19:55:48 +07:00
hathach b2b53e61fb refractor dcd_controller_reset & hcd_controller_reset to hal_controller_reset 2013-11-06 12:15:11 +07:00
hathach 024858a605 complete msc device demo with 8KB ram disk 2013-11-05 14:55:58 +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 f797c4e02a rename device project 2013-11-01 12:17:54 +07:00
hathach 077b6defe9 rename device project 2013-11-01 12:13:31 +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 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 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 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 a943cce991 test refractor 2013-06-29 21:00:33 +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 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 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 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 7f8752b38b add LPC175x_6x cmiss (got from xpresso example)
add LPC175x_6x driver lib (got from http://git.lpcware.com//lpc175x_6x.git
2013-06-04 11:45:01 +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 f982a10b6b house keeping 2013-06-03 16:04:03 +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 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 abf1054745 refractor & beautify string descriptors 2013-05-31 16:37:40 +07:00
hathach 376482558a clean up device main.c demo code 2013-05-31 14:53:26 +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 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 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 120db28a17 change format of file header & license spacing 2013-05-06 12:50:19 +07:00
hathach 56cd8be75e change website from tinyusb.net to tinyusb.org 2013-03-25 11:46:30 +07:00
hathach aeccdfde3f remove TUSB prefix for class enum definitions
add most of HID USAGE TABLE and definitions etc ...
2013-02-05 13:57:06 +07:00
hathach 7edda37518 add more test code for keyboard hid application API
refractor, restructure, rename several thing regarding host, keyboard etc ...
2013-01-26 01:37:15 +07:00
hathach 38ce3f7534 start to support
- usbd host
- osal

some global define
#define TUSB_CFG_HOST_CONTROLLER_NUM
#define TUSB_CFG_HOST_DEVICE_MAX
#define TUSB_CFG_CONFIGURATION_MAX

rename & refractor HID type structure & enum

use CException to test asssertion library
add test for hid_host_keyboard with usbd configure get & osal queue get stubs
update test for assertion library
refractor ASSERT_STATUS in assertion library
update tusb_error_t values
rename usb basic type & enum in tusb_types.h and std_descriptors.h
2013-01-22 17:41:06 +07:00
hathach cfe7a3d23b change error type to lower case for more consistency
change Error Enum to TUSB prefix for more consistency
start to add check for OS configure
2013-01-19 00:57:58 +07:00
hathach d8c8b9e38a add ASSERT POINTER support
add hid host and separate hid host & device
update host project setting with EA4357 board
add para checking test for hid host
2013-01-18 14:39:42 +07:00
hathach 25f6cee73b add DEVICE_ROM_DRIVER_ADDR macro in hal to point to rom driver add
add TUSB_ATTR_RAM_SECTION in tinyusb_config.h to abtract usb ram placement to application
remove power_api.h (mcu dependency)
2013-01-18 11:49:51 +07:00
hathach c16632da0b add UART support for ea4357 (tested) 2013-01-17 14:40:46 +07:00
hathach 480ddb4fec start to add bsp and build configuration for embedded artist 4357 2013-01-17 11:03:43 +07:00
hathach aae51e985f refractor board and start to add support for SWO retarget 2013-01-17 01:09:58 +07:00
hathach c004cd4387 add uart for lpc11uxx and retarget successfully 2013-01-16 12:43:17 +07:00
hathach 0cec7910a0 update project setting to have most warning option enable with simple switch on/off (off for faster compiling time) 2013-01-15 14:41:19 +07:00
hathach e935f29541 tested keyboard device with lpcXpresso1347 board 2013-01-11 20:49:46 +07:00
hathach d76df54003 add external configure file: tusb_config.h
rename the internal/default configure from tusb_cfg.h to tusb_option.h
2013-01-11 16:55:47 +07:00
hathach a6e5197b58 use X Macros to remove #undef in errors. 2013-01-11 16:28:57 +07:00
hathach 83bb44510a update makefile project
back to use lpcxpresso project file (instead of make target project)
2013-01-11 16:10:16 +07:00
hathach 1f3c9ed69d start add makefile for keyboard demo 2013-01-10 16:46:52 +07:00
hathach 8c2ec83c59 rename macro configure in examples 2012-12-20 16:59:43 +07:00
hathach ec4a3f6048 cleaning 2012-12-18 15:08:30 +07:00
hathach 4ec23ea786 add build and project settings for lpc43xx 2012-12-10 15:59:10 +07:00
hathach 3eb7465e5e abstract usb enable/disable interrupt to hal layer 2012-12-10 14:58:25 +07:00
hathach 70e3a13951 change building process yes, again 2012-12-07 17:59:46 +07:00
hathach cc45f35d70 fix descriptors for device 2012-12-07 10:53:52 +07:00
hathach 6049b6d0df make fundamental changes in project building
add some makefile.defs
2012-12-07 01:31:09 +07:00
hathach f31ade6151 add board abstract layer
rename arch to mcu
2012-12-04 18:18:29 +07:00
hathach 8f00307986 fixed building errors with device example 2012-12-04 11:30:34 +07:00
hathach 6ea85a569a added IAD descriptor 2012-12-03 18:43:35 +07:00
hathach b698b09a67 fix some doxygen settings and stuffs add prepacked for IAR compiler 2012-12-03 16:51:14 +07:00
hathach 8a1dee1b2e add overview.md and license.md and tinyUSB overview.png 2012-12-02 00:36:44 +07:00
hathach 879fb21f99 change license email to website
added support for cdc devices
2012-11-29 17:52:57 +07:00
hathach b8b92e1202 hid mouse working 2012-11-29 16:32:49 +07:00
hathach 851f5bfd06 make keyboard device work with lpc1347 2012-11-28 11:53:23 +07:00
hathach a5eecb4055 added keyboard device demo 2012-11-27 17:51:59 +07:00
hathach 545fe61828 start to add hid keyboard 2012-11-27 17:41:00 +07:00
hathach 06c16ae03f added files
added some template code
2012-11-27 15:21:47 +07:00