相机选择
2020-11-28 21:44:23 0 举报
流程图
作者其他创作
大纲/内容
*
kset注册
GPIO芯片,SOC的GPIO
struct list_head list
.board_info
PCIE EP
属性文件及符号链接的建立
I2c设备驱动
devinfo 的总线号和适配器总线号相同
RX0_P/RX0_M
产生uevent事件
GPOIO_1_0
USB2.0 PHY(UTMI+/ULPI)
clk1
retries
i2c核心层
busnum
i2c_adapter
Rx Data FIFO(RAM)(Single/2-Port)
gpio_desc
.addr
Slave
int nr
GPOIO_0_0
addr
添加属性文件
硬件
RX1_P/RX1_M
*adapter
Hardware
timeout
TX1_P/TX1_M
FileServer
挂靠
GPOIO_0_8
*algo_data
总线与设备关联
sys文件接口调用(write/read)
开发自己使用
App
RC
......
.dev
.flags
硬件空间
gpio_device
/sys/class/gpio/exports/sys/class/gpio/gpio<N>/sys/class/gpio/gpiochip<N>/
I2C外设
*platform_data
分配priv空间
gpio_devices
...
EP
用户空间
开发查询电路图指定
具体GPIO驱动(实现gpio_chip)
i2c_algorithm
type[20]
内核空间
device_initialize
内核空间
flags
被解析
name[20]
Bank1
i2c_client
SystemMemory
gpio_chip
GPOIO_0_1
注册gpiochip_add()
Descriptor RegisterCache(RAM)(Single/2-Port)
应用程序
Master
初始化设置
Bank0
PCIE RC
device_add
GPOIO_1_8
class的相关处理
PCIE0
ApplicationIPC
适配器硬件
i2c_devinfo
i2c_board_info
TX0_P/TX0_M
i2c_new_device构造、注册
device中的kobject初始化
RG801
Tx Data FIFO(RAM)(Single/2-Port)
kobject的添加
Basic IPC,Virtual Memory,Scheduling
list_head
clk0
RG800
*archdata
i2c_scan_static_board_info
UnixServer
板卡注册
I2c dev驱动
USB3.0 PHY(PIPE3)
SystemCPU
向总线中添加设备
dev
GPIO驱动框架(gpiolib.c)
Application
UserMode
GPOIO_1_1
KernelMode
I2C适配器驱动
其他元素初始化
自定义
__i2c_board_list链表
DeviceDriver
内核调用接口:gpio_request();gpio_free();gpio_direction_input();gpio_direction_output();gpio_set_direction();gpio_get_value_cansleep();gpio_set_value_cansleep();
名字及父节点处理
扫描
DWC_USB3Controller
i2c_msg
*algo
char name[48]
硬件操作(与具体芯片有关)
PCIE1
RG500
0 条评论
下一页