linux i2c 驱动分析

来源:互联网 发布:淘宝以下不是保健食品 编辑:程序博客网 时间:2024/04/28 15:29

static struct platform_driver s3c2410_i2c_driver = {.probe= s3c24xx_i2c_probe,.remove= s3c24xx_i2c_remove,.suspend_late= s3c24xx_i2c_suspend_late,.resume= s3c24xx_i2c_resume,.driver= {.owner= THIS_MODULE,.name= "s3c2410-i2c",},};static struct platform_driver s3c2440_i2c_driver = {.probe= s3c24xx_i2c_probe,.remove= s3c24xx_i2c_remove,.suspend_late= s3c24xx_i2c_suspend_late,.resume= s3c24xx_i2c_resume,.driver= {.owner= THIS_MODULE,.name= "s3c2440-i2c",},};static int __init i2c_adap_s3c_init(void){int ret;ret = platform_driver_register(&s3c2410_i2c_driver);if (ret == 0) {ret = platform_driver_register(&s3c2440_i2c_driver);if (ret)platform_driver_unregister(&s3c2410_i2c_driver);}return ret;}static void __exit i2c_adap_s3c_exit(void){platform_driver_unregister(&s3c2410_i2c_driver);platform_driver_unregister(&s3c2440_i2c_driver);}module_init(i2c_adap_s3c_init);module_exit(i2c_adap_s3c_exit);