Commit Graph

170 Commits

Author SHA1 Message Date
StackYuan a582c0cc31 [fix] NXP bsp for RT-Thread 5.1.0 fixed up. 2024-03-19 08:13:00 -04:00
LaterComer 82bb104f65
fix(serial_v2): tx_fifo->rb.buffer_ptr not init when RT_DEVICE_FLAG_DMA_TX and RT_SERIAL_TX_BLOCKING
为什么提交这份PR (why to submit this PR)
serial_v2驱动框架,rt_serial_tx_enable()函数,在 DMA阻塞发送(RT_DEVICE_FLAG_DMA_TX and RT_SERIAL_TX_BLOCKING) 的时候,使用rt_malloc分配了tx_fifo内存,但是并未对tx_fifo->rb.buffer_ptr指针进行初始化(rt_malloc不会自动初始化内存),因此可能导致buffer_ptr是一个随机指针。但是rt_serail_write()函数需要根据tx_fifo->rb.buffer_ptr是否为RT_NULL来判断是调用_serial_fifo_tx_blocking_nbuf()还是_serial_fifo_tx_blocking_buf()。

由于tx_fifo->rb.buffer_ptr可能是一个随机值(不一定为RT_NULL=0),导致RT_DEVICE_FLAG_DMA_TX and RT_SERIAL_TX_BLOCKING模式下调用了_serial_fifo_tx_blocking_buf(),但是rb没有真正开辟内存空间,导致内存异常

你的解决方案是什么 (what is your solution)
rt_serial_tx_enable(),在DMA阻塞发送分支下,对tx_fifo->rb.buffer_ptr进行初始化,赋值为RT_NULL。
2024-02-21 00:29:53 -05:00
zms123456 d01dd05a0c
[kernel][dm]适配新的设备驱动模型 (#8075) 2023-10-18 20:50:30 +08:00
Shicheng Chu e2c031643c
[include][dbg]update: no longer use RT_DEBUG_LOG in rtdebug.h (#7750) 2023-06-29 11:24:25 -04:00
zhkag 33f550cb65
[Kernel] message 可以返回消息的实际大小 (#7709) 2023-06-21 18:22:42 +08:00
hust202013232 9dd0d41251
[components][rndis.c] add safety checking after allocating memory 2023-05-12 01:37:42 -04:00
kkangdom 3cf07f1a62
[components][rndis.c] add a checkout procedure after malloc to make sure allocating successfully (#7460) 2023-05-09 10:02:11 +08:00
ourea1429 085ded8eef
[winusb.c] add checking after allocating memory for variable winusb_device to make sure allocae is successful 2023-04-28 14:59:42 +01:00
7YZ7 501b22aabe
[HUST CSE] Fix many abnormal symbols in annotations and format code 2023-04-17 22:26:23 -04:00
Meco Man 0f461e870c [errno code][-RT_ERROR] fix that use RT_ERROR without - 2023-03-20 00:06:16 -04:00
Meco Man f58d3c5200 rt_device_write/read return data type as rt_ssize_t
rt_ssize_t can give negative error code, which follows the unix style correctly
2023-02-07 21:43:57 -05:00
Meco Man 9bc68d26a4 format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
kylongmu 0b58637a49
USB CDC驱动在win11下无法识别,看了微软的描述修改子类后正常 (#6783)
这是微软关于此问题的链接:
 https://learn.microsoft.com/zh-cn/windows-hardware/drivers/usbcon/usb-driver-installation-based-on-compatible-ids#usbsersys-installation
Windows 10 及更高版本
从 Windows 10 开始,Usbser.inf 已添加到 %Systemroot%\INF 目录,该目录加载 Usbser.sys 作为设备堆栈中功能设备对象 (FDO) 。 如果设备属于通信和 CDC 控制设备类, Usbser.sys 加载。 无需编写自己的 INF 来引用驱动程序。 驱动程序是基于与包含在 Windows 中的其他 USB 设备类驱动程序相似的兼容 ID 匹配来加载的。

USB\Class_02

USB\Class_02&SubClass_02

如果要自动 加载Usbser.sys, 在设备描述符中将类代码设置为 02,将子类代码 设置为 02。 有关详细信息,请参阅 USB 通信设备类。 使用此方法时,无需为设备分发 INF 文件,因为系统使用的是 Usbser.inf。
如果设备指定类代码 02,但子类代码值不是 02,则 Usbser.sys不会自动加载 。 即插即用管理器尝试查找驱动程序。 如果找不到合适的驱动程序,则设备可能未加载驱动程序。 在这种情况下,你可能需要加载自己的驱动程序或编写引用另一个内置驱动程序的 INF。
2023-01-02 22:25:54 -05:00
Man, Jianting (Meco) 99bdf978d7
[rtdef] use lower-case to define attributes (#6728)
* [rtdef] rename RT_WEAK attribute as rt_weak

* [rtdef] rename RT_USED attribute as rt_used

* [rtdef] rename RT_SECTION attribute as rt_section

* [rtdef] rename ALIGN attribute as rt_align

* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
myshow2258 87be8fdba8 Modified bsp/stm32/libraries/HAL_Drivers/drv_usbd.c
Modified   components/drivers/usb/usbdevice/class/cdc_vcom.c
修复cdc在v1v2的serial框架下接收发送错误的问题.stm32下usbd添加更多的ep_id,以支持复合设备.
2022-11-14 23:47:49 -05:00
BreederBai c28b79b7d7
硬件驱动(VCOM):增加获取USB虚拟串口连接状态的接口 (#5881)
* 硬件驱动(VCOM):增加获取USB虚拟串口连接状态的接口
2022-04-28 20:30:51 +08:00
blta 2d08dca65a [USB] fix stall bug on control transfers 2022-04-20 14:33:12 +08:00
thewon86 f5b0bfd3f4 uniform code writing-disable interrupt 2022-04-20 14:22:43 +08:00
guozhanxin 08bebb40ba [usb audio] fix building error. 2022-04-20 09:10:52 +08:00
Meco Man f89a162ea3 [core] 使用rt_memcpy rt_memset代替memcpy memset 2022-01-09 00:23:18 +08:00
nongxiaoming 57165329ac [components][usb] fix compile warning in cdc_vcom.c 2021-12-30 01:38:16 +08:00
tangyuxin a77cc81876 [components][drivers] format file 2021-12-01 14:41:13 +08:00
mazhiyuan f04941c951 [cdc_vcom.c]adapt to both v1 and v2 of serial 2021-10-14 11:42:05 +08:00
mazhiyuan bc5744b1ba 修复cdc_vcom.c中的一些编译问题 2021-10-14 10:58:14 +08:00
mazhiyuan 0a7280f161 修复开启RT_USING_DEVICE_OPS时ecm.c报错 2021-10-14 10:36:38 +08:00
guozhanxin 48bf53b6e0 【完善】uac class, 去除 GPL 代码 2021-04-21 16:39:14 +08:00
dillon-min 247df39bfe
Merge branch 'master' into comp 2021-03-16 20:15:43 +08:00
Dillon Min effcee25b7 component: driver: usb: Add usb interface string(iInterface) setting
To make compositive usb device string more reansonable, not all devices
just show same "RTT Composite Device" on windows device manager.

add a interface rt_usbd_device_set_interface_string to set respective
interface string.

Signed-off-by: Dillon Min <dillon.minfei@gmail.com>
v1 -> v2: remove all tabs to space, to match rt-thread coding style
2021-03-11 17:29:41 +08:00
Meco Man 3c05a4e719 [compoenets] auto & manual formatted 2021-03-08 18:19:04 +08:00
David Lin f086765401
Update cdc_vcom.c 2020-11-21 15:37:45 +08:00
David Lin b10c9b7b63
Update hid.c 2020-11-21 15:36:56 +08:00
David Lin cc6b6a6ee3
Update hid.c 2020-11-21 15:36:26 +08:00
David Lin da464e6cc3
Update mstorage.c 2020-11-21 15:35:53 +08:00
David Lin 107b2063c1
Update winusb.c 2020-11-21 15:32:09 +08:00
David Lin f273e52614
Update audio_speaker.c 2020-11-21 15:30:12 +08:00
David Lin b73775da85
Update audio_mic.c 2020-11-21 15:29:45 +08:00
David Lin 626e8537f0
[components / drivers]update audio_mic.c
1. delete '#include <rtservice.h>', because rtthread.h had include rtservice.h;
2. delete '#include <rtthread.h>', because rtdevice.h had include rtthread.h.
2020-11-21 15:25:27 +08:00
Bernard Xiong 08688f7095
Merge pull request #3712 from egbert-h/master
mstorage.c: fix bug in device descriptor that MAC OS enumeration failed.
2020-09-27 08:23:14 +08:00
tangweikang b2a9b8308e [components][usb] word error : PROERTY -> PROPERTY 2020-08-04 11:01:22 +08:00
hphuang 0bfb881168 merge latest usb class with workaround 2020-07-03 11:13:24 +08:00
hphuang 6cafbf07ce mstorage.c: fix bug in device descriptor that MAC OS enumeration failed. 2020-06-22 15:25:29 +08:00
Wayne Lin f0e4009c30 Fix rt_hw_inputcapture_isr public function name in header file.
Fix miss-break in HWTIMER_CTRL_INFO_GET case.
2020-05-20 16:04:31 +08:00
Wayne Lin 5d65fe074f Merge branch 'master' of https://github.com/rt-thread/rt-thread into rtt_issues 2020-05-15 09:41:27 +08:00
Wayne Lin 39431f5a70 Rename usbd and usbh source files for IAR building issue. 2020-04-30 15:47:42 +08:00
hphuang 9d374f873c mstorage.c: fix the issue that _read_capacity() returns the wrong last valid address of storage medium 2020-04-28 19:07:08 +08:00
Bernard Xiong 0f57faa591
Merge pull request #3484 from qz721/master
修复USB不能正常识别composite设备的bug
2020-03-30 21:20:02 +08:00
qz721 a49ddaef96
修复USB不能正常识别composite设备的bug 2020-03-26 16:24:10 +08:00
David Lin 10e0f28754
Update cdc_vcom.c 2020-03-21 20:54:13 +08:00
David Lin 3679dfa07e
Update ecm.c 2020-03-21 20:42:55 +08:00
Cliff Chen 1c68bd9d3c Support msc mode automatic switching
Signed-off-by: Cliff Chen <cliff.chen@rock-chips.com>
2020-03-16 10:50:34 +08:00