2024年4月28日发(作者:)

platform_driver与file_operations两种方法开发led驱动

分类: 片内驱动开发(I2C、NAND Flash、LINUX内核) 片外驱动开发(tuner、

demod、ca、e2prom)2011-08-08 13:141538人阅读 评论(0) 收藏 举报

filestructmodulectableoutput

下面是两个LED灯的驱动程序 一个用platform_driver 另一个用file_operations

[cpp] view plaincopy

1. #include

2. #include

3. #include

4. #include

5. #include

6. #include

7. #include

8. /* our context */

9. struct s3c24xx_gpio_led {

10. struct led_classdev cdev;

11. struct s3c24xx_led_platdata *pdata;

12. };

13. static inline struct s3c24xx_gpio_led *pdev_to_gpio(struct platform_de

vice *dev)

14. {

15. return platform_get_drvdata(dev);

16. }

17. static inline struct s3c24xx_gpio_led *to_gpio(struct led_classdev *led_

cdev)

18. {

19. return container_of(led_cdev, struct s3c24xx_gpio_led, cdev);

20. }