struct resource是linux内核中用于描述系统中资源使用情况的结构体,它包含以下成员:
1、start:资源的起始地址
2、end:资源的结束地址
3、name:资源的名称
4、flage:资源的标志,用于描述该资源的类型和特性,如I/O端口、内存空间等。
5、parent:该资源的父资源,既包含该资源的上级资源
6、child:该资源的子资源,即包含该资源的下级资源
7、sibling:同级资源链表指针,即与该资源同级的其它资源的链表指针
8、srart_align:资源的起始地址的对齐方式
9、end_align:资源结束地址的对齐方式
12、desc:资源的描述信息
13、map:资源映射的描述信息,包括映射方式和映射地址等
14、dev:该资源所属的设备
15、next:链表指针,用于将该资源加入到其他资源的链表中
16、owner:资源的拥有者,即分配该资源的模块或驱动程序
17、gc_list:用于资源垃圾回收的链表指针
static struct resource ls1x_i2c_resource[] ={
[0]={
.start = LS1X_BOARD_I2C_BASE,
.end = ( LS1X_BOARD_I2C_BASE + 0x4),
.flags = IORESOURCE_MEM,
},
};