RT-Thread / RT-Thread/rt-thread

device driver v2.0

Open
#8,115 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

v5.1.0
Dominant language
C
Stars
12.2k
Forks
5.4k
Avg merge
4d 12h
Merged PRs (30d)
40

Description

计划在v5.1.0中对设备驱动部分做一个全新的调整,主要包括到几个方面:

  • 全新的设备驱动模型,设备是可以看得到、可操作的对象(例如可以使用list device可以看到,或者/dev下存在的设备对象(文件));驱动是针对系列设备的驱动程序,更多突出的是程序的概念。同时也包括,数个设备可能使用同一份驱动;
  • rt_device相关代码都从内核中分离,对应的头文件,源文件都从内核中剥离;
  • 针对A核平台,全面启用设备树,并推进IP化的驱动方式,基础类型包括:
    • pinctl - GPIO及管脚复用;
    • clk - 时钟树框架

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue proposes a broad device-driver redesign for v5.1.0, including rt_device separation, device-tree support on A-core platforms, and pinctl and clk foundations. No files, tests, or entry points are named; start by locating rt_device and the existing A-core driver and device-tree code. Done would require the proposed architecture to be implemented and its device and driver behavior validated.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.