Commit Graph

411 Commits

Author SHA1 Message Date
Bernard Xiong 54c5b83c14 Merge pull request #704 from AubrCool/fix-pin.driv.add.irq.apis
[DeviceDrivers] pin: add irq APIs.
2017-03-18 11:46:27 +08:00
armink afe3b16106 [DeviceDrivers] Enhanced serial DMA rx driver reliability. 2017-03-17 13:25:19 +08:00
yygg c046b78f07 添加 audio设备驱动 2017-03-14 11:07:20 +08:00
Aubr.Cool aa8e5cc412 [components] drivers pin irq change apis 2017-03-14 10:28:29 +08:00
Aubr.Cool 320b116b5f [Components] Drivers: pin add irq apis 2017-03-10 15:07:28 +08:00
Bernard Xiong c442db81fc [DeviceDrivers] Fix the re-work issue in workqueue. 2017-02-27 00:58:11 +08:00
Bluebear233 1e6137268d Update i2c_core.c
修复I2C读写函数,I2C传输失败时返回成功的问题
2017-02-20 11:32:13 +08:00
urey@ez-iot.com 564e7aefce 添加 w25 mtd设备驱动 2017-02-13 19:37:53 +08:00
bernard b4757b950f [DeviceDrivers] Add critical_work for wqueue. 2017-01-31 13:17:04 +08:00
bernard 385792bb68 [DeviceDrivers] Add SDIO_CCCR_REV_3_00 definition. 2017-01-31 13:16:34 +08:00
bernard d692001fd5 [tools] Add KConfig files. 2017-01-31 11:54:12 +08:00
Aubr.Cool 6fa8bfd92a prevent change serial rx bufsz when serial is opened 2017-01-19 14:27:05 +08:00
armink aa662dccef [DeviceDrivers]Remove dataqueue waiting_lwm flag 2016-11-02 08:40:30 +08:00
armink c414bdaac8 [DeviceDrivers]Modify the dataqueue comments. 2016-11-02 08:17:24 +08:00
armink 6fe47a9537 [DeviceDrivers]Improve dataqueue resume suspended thread code. Thanks for @grissiom suggestion. 2016-10-31 15:08:55 +08:00
armink 0970cf03a4 [DeviceDrivers]Reset dataqueue waiting_lwm flag when suspended_push_list is empty 2016-10-31 14:47:48 +08:00
armink bda6543305 [DeviceDrivers]Fix dataqueue irq not resume bug. 2016-10-29 14:35:07 +08:00
armink 7860ea4f83 [DeviceDrivers]Fix dataqueue calculate put and get buffer index bug. 2016-10-19 10:54:22 +08:00
armink f2c31eebb5 [DeviceDrivers]Fix dataqueue's bug when push data is timeout the lwm flag isn't reset. 2016-10-19 10:49:42 +08:00
armink 270285217d [DeviceDrivers]Make sure rt_sfud_flash_probe device must be SPI device. 2016-10-14 22:51:18 +08:00
armink a4bc38ad6b [DeviceDrivers]Update SFUD library to lastest version. 2016-10-14 22:48:36 +08:00
armink b2e14f7641 [DeviceDrivers]Modify SFUD's config for suitable more compilers. 2016-10-10 20:26:21 +08:00
armink 32bf9e29b7 [DeviceDrivers]Change SFUD 'sf' command tips. 2016-10-10 20:10:41 +08:00
armink 1d71f58350 [DeviceDrivers]Add SPI flash probe and delete function to SFUD driver. 2016-10-10 10:24:30 +08:00
armink 16dad06fc7 [DeviceDrivers]Add SFUD(Serial Flash Universal Driver) SPI Flash driver for using RTT device. It makes RT-Thread support more type SPI Flash. 2016-10-09 09:06:01 +08:00
Bernard Xiong 99481cd0ac [DeviceDrivers] uart configure issue.
uart configure shall not been performed if uart is not open.
2016-06-13 13:31:13 +08:00
Bernard Xiong 07c0e13060 Merge pull request #632 from armink/master
Improve serial DMA rx mode. #628
2016-05-20 14:26:23 +08:00
Bernard Xiong c5949c2736 [DeviceDrivers] Update SPI flash drivers. 2016-05-20 14:07:32 +08:00
Bernard Xiong ac3af54a7e [DeviceDrivers] Use PBUF_POOL in enc28j60 drivers.
patched by FH.
2016-05-20 12:22:55 +08:00
Bernard Xiong f005d963e2 [DeviceDrivers] Add more baud rate in serial. 2016-05-20 12:22:16 +08:00
Bernard Xiong 02a5cebc6d [DeviceDrivers] Add MMC/SD change support.
Add MMC/SD change support, which patched by FH.
2016-05-20 12:20:35 +08:00
armink c3da9dda7b [DeviceDrivers] Add fifo mode to serial DMA rx when serial->config.bufsz != 0. 2016-05-14 11:43:06 +08:00
armink 4c9b77ded6 [DeviceDrivers]Fix dma_transmit callback parameter type error. #628 2016-05-11 13:34:18 +08:00
Bernard Xiong a3daa62151 [DeviceDrivers] Add RT_MTD_EECC_CORRECT code in MTD nand. 2016-04-18 13:56:38 +08:00
gbcwbz 0d63eb5f6d fix hardfault when RT_CAN_USING_BUS_HOOK is enabled in bsp/stm32f10x
function `rt_pin_write` is invoked by  function `can_bus_hook`, and it should to be initialized by gpio.c.
but gpio.c was not added in SConscript
2016-04-14 23:47:32 +08:00
Bluebear233 2b1983992f Update serial.c
fix reset serial receive interrupt flag when close serial
2016-04-09 20:58:10 +08:00
Bernard Xiong 048ffb481a [DeviceDrivers] Add umount operations in SDCard block device. 2016-04-05 11:11:10 +08:00
Bernard Xiong 8043186020 [DeviceDrivers] Add audio.h header file. 2016-04-05 11:10:08 +08:00
Bernard Xiong ada2c7a3f5 [DeviceDrivers] Add audio header file. 2016-04-05 11:02:04 +08:00
Bernard Xiong 3748008651 [DeviceDrivers] Add card remove operations in MMC/SD. 2016-04-05 11:01:49 +08:00
Bernard Xiong 24d089d80a [DeviceDrivers] Remove the tail space 2016-03-01 10:57:25 +08:00
Bernard Xiong eefd87284c [DeviceDrivers] fix the compiling warning in MMC/SD 2016-03-01 10:55:16 +08:00
Bernard Xiong 9d46ae69a7 [DeviceDrivers] fix the poll_rx issue in serial when there is no data. 2015-11-10 10:24:35 +08:00
Bernard Xiong 44ad3d1cb9 [DeviceDrivers] Remove open_flag assertion. 2015-09-24 20:46:59 +08:00
Bernard Xiong 342e8d688d Merge pull request #546 from heyuanjie87/ForPullRequest
[DeviceDrivers] Add hardware timer framework
2015-09-09 22:30:45 +08:00
heyuanjie87 984a7ba051 修改说明文档 2015-09-09 10:26:42 +08:00
weety f327e7c98f Delete unused file. 2015-09-07 15:03:44 +08:00
heyuanjie87 efc1b058ac 添加说明文档 2015-09-07 13:27:05 +08:00
heyuanjie87 d19f424909 简化操作接口 2015-09-06 15:05:47 +08:00
weety ebea51e8a8 Add more spi mode. 2015-09-04 22:47:48 +08:00
weety b71cb4c09d Add dm365 porting. 2015-09-04 12:30:20 +08:00
heyuanjie87 c84887d021 加入定时器设备 2015-09-02 22:00:24 +08:00
quintin 23b5fe5239 fix DMA tx mod tx_dma->activated flag init bug. 2015-08-31 14:57:01 +08:00
Bernard Xiong 0690980fb6 Merge pull request #539 from SchumyHao/master
add w25q80 support to spi flash
2015-08-24 10:51:03 +08:00
Bernard Xiong e029f14b46 [DeviceDrivers] fix sd->drv issue in sdio 2015-08-09 11:23:16 +08:00
aozima 3ad3066c4b fixed rt_can_close issues. 2015-07-21 17:04:22 +08:00
aozima defa6f37ff [DeviceDriver] update CAN baudrate enum. 2015-07-08 11:26:20 +08:00
Aubr.Cool 7051f01f48 [DeviceDriver]can add bus_hook 2015-07-07 12:06:24 +08:00
Aubr.Cool 5f860e8f94 [DeviceDriver]add missing hdr define 2015-07-07 12:01:56 +08:00
Aubr.Cool 0f20bf12fd [DeviceDriver]correct can critical problems 2015-07-07 11:50:39 +08:00
BernardXiong 2ca3ceab70 [DeviceDrivers] code cleanup for CAN 2015-07-06 18:24:56 +08:00
BernardXiong 91d866d81a [DeviceDrivers] Use mutex to lock can_open/close 2015-07-06 18:11:46 +08:00
BernardXiong 1488568801 [DeviceDrivers] code cleanup for CAN driver and fix some critical issue 2015-07-06 10:38:07 +08:00
Aubr.Cool 9cbf30a767 correct can hdr defines 2015-07-04 00:25:05 +08:00
Aubr.Cool 67b6b30e88 add rtthread.h include for can.h 2015-06-30 14:48:07 +08:00
Aubr.Cool b3f0737a99 correct can compiler error and warnings 2015-06-30 14:12:30 +08:00
weety 28f2fbd4cc 1.Fixed sdmmc cmd retries issue; 2015-06-22 21:28:42 +08:00
weety 41597e8793 Add mmc and emmc drivers. 2015-06-20 23:23:32 +08:00
Aubr.Cool c3e4fd079c correct can hdr read error 2015-06-16 08:49:25 +08:00
Aubr.Cool 9ea3219ab7 Add can driver doc 2015-05-15 11:34:43 +08:00
Aubr.Cool c7d703158a Add SConscript for can 2015-05-15 08:00:14 +08:00
Aubr.Cool 8e29e3d98b add author information 2015-05-15 07:58:21 +08:00
Aubr.Cool eb56b832ef Add Can Drv 2015-05-14 16:52:48 +08:00
BernardXiong 2f5c5b676d [DeviceDrivers] Add GD25Q flash id in w25qxx.c 2015-05-13 21:28:02 +08:00
Bernard Xiong 77b5098ae2 [DeviceDriver] Add more exported symbols for completion. 2015-05-11 12:33:15 +08:00
Bernard Xiong 452432a15b [Sensor] Fix the call back issue in sensor. 2015-05-04 20:44:47 +08:00
Bernard Xiong 6459839f28 Add extern declaration for C++. 2015-04-24 11:48:25 +08:00
SchumyHao 88936f0836 format 2015-04-16 21:08:07 +08:00
SchumyHao 7d341d4e6e add w25q80 support to spi flash 2015-04-16 21:06:54 +08:00
ItsEddy 16bf2e7255 [DeviceDriver] Fix inverted logic on SConscript
Remove dataqueue/pipe if not enable RT_USING_HEAP, supply the missing `not`.
2015-04-04 02:17:26 +08:00
Bernard Xiong 40db28cfec [DeviceDriver] Remove dataqueue/pipe if not enable RT_USING_HEAP 2015-03-31 06:17:49 +00:00
Aubr.Cool 5d6ac1ed37 correct rx_fifo init size error 2015-03-26 13:26:13 +08:00
Aubr.Cool 7caabd2b7a mv device ctl cmd macros from serial.h to rtdef.h 2015-03-26 08:40:36 +08:00
KodakWang 29fd52dfb8 Update completion.c
fix: completion wait after, maybe can't clean the flag.
2015-03-24 15:54:08 +08:00
Bernard Xiong 827ff71933 Merge pull request #435 from AubrCool/fix-pinregisternameproblems
[BSP] Correct pin register name problems
2015-03-23 20:55:34 +08:00
Aubr.Cool 6dc5851c55 Correct pin register name problems 2015-03-23 09:38:09 +08:00
Bernard Xiong 767c16d596 [USBH] fix the spelling wrong 2015-03-19 08:52:28 +00:00
Bernard Xiong 3462537bdd [DeviceDrivers] Update SConcript file for sensor code 2015-02-01 08:50:54 +00:00
bernard 94e5d1e5e6 [DeviceDrivers] Add MPU6050 and BMI055 sensor. 2015-02-01 16:17:06 +08:00
Bernard Xiong 19ee2c7e09 Merge pull request #416 from bright-pan/master
[Driver/ringbuffer]: Fix put_force bug
2015-01-26 11:14:03 +08:00
Bright Pan 2d67fe6565 [Driver/ringbuffer]: Fix put_force bug
OXape reports: http://www.rt-thread.org/phpBB3/topic3939.html
          driver/ringbuffer: when data length is bigger than space length
          for rb, the read_index in rb is not update.
    When length > space, update the read_index, the bug can be fix, and
          works fine.
2015-01-23 13:27:52 +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 f6ed27b863 [DeviceDrivers] Fix sensor_poll issue. 2015-01-04 20:01:52 +08:00
bernard 06454fd484 [DeviceDrivers] change tab to space in sensor. 2015-01-04 13:14:53 +08:00
bernard a6251a439e Use open_flag for serial device. 2015-01-04 12:25:20 +08:00
bernard 46bca6f84a Add C programming language APIs. 2015-01-04 12:24:46 +08:00
bernard 58163f49e0 [DeviceDriver] change the name style of method of C++ code; Add raw mode for sensor. 2014-12-31 22:33:54 +08:00
bernard c26b999360 Fix the sensor list issue. 2014-12-01 12:22:17 +08:00
aozima 92fac29f70 update RW009 driver: add softAP support. 2014-11-15 16:11:24 +08:00
bernard 6281ab2bbe [DeviceDriver] Remove i2c_core_lock. 2014-11-01 16:38:53 +08:00
Bernard Xiong 0fa10629f7 [Sensor] code cleanup 2014-11-01 15:52:25 +08:00
Bernard Xiong 18cd95688d [Drivers] Add sensor framework 2014-11-01 09:09:52 +08:00
aozima 3c99a5bf8d update RW009 wifi driver. 2014-09-24 12:08:01 +08:00
aozima 03496f0700 update RW009 driver. 2014-09-08 16:59:52 +08:00
heyuanjie87 8a44c7dbfb [Serial] BUG Fix: data be send twice in mode that other than polling 2014-09-01 23:43:50 +08:00
aozima 69d089cac0 Update SConscript: add spi to include path. 2014-08-29 21:53:28 +08:00
Bernard Xiong 0ad17f462d [DeviceDrivers] Add modification under Linux 2014-08-04 16:40:40 +08:00
bernard 5397e18c56 [DeviceDrivers] Fix compiling warning. 2014-08-03 14:29:46 +08:00
aozima 0fc1ac6189 add more SPI device driver. 2014-07-31 16:58:43 +08: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
weety d5b0c94552 [USB]fix rt_usbd_set_config() BUG which set the USB device to configuration state before enumerating the device. 2014-04-06 21:02:23 +08:00
bernard 306e1ac43f [DeviceDrivers] Add watchdog driver frame work 2014-03-04 14:32:56 +08:00
shaolin 020e95d91b Merge branch 'master' of https://github.com/RT-Thread/rt-thread 2014-03-04 09:14:48 +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
Grissiom f615c1e92d Revert "Merge pull request #241 from bright-pan/master"
This reverts commit 5aeedc4f3a, reversing
changes made to 3d80e414ff.

This merge breaks every uart driver in all BSPs. @bright-pan , is there
any way to get this done without breaking existing code?
2014-03-03 12:07:13 +08:00
Bright Pan 9ab853aca3 Fix rt_serial_control() bug for customized command and indent the code 2014-02-28 18:22:50 +08:00
Bright Pan 10c4b6263f Use DeviceDriver ringbuffer.
Add hardware flow support.
Use new struct serial_ringbuffer.
2014-02-26 11:06:14 +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
Bernard Xiong ec7fada97e [Drivers] Fix the block start issue in MTD Nand operators 2013-12-30 18:14:09 +08:00
bernard 42ae1c634d [Drivers] Add more debug utilities in MTD nand 2013-12-29 22:27:33 +08:00
Grissiom 6bb2c0f2ea Revert "serial: set the errno if and only if in thread context"
This reverts commit 07bd09fc0f.
The validation of the context is done with in `rt_set_errno`. So it's
safe to call it here.
2013-10-25 21:23:15 +08:00
Grissiom 07bd09fc0f serial: set the errno if and only if in thread context
The errno is associated with threads. It will crash the thread if we set
it in interrupt context.
2013-10-25 20:31:02 +08:00
Grissiom 21fb9a0bac serial: do onthing if the size of read/write is zero
Return early if the size is 0 as there is nothing to do.
2013-10-25 20:15:08 +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
joyhope 281e55e973 notification function: rt_err_t (*tx_complete)(rt_device_t dev, void
*buffer) with buffer pointer
2013-09-24 20:57:00 +08:00
Grissiom 246bdde8de dev/portal: fix bug in portal callback forwarding
When forwarding rx/tx callback from the underlaying device(pipe), the
"dev" argument should be the portal. So the portal callback could think
itself as called.
2013-08-22 16:43:06 +08:00
Grissiom 824261d3bc dev/portal: add checks on oflag
It does not make sense to open portal without a flag. One should open a
portal with RT_DEVICE_OFLAG_RDWR in most cases.
2013-08-22 15:12:00 +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 7e68096a88 dev/pipe: make pipe a type of device
Pipe have many differences with char device. The main difference is
altough pipe have both read and write, it is unidirectional in nature.
2013-08-20 10:16:55 +08:00
Grissiom 0340300f89 dev/pipe: cleanup 2013-08-19 16:25:17 +08:00
Grissiom e8cca2315a dev/pipe: call rx_indicate the time we resume reader
Some reader(FinSh again) would like to block on a semaphore which is
released in rx_indicate. So we should invoke rx_indicate in
_rt_pipe_resume_reader.
2013-08-19 15:57:59 +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 Xiong a431a25699 Merge pull request #135 from reynoldxu/K60Fxxxx
K60 fxxxx
2013-07-25 03:55:52 -07:00
reynoldxu 10c75c3dc6 remove a var for INT_TX. 2013-07-25 10:18:33 +08:00
reynoldxu 8f0fffc132 fix a bug in rt_hw_uart_init() where u CAN NOT init some feature. 2013-07-24 18:34:07 +08:00
bernard a124e7bd22 add initialization debug code 2013-07-24 07:33:48 +08:00
yiyue.fang 03cf76e7ef reformat the coding style in usbdevice/core/core.c 2013-06-29 10:32:27 +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
Bernard Xiong 98c8a23e94 Add component initialization. 2013-06-23 07:48:42 +08:00
heyuanjie87 02869d7e67 udisk can be eject 2013-06-15 23:02:50 +08:00
Grissiom b02993c989 usbdevice/core: cope with some buggy drivers on USB_MSG_DATA_NOTIFY
Some driver will emit USB_MSG_DATA_NOTIFY before the USB get configured.
Filter out those events.
2013-06-11 11:50:05 +08:00