Commit Graph

89 Commits

Author SHA1 Message Date
Aubr.Cool 7caabd2b7a mv device ctl cmd macros from serial.h to rtdef.h 2015-03-26 08:40:36 +08:00
Bernard Xiong 73d5acecba [DeviceDrivers] Add pin.h in the rtdevice.h 2015-01-20 07:24:49 +00:00
Bernard Xiong 1bb425e839 [DeviceDrivers] code cleanup for hardware pin 2015-01-19 08:56:43 +00:00
Bernard Xiong d01b2ca84b [DeviceDrivers] Add pin io driver framework 2015-01-19 06:18:16 +00:00
bernard c45f5a2490 [Drivers] re-write serial framework. 2014-07-18 06:45:54 +08:00
shaolin 64a2902fa9 1. Fix some spell error;
2. Fix data transfer size calculate error issue;
2014-07-13 17:19:34 +08:00
bernard 005014e7d0 [Drivers] Add workqueue implementation. 2014-07-13 07:27:57 +08:00
bernard d0debf9892 [Drivers] Make code cleanup in serial framework. 2014-07-10 13:32:16 +08:00
bernard 306e1ac43f [DeviceDrivers] Add watchdog driver frame work 2014-03-04 14:32:56 +08:00
shaolin 0fb9c54efd 1.replace API prefix usb* with usbh* in USB host stack to distinct with USB device stack;
2.adjust some viable and micro name
3.some other small fix
2014-03-04 08:59:53 +08:00
shaolin 8fd0a7f9c6 Update USB Device Stack to support more device controllers;
Pass USB CV test verification;
Code cleanup;
2014-02-16 17:42:35 +08:00
Grissiom 0feefc03b6 device/pipe: add a control cmd to get the space left in pipe 2013-10-23 01:43:18 +08:00
Grissiom 6e676e7754 dev/portal: implement portal device
Portal is a device that connect devices. Currently, you can only connect
pipes in portal. Pipes are unidirectional. But with portal, you can
construct a bidirectional device with two pipes.
2013-08-20 12:54:43 +08:00
Grissiom d683d32bd5 device/pipe: add nonblocking read/write and force write mode
The previous implementation will always blocks the reader/writer.
However, at least FinSh would expect the device to be nonblocking ---
read should return 0 when there is no data in it.
2013-08-19 15:35:56 +08:00
Grissiom 4919d29d69 ringbuffer: add put_force and putchar_force API
Add the APIs that will discard the old data when rb is full.
2013-08-19 15:32:42 +08:00
Grissiom 981d929b56 ringbuffer: fix the ambiguous name
RT_RINGBUFFER_SIZE could mean "the size of the whole buffer", "the size
of the empty space" or "the size of the data". Moreover, it's never a
micro anymore. Change it to rt_ringbuffer_data_len before it's too late.
Also, RT_RINGBUFFER_EMPTY is changed to rt_ringbuffer_space_len.
2013-08-19 14:12:35 +08:00
Grissiom 38ce3879d8 device/pipe: add rt_pipe_{init,detach}
This provide the possibility that allocate the buffer of the ringbuffer
on a specific region, instead of always mallocing it. It also bring us
the benefit of using pipe device on the systems without heap.
2013-08-19 12:28:59 +08:00
bernard a124e7bd22 add initialization debug code 2013-07-24 07:33:48 +08:00
yiyue.fang 3359419d4f additional update 2013-06-28 00:39:11 +08:00
yiyue.fang 621fbdb90c Embedded GPLv2 license in drivers 2013-06-28 00:36:54 +08:00
heyuanjie87 02869d7e67 udisk can be eject 2013-06-15 23:02:50 +08:00
Grissiom ed19483cb4 usb: add USB_MSG_PLUG_OUT event
When the core received an USB_MSG_PLUG_OUT event, it will stop all the
classes. This make a chance that the classes could get rid off doing
useless stuff while the USB cable is plugged out.
2013-06-06 15:21:40 +08:00
weety 624d947e56 use __rt_ffs instead of ffs 2013-05-25 18:57:01 +08:00
qiuyiuestc a33e992724 Merge pull request #95 from grissiom/vcom
usbdevice/core: add reset function to support hotplug
2013-05-25 01:05:00 -07:00
qiuyiuestc 97a507e667 usbdevice/core: add reset function to support hotplug
When the USB got RESET packet from the host and the address is setup,
all the classes will got reset. The reset is done by class stop and than
class run. So the classes should reset their internal state in
class_{run,stop}.

Besides, the USB device driver could post a USB_MSG_RESET message on
every RESET packet.
2013-05-25 15:55:27 +08:00
heyuanjie87 8aa4eb7924 make Host can halt endpoints 2013-05-23 12:33:22 +08:00
heyuanjie87 8b4aadb4db add usb state 2013-05-17 20:53:05 +08:00
Grissiom f0d50a7b36 usbdevice/core: use static thread instead of dynamic thread
It also add two configurations for the USB device even loop thread:

    RT_USBD_THREAD_STACK_SZ to set the stack size, default to 2048
    RT_USBD_THREAD_PRIO     to set the priority, default to 8

You can overwrite the default values in rtconfig.h
2013-05-12 15:43:29 +08:00
Bernard Xiong 8e9e7f3e7c serial: use RT_SERIAL_RB_BUFSZ to define the size of ring buffer. 2013-05-12 14:03:11 +08:00
Grissiom 639bd30321 reimplement ringbuffer
The new implementation use the mirroring method to distinguish full
buffer and the empty buffer. It also support buffers of arbitrary size.
2013-05-08 15:45:31 +08:00
heyuanjie87 34d531578e class driver can custom string description 2013-01-24 20:59:43 +08:00
Bernard Xiong 9721603b72 Add RT_MTD_ESRC definitions.
Add RT_MTD_ESRC definitions. If the source page has issue when copying a page, the low level can return this error code.
2013-01-17 10:06:01 +08:00
heyuanjie87 1cb356c9df Correct macro definition 2013-01-11 00:03:46 +08:00
heyuanjie87 7b2929303e revert some define to usb_common.h 2013-01-11 00:02:40 +08:00
heyuanjie87 d84fde4e54 revert the define 2013-01-09 18:56:31 +08:00
heyuanjie87 6b0b2d51e3 move the define related to Mass to mstorage.h 2013-01-09 12:12:25 +08:00
heyuanjie87 22786f8817 allows the user to custom PID and VID;
add a dcd operation to send status in control transfer
2013-01-09 12:04:01 +08:00
Ming, Bai b4de7cce57 Re-normalizing the repo 2013-01-08 22:40:58 +08:00
sc943313837@gmail.com 2a6ffa0ccd 添加RNDIS定义
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2578 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-31 15:38:35 +00:00
sc943313837@gmail.com 6374d20fad change inferface handler parameter
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2565 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-30 09:49:31 +00:00
bernard.xiong@gmail.com 1c56553b04 Add BAUD_RATE_4800 definition.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2538 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-28 08:50:17 +00:00
sc943313837@gmail.com b82d5744b6 remove iad form uclass structure
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2491 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-17 09:37:39 +00:00
sc943313837@gmail.com 834355c76b change endpoint and class handler
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2475 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-12 16:36:23 +00:00
dzzxzz@gmail.com 34a2c02ac2 fixed the coding style in alarm.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2466 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-03 04:56:53 +00:00
sc943313837@gmail.com 995ebf7299 chang a macro name
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2456 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-28 06:55:06 +00:00
sc943313837@gmail.com 8b338f385b Add a function affirm
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2451 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-26 12:31:22 +00:00
qiuyiuestc@gmail.com 60c27fc4b5 add USB composite and mass storage class features in USB device stack
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2447 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-25 00:02:10 +00:00
bernard.xiong@gmail.com 44eaae8c80 export more symbols of PThread.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2433 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-23 02:40:32 +00:00
dzzxzz@gmail.com 68b7e7c481 fixed the coding style in the components/drivers
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2431 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-22 08:43:40 +00:00
sc943313837@gmail.com b04c308524 Add two function declarations
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2403 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-12 12:07:16 +00:00