Commit Graph

83 Commits

Author SHA1 Message Date
GUI f849afb5ca
[DM/FEATURE] Support hardware mailbox (#9599)
* [DM/FEATURE] Support hardware mailbox
* [MAILBOX/PIC] Add PIC Mailbox drivers.

The mailbox device(s) may be instantiated in one of three equivalent way:

Device Tree node, eg.:

```dts
interrupt-controller@0 {
	interrupt-controller;
	#interrupt-cells = <1>;
};

pic_mailbox@10000 {
	compatible = "rt-thread,pic-mailbox";
	reg = <0x10000 0x100>;
	position = <0>;
	interrupts = <34>;
	peer-interrupts = <35>;
	uid = <0>;
	#mbox-cells = <1>;
};
```
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-25 11:00:04 +08:00
GUI c2545cdd7b
[DM/FEATURE] Support PHY (external) (#9597)
This framework will be of use only to devices that use
external PHY (PHY functionality is not embedded within the controller).

Use in PCIE, USB, HDMI, DP...

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-25 10:23:01 +08:00
GUI 945114fd59
[DM/FEATURE] Support NVME (#9591)
* [DM/FEATURE] Support NVME

1. Support PRP and SGL (>= NVME v1.1) transport.
2. Support MSI/MSI-X for IO queues.
3. Support NVME on PCI.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-24 13:57:37 +08:00
GUI 42a41c696d
[DM/FEATURE] Support SCSI bus (#9592)
* [DM/FEATURE] Support block for SCSI
1. Support SD and CD-ROM.
2. SD will port to UFS and ATA device.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-22 16:59:37 +08:00
GUI c055261177
[DM/FEATURE] Support DMA management (#9682)
1. DMA pool management for platform.
2. DMA engine driver API.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-22 14:11:40 +08:00
GUI f797eccbf1
[DM/FEATURE] Support IIO (Industrial I/O) (#9598)
[DM/FEATURE] Support IIO (Industrial I/O)

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-21 20:44:25 +08:00
GuEe-GUI c424cb8186 [DM/FEATURE] Support simple block layer
1. Disk and blk device management.
2. Support partitions probe auto.
3. Support DFS and user mode fops, ioctl.
4. Add a cmd for blk info.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-20 16:11:10 +08:00
GuEe-GUI 10cac76d3b [DM/FEATURE] Support MFD syscon
MFD (Multifunction device) with System Controller Register Read/Write.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-20 15:53:23 +08:00
zhuzhuzhu bdf4da8ee1
[components][driver]add phy and mdio bus
old phy bus is too simple add phy_bus is not adapt rt_bus framework,so writer a stronger phy bus framework.

here is my commit message:
add mdio bus and phy bus to kernel,the phy bus use rt_bus framewok ,driver writer can write phy_driver first .when mac driver need to use phy they can register phy_device and pjhy_devie will serach for driver which match by uid and mask,if no driver match with the device that you register,phy_bus will return the genphy to you device,the genphy driver is the general driver for phy,so you can use it but it can not support the capcity of chip it may be cause performance is not up to peak
2024-11-19 21:34:03 -05:00
CXSforHPU bb91502465
[drivers] Specifies the name of the drivers driver file
https://github.com/RT-Thread/rt-thread/pull/9420
2024-09-13 17:40:40 -04:00
CXSforHPU 416ec66380
[device] add dev_ prefix for file names 2024-08-23 18:15:09 -04:00
GUI e7cddf3a52
[Feature] Support simple power domain API (#9005)
* [Feature] Power domain for device

1.Support device power on/off.
2.Support attach/detach device.
3.Support power domain driver api.

Signed-off-by: GuEe-GUI <2991707448@qq.com>

* [DM/platform] Enhanced platform bus

1.Add power domain for device.
2.Support `remove` and `shutdown` bus interface.

Signed-off-by: GuEe-GUI <2991707448@qq.com>

---------

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-05-30 15:30:40 +08:00
GUI 6f6b0c3ba0
[DM/feature] Simple NUMA (Non-Uniform Memory Access) (#9000)
For some CPU memory access devices, that the drivers
will find memory and CPU affinity to config device.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-05-28 14:08:33 +08:00
zms123456 4ffcbfef2a
[components][drivers]add ofw support i2c 2024-04-07 09:57:38 -04:00
Shell 83e95bdff4
sync smart & dfs (#8672)
Signed-off-by: xqyjlj <xqyjlj@126.com>
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: xqyjlj <xqyjlj@126.com>
2024-03-28 23:42:56 +08:00
zms123456 6b5058ba5c
[components/drivers]update hwtimer (#8565) 2024-02-29 22:27:38 +08:00
zms123456 e1fdc13288
[component][drivers]add clk framework (#8213) 2023-12-24 19:53:12 +08:00
zms123456 d01dd05a0c
[kernel][dm]适配新的设备驱动模型 (#8075) 2023-10-18 20:50:30 +08:00
ErikChanHub 2f5e4ac27e
【dd2.0】Support the Core API for dd2.0 (#7791) 2023-07-13 14:49:35 +08:00
wusongjie 8aa4366cb2 Drivers: Support Open Firmware API and model of PIC
We support OFW API to replace fdt old API, and add
IRQ, IO, Platform-Bus, CPUs ... OFW node contorl.
To support work with Device Tree or ACPI in drivers
that use IRQ, we make a programmable interrupt
controller driver's model.

Signed-off-by: GuEe-GUI <GuEe-GUI@github.com>
2023-07-05 16:45:16 +08:00
wusongjie 179157f4e1 Components/drivers: support DM device id management
We add the device name and id set api in DM, now driver
could set name like sprintf without know how many devices
it is.
The misc.h and byteorder.h add some macros to developers
that they always use in drivers.

Signed-off-by: GuEe-GUI <GuEe-GUI@github.com>
2023-07-04 13:55:07 +08:00
Man, Jianting (Meco) 704554f1f9
[sensor-v2]将当前sensor框架revert回v1版本并独立为v2 (#7698) 2023-06-18 22:36:53 -04:00
7YZ7 501b22aabe
[HUST CSE] Fix many abnormal symbols in annotations and format code 2023-04-17 22:26:23 -04:00
yangfasheng ff5894922a update rtdevice.h add lcd 2023-02-21 13:12:54 -05:00
guo ecf2d82159
sync branch rt-smart. (#6641)
* Synchronize the code of the rt mart branch to the master branch.
  * TTY device
  * Add lwP code from rt-smart
  * Add vnode in DFS, but DFS will be re-write for rt-smart
  * There are three libcpu for rt-smart:
    * arm/cortex-a, arm/aarch64
    * riscv64

Co-authored-by: Rbb666 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
Tangyuxin f82705db1d
[touch] 调整触摸头文件至 rtdevice.h 中 (#6180) 2022-07-23 11:48:26 +08:00
chenjh d94be14df5 [serial] 增加serial_v2版本的框架和基于stm32的串口驱动 2021-06-08 09:38:43 +08:00
wangqiang 3487f2790a 1. 优化pin.h, sensor.h, rtdevice.h,避免反向包含
2. 优化rt_sensor_close函数,polling模式下不需要操作和rt_pin_irq_enable函数
3. 优化rt_device_register和sensor_polling的LOG信息
4. 修复sensor_polling函数打开设备时的标志错误的问题
2021-03-17 17:42:43 +08:00
wangqiang da0e3ed35d 将sensor.h的头文件放置了一份在driver/include下面,rtdevice.h的头文件也包含了sensor.h,简化应用层调用sensor模块 2021-03-17 15:20:54 +08:00
Meco Man 3c05a4e719 [compoenets] auto & manual formatted 2021-03-08 18:19:04 +08:00
WangQiang 502378cf93 1. 抽象了PHY的设备模型,在components中增加了PHY设备的相关代码以及KCONFIG配置和SConscript脚本
2. 在IMXRT的Libraries中增加了peripherals目录,用于具体型号的设备驱动相关的代码的实现,不应与MCU的平台相关,实现PHY的设备对象中的相关接口。
3. 修改了BSP中的Sconstruct文件,增加了peripherals目录的构建
4. 修改了KEIL环境的SCT文件,用于实现以太网功能
2020-10-12 19:17:00 +08:00
thread-liu 2fcd940b57 [update] add drivers for stm32mp1. 2020-06-23 11:26:11 +08:00
tangweikang b76d3dac8a [components][drivers] change name: encoder -> pulse_encoder 2019-08-30 15:58:52 +08:00
tangweikang f9bad31d57 [components][drivers] change name: capture -> inputcapture 2019-08-21 10:51:02 +08:00
tangweikang 473505053f [components][drivers] add capture driven framework 2019-08-13 20:33:23 +08:00
tangweikang cc565da5a1 [components][drivers] add encoder driven framework 2019-08-09 18:42:14 +08:00
tangyuxin 1cb3c89bce [components][drivers] add hardware crypto device 2019-05-25 10:59:12 +08:00
chenchaoqun@rt-thread.com 049944529f [add] adc framework 2018-11-20 10:08:31 +08:00
armink 2d59fe0310 [DeviceDriver] Add power management device driver. 2018-10-29 09:54:52 +08:00
Bernard Xiong b5202d17fb
Merge branch 'master' into dev 2018-09-21 17:09:46 +08:00
heyuanjie87 bc5a5f89e9 添加新的mtd接口 2018-09-18 18:41:33 +08:00
tangyuxin 324bfc5897 [DeviceDriver][wlan] add new wlan framework 2018-09-15 10:16:04 +08:00
armink dff8a2c513 [DeviceDriver] Add rbb (ring block buffer) data structure. 2018-09-12 08:59:58 +08:00
aozima cdfef48395 [DeviceDrivers] add pwm driver framework. 2018-06-07 21:23:22 +08:00
Bernard Xiong 7c4417855e [DeviceDrivers] Add CPU time 2017-12-24 00:06:29 +08:00
bernard d7087fdd3b [DeviceDrivers] change cmd type.
1. Change 'rt_uint8_t' type of cmd to 'int';
2. Add waitqueue;
3. Split device ipc header files;
2017-10-15 22:56:46 +08:00
Bernard Xiong c442db81fc [DeviceDrivers] Fix the re-work issue in workqueue. 2017-02-27 00:58:11 +08:00
armink aa662dccef [DeviceDrivers]Remove dataqueue waiting_lwm flag 2016-11-02 08:40:30 +08:00
Bernard Xiong ada2c7a3f5 [DeviceDrivers] Add audio header file. 2016-04-05 11:02:04 +08:00
Bernard Xiong 24d089d80a [DeviceDrivers] Remove the tail space 2016-03-01 10:57:25 +08:00