一. platform 组织架构

    1.1. platform工作体系都定义在drivers/base/platform.c中

    1.2. platform相关函数声明在include/linux/platform_device.h

    1.3. platform.c中两个重要结构体

        1.3.1. platform_device结构体

            a. 该结构体的name用于总线与device匹配

struct platform_device {
    const char    * name;                // 平台总线下设备的名字
    int        id;                    //当多个同类型设备时用以区分,比如s5pv210_led.0-->这里是name,0是id
    struct device    dev;                   // 所有设备通用的属性部分
    u32        num_resources;         // 设备使用到的resource的个数
    struct resource    * resource;            // 设备使用到的资源数组的首地址

    const struct platform_device_id    *id_entry;

    /* arch specific additions */
    struct pdev_archdata    archdata;       //用来提供扩展性的
};
View Code

相关文章: