platform总线
platform驱动与传统设备驱动模型相比,platform机制设备和驱动是分开的。将设备的资源注册进内核,由内核统一管理。驱动程序使用资源的时候使用统一的接口,提高提高程序的可移植性。
编程框架:
平台设备分配:
struct platform_device *platform_device_alloc(char *name,int id)
平台设备注册
int platform_device_add(struct platform_device *pdev)
int platform_driver_register(struct platform_driver *)
struct platform_driver{ int (*probe)(struct platform_device*); int (*remove)(struct platform_driver*); void (*shutdown)(struct platform_device *); int (*suspend)(struct platform_device *,pm_messgae_t state); ... int (*resume_early)(struct platform_device*) int (*resume)(struct platform_device *); struct device_driver driver; }