-
Linu内核下drivers/leds/ledsgpio.c实现了一个体系结构无关的GPIO LED驱动,使用此LED 驱动,开发者不需要修改一行代码,只需要在 BSP 的板文件(对于OK6410 为arch/arm/machs3c6410/machmy6410.c)中定义相关的platform设备和数据。在 MY6410开发板上,GPM0~GPM3 实现了四个 LED,因此其对应的platform 信息如下:
arch/arm/machs3c6410/machmy6410.c:
static struct gpio_led my6410_leds[] ={
[0]= {
.name = "LED1",
.gpio = S3C64XX_GPM(0),
},
[1]= {
.name = "LED2",
.gpio = S3C64XX_GPM(1),
},
[2]= {
.name = "LED3",
.gpio = S3C64XX_GPM(2),
},
[3]= {
.name = "LED4",
.gpio = S3C64XX_GPM(3),
},
};
static struct gpio_led_platform_data my6410_gpio_led_pdata ={
.num_leds = ARRAY_SIZE(my6410_leds),
.leds =my6410_leds,
};
static struct platform_device my6410_device_led ={
.name = "leds-gpio",
.id = -1,
.dev ={
.platform_data = &my6410_gpio_led_pdata,
},
};
- 将&my6410_device_led添加到static struct platform_device *my6410_devices[] __initdata中。
-
配置内核:
Device Drivers --->
[*] LED Support --->
<*> LED Support for GPIO connected LEDs
下载内核后开发板上的四个LED这时候已经全部都亮了
共1条
1/1 1 跳转至页
linux移植之LED驱动移植
只看楼主 1楼
关键词: linux 驱动
共1条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】智能可穿戴设备AR/VR如何引领科技新潮流! | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! | |
“我想要一部加热台”活动,不花钱赢取开发好工具!活动开始了哦 | |
【有奖活动】伙伴们:您的“需求”解决了吗? |
打赏帖 | |
---|---|
老胖子聊电路--分析一个反馈电路被打赏50分 | |
放大↔震荡被打赏50分 | |
【换取手持数字示波器】RTduino驱动ssd1306+sht31温湿度计被打赏40分 | |
【换取手持数字示波器】称植国产开源TobudOS到雅特力AT32F425被打赏40分 | |
【分享评测,赢取加热台】+Telink-泰凌微电子B91点灯篇被打赏20分 | |
【换取手持数字示波器】+精英板驱动LCD屏被打赏50分 | |
【换取手持数字示波器】+DFR0216全彩灯带WS2812示例分享被打赏50分 | |
【换取手持数字示波器】安装雅特力国产IDE-AT32IDE被打赏30分 | |
【换取手持数字示波器】+DFR0654板卡驱动数码管和串口功能分享被打赏50分 | |
【换取手持数字示波器】+DFPlayerMini模块推喇叭示例分享被打赏50分 |