summaryrefslogtreecommitdiff
path: root/components/drivers/include
AgeCommit message (Collapse)Author
2024-09-29[doxygen][rsoc]add dac driver example for doxygen (#9483)CYFS
2024-09-26[doxygen]add rtc devices example for doxygenCYFS
2024-09-25[doxygen]add dac driver example for doxygenCYFS
2024-09-25[doxygen][rsoc] add adc driver example for doxygen (#9465)CYFS
* [doxygen] add adc driver example for doxygen * add data structures
2024-09-19[FEATURE/PIC] support PIC cancel (only in debug)GuEe-GUI
PIC may free because some wrongs in debug. We should remove in PIC list or there are some undefined behavior will happen. Signed-off-by: GuEe-GUI <[email protected]>
2024-09-15[doxygen] add driver example for doxygen (#9446)Supper Thomas
2024-09-13[drivers] Specifies the name of the drivers driver fileCXSforHPU
https://github.com/RT-Thread/rt-thread/pull/9420
2024-09-13[FEATURE/OFW] add address reverse/translate for DMA/CPU's addressGuEe-GUI
DMA and CPU address view is different, we need to convert them: +--------+ +--------+ +---------+ +--------+ | | | | | | | | | CPUs | | DEV0 | | IOMMU <----+ | DEV1 | | | | | | | | | | +----+---+ +----+---+ +----+----+ | +----+---+ | | | | | 0x200000 | 0x1000 | 0x1000 | | 0x8000 | | | | | | +-------------+-----------+ +----------+ | | +--------v----------------------------------------------------+ | | | Address BUS | | | +-------------------------------------------------------------+ Signed-off-by: GuEe-GUI <[email protected]>
2024-09-13[FEATURE/FDT] Add bootargs select in earlyGuEe-GUI
Maybe use for memory/DMA buffer init before ofw_node unflatten. Signed-off-by: GuEe-GUI <[email protected]>
2024-09-13[FIXUP/OFW] rt_ofw_foreach_node_by_compatible argsGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2024-09-11[DM/MISC] Add error no for ptrGuEe-GUI
When the driver request a API gets RT_NULL which return value is ptr, they could not know why get a RT_NULL. some API return RT_NULL, is not error internal maybe, it just not supported for this platform, but the driver still could work ok, the API can return (RT_NULL + -RT_EEMPTY) to driver. on the other hand, the driver can do more behaviors by error no. When the API return the -RT_EBUSY, driver can wait for a moment and retry. When the API return the -RT_ENOSYS, driver can try the next mode or request's name. Signed-off-by: GuEe-GUI <[email protected]>
2024-09-10[components][sensor]增加电源检测类型CYFS
2024-09-06[DM/Feature] Basic PCI/PCIe (Peripheral Component Interconnect Express) busGuEe-GUI
PCI/PCIe have better performance and more devices support, such as NVMe, GPU, Powerful NIC (Like RDMA). PCI/PCIe can access control by IOMMU that the virtualiztion and userspace driver will more safety. PCI/PCIe device could hot plugging, no design modifications SoC required, PCI/PCIe on Embedded SoC is popular now. We make a simple framework to support them. Feature Lists: 1.PCI INTx: the INT[A-D] pin IRQ for legacy PCI, work with platform PIC. 2.MSI/MSI-X: the message write IRQ for PCIe, work with platform's PIC. 3.PME: we only support the D0, D1, D2, D3HOT, D3COLD init by framework. 4.Endpoint: a simple EP framework for PCI FPGA or NTB function. 5.OFW: we only support work on OFW SoC, ACPI support in the future maybe. Host controller: 1. Common PCI host controller on ECAM. 2. Generic PCI host controller on ECAM. Signed-off-by: GuEe-GUI <[email protected]>
2024-09-06[DM] Extended drivers MISC interfaceGuEe-GUI
1. RT_FIELD_PREP: prepare a bitfield element. 2. RT_FIELD_GET: extract a bitfield element. 3. rt_offsetof: member offset of a struct 4. rt_upper_32_bits: high 32 bits of value. 5. rt_lower_32_bits: lower 32 bits of value. 6. rt_upper_16_bits: high 16 bits of value. 7. rt_lower_16_bits: lower 16 bits of value. 8. rt_max_t: fix type of max(...). 9. rt_ilog2: integer logarithm base 2. Signed-off-by: GuEe-GUI <[email protected]>
2024-08-23[device] add dev_ prefix for file namesCXSforHPU
2024-08-19feat: add ISR safe completion APIShell
Since the completion is used to sync with ISR mostly, we should set the default semantic to ISR-safe. So most user will be happy and don't see any weird behavior in their codes. Changes: - Added `rt_completion_wait_noisr` and `rt_completion_wait_flags_noisr` functions in `completion.h`, `completion_comm.c`, `completion_mp.c`, and `completion_up.c`. - The new APIs allow waiting for completions in non-ISR contexts while ensuring thread context safety. - Existing documentation and comments were updated to clarify usage contexts and emphasize restrictions on ISR usage. Signed-off-by: Shell <[email protected]>
2024-07-19[compoents][pm]The device is registered and uninstalled by linked listwdfk-prog
2024-07-15[libcpu/rv64] feat: unify tick.cShell
The changes unify the tick.c implementations for all risc-v64 architectures, leveraging the CPUTIME feature. This refactoring was necessary to streamline the codebase, and ensure consistent timer handling across different platforms. Changes: - Updated `Kconfig` in `bsp/cvitek/cv18xx_risc-v` to fix formatting issues. - Updated .config for BSPs to update `CPUTIME_TIMER_FREQ` - Updated header of for API `riscv_cputime_init` - Initialized riscv timer on `rt_hw_tick_init` - Refactored `tick.c` and `tick.h` in `libcpu/risc-v/t-head/c906` and `libcpu/risc-v/virt64`: - Replaced direct use of `rdtime` with `clock_cpu_gettime`. - Removed redundant timer frequency definitions. - Added static assertions to check the value of `CPUTIME_TIMER_FREQ`. - Initialized `tick_cycles` based on `CPUTIME_TIMER_FREQ`. - Integrated `ktime` support for tick initialization. Signed-off-by: Shell <[email protected]> Reviewed-on: https://github.com/RT-Thread/rt-thread/pull/9164 Reviewed-by: Chen Wang <[email protected]>
2024-06-27[drivers][serial V1]poll tx 增加异常退出机制wdfk-prog
2024-06-24[components][ringbuffer]修复编译错误wdfk-prog
2024-06-23[components][ktime]support period ktime timeout and multiple ktimer_hrtimer ↵zms123456
(#8972) * support period time * enable multiple ktimer * mv set delay_cnt to hrtimer_start * add ktime debug info * change current_irq_begin to local var * fix bug: setting current timer and setting timeout in driver aren't atomicly * create->init * refactoring ktime
2024-05-31[DM/feature] Implement PIC irq state { get; set } (#9006)GUI
* [DM/feature] Implement PIC irq state { get; set } There are some common state for irq: 1. Pending: IRQ was triggered, but software not ACK. 2. Active: IRQ was ACK, but not EOI. 3. Masked: IRQ was masked or umasked. Signed-off-by: GuEe-GUI <[email protected]> * [DM/pic] Support IRQ state { get; set } for ARM GICv2/v3 Signed-off-by: GuEe-GUI <[email protected]> --------- Signed-off-by: GuEe-GUI <[email protected]>
2024-05-30[Feature] Support simple power domain API (#9005)GUI
* [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 <[email protected]> * [DM/platform] Enhanced platform bus 1.Add power domain for device. 2.Support `remove` and `shutdown` bus interface. Signed-off-by: GuEe-GUI <[email protected]> --------- Signed-off-by: GuEe-GUI <[email protected]>
2024-05-29[components][drivers][include][phy] add one more parameter for mulitiple physJiading Xu
- add parameter phy to specify multiple-phy instance Signed-off-by: Jiading Xu <[email protected]>
2024-05-28[DM/feature] Simple NUMA (Non-Uniform Memory Access) (#9000)GUI
For some CPU memory access devices, that the drivers will find memory and CPU affinity to config device. Signed-off-by: GuEe-GUI <[email protected]>
2024-05-28 [PIC] Make affinity helper interface (#8995)GUI
* [PIC] Make affinity helper interface Signed-off-by: GuEe-GUI <[email protected]> * [PIC/GIC] Fixup GIC affinity init GICv2 is not support if current CPU is not startup, but RT-Thread SMP is startup after the devices init in the `main` thread. This patch fixup the cpumask to init once and check the init status in affinity interface. Signed-off-by: GuEe-GUI <[email protected]> --------- Signed-off-by: GuEe-GUI <[email protected]>
2024-05-28[OFW] Support ID map interface (#8994)GUI
The OFW map id is always use in DMA, PCI, IOMMU bus system to find the device identity. this is a access interface. Signed-off-by: GuEe-GUI <[email protected]>
2024-05-27[components][drivers][sd] add uhs-i mode support to sd driverFan YANG
- added SDR50, SDR104 and DDR50 support to SD driver Signed-off-by: Fan YANG <[email protected]>
2024-05-26[components][drivers][mmc] add HS400 support to mmc driverFan YANG
- added HS400 supprt (both eMMC5.0 and eMMC5.1 flavor are supported) Signed-off-by: Fan YANG <[email protected]>
2024-05-21[components][driver]add isr statistics (#8955)zms123456
add isr statistics
2024-05-11[components][drivers]fix compiler error in serial dm (#8927)zms123456
fix compiler error in serial dm
2024-05-08[ipc] support of lockless rt_completion (#8887)Shell
* [ipc] lockless rt_completion implementation The new rt_completion implemented by lockless algorithm can improve timer resolution for up to ~12%, compare to sem IPC. Signed-off-by: Shell <[email protected]> * fixup: error * remove useless changes --------- Signed-off-by: Shell <[email protected]>
2024-04-29[i2c] adjust the timing for I2C initializationLZerro
2024-04-29[components][drivers] added sensor device lookup functionyiyi
2024-04-13[bsp][renesas] Add HMI rw007 initialization configuration by defaultYuqiang Wang
2024-04-09[drivers/serial] Introduce hooker for TTY (#8733)Shell
In this patch, a hook list has been introduced to address the concerns regarding coupling issues arising from modifications to the serial code for integrating TTY logic. Signed-off-by: Shell <[email protected]>
2024-04-07[components][drivers]add ofw support i2czms123456
2024-04-01[components][drivers] fix posix tty, and add more baudrate (#8683)zms123456
* serial-tty fix * v2
2024-03-28sync smart & dfs (#8672)Shell
Signed-off-by: xqyjlj <[email protected]> Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2024-03-23[pin] pin_read/write rt_uint8_t to rt_ssize_tkk
2024-02-29[components/drivers]update hwtimer (#8565)zms123456
2024-02-29[component][drivers]add pinctrl/pin-irqchip (#8383)zms123456
2024-02-29[components][drivers]add pic-gic (#8388)zms123456
2024-02-23🎯 Sync smart & scheduler codes (#8537)Shell
Signed-off-by: Shell <[email protected]> Co-authored-by: xqyjlj <[email protected]>
2024-02-17[qspi]修复qspi配置未生效问题yangpeng
2024-01-09[drivers][core] 完善设备模型 (#8384)fangjianzhou
2024-01-02fix some -Wmissing-prototypes warningsMeco Man
2023-12-26[components][drivers][sensor]暂时禁止使用sensorv2框架yangpeng
sensor v2框架仍在开发中
2023-12-24[component][drivers]add clk framework (#8213)zms123456
2023-12-19fix warning #1295-D Deprecated declarationsulfurandcu