03 - 总线之平台总线

平台总线(platform bus)是 用于平台升级的
比如你在一个生产智能门的公司使用的ARM芯片,公司接到多个订单,但是每个订单的芯片都不一样,一个是A7,A8,A9系列的,那就要为这三个芯片写三套完整的驱动,为了解决这个问题,平台总线可以驱动多个平台的驱动,已经有了各个框架SCO的驱动框架,只需要修改硬件物理寄存器地址就可以驱动不同的SOC;所以叫做平台总线

平台总线是在原先总线的基础上进行了继承并扩展与标准化了

在这里插入图片描述

平台总线三元素 = platform_bus + platform_driver + platform_device

平台设备的注册与注销
platform_device_register( )
platform_device_unregister( )

平台设备的注册与注销
platform_driver_register( )
platform_driver_unregister( )

在这里插入图片描述

平台设备与平台驱动与平台总线的关系图
在这里插入图片描述

platform_bus是自动创建好的,match也是已经写好的了,相比于传统总线,它有两种比对方法,一种是比对平台设备驱动的id_table列表中的名字 ; 第二种是匹配其子结构体driver种的名字