免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2182 | 回复: 0
打印 上一主题 下一主题

omap mux系统 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-21 08:41 |只看该作者 |倒序浏览
1.2.6.29内核使用的mux系统:
(1)定义arch/arm/mach-omap2/mux.c:
MUX_CFG_34XX("GP142_UART2_TX", 0x170,
              OMAP34XX_MUX_MODE1 | OMAP34XX_PIN_OUTPUT) /* GP142 UART2_TX */
MUX_CFG_34XX("GP143_UART2_RX", 0x172,
               OMAP34XX_MUX_MODE1 | OMAP34XX_PIN_INPUT) /* GP143 UART2_RX */

(2)添加arch/arm/plat-omap/include/mach/mux.h:
        GP142_UART2_TX,
        GP14333_UART2_RX,

(3)在主文件设置arch/arm/mach-omap2/board-omap3evm.c:
        omap_cfg_reg(GP142_UART2_TX);
        omap_cfg_reg(GP143_UART2_RX);

======================================================================
2.2.6.32内核使用的新的mux系统
(1)定义arch/arm/mach-omap2/mux34xx.c
#ifdef CONFIG_OMAP_MUX
#define _OMAP3_MUXENTRY(M0, g, m0, m1, m2, m3, m4, m5, m6, m7) \
{ \
.reg_offset = (OMAP3_CONTROL_PADCONF_##M0##_OFFSET), \
.gpio = (g), \
.muxnames = { m0, m1, m2, m3, m4, m5, m6, m7 }, \
}

#else

#define _OMAP3_MUXENTRY(M0, g, m0, m1, m2, m3, m4, m5, m6, m7) \
{ \
.reg_offset = (OMAP3_CONTROL_PADCONF_##M0##_OFFSET), \
.gpio = (g), \
}
#endif

关注红色部分,M0指的是主名称,g代表gpio,m0-m7是他们的别名
如:
_OMAP3_MUXENTRY(SDMMC2_DAT6, 138,
"sdmmc2_dat6", "sdmmc2_dir_cmd", "cam_shutter", "sdmmc3_dat2",
"gpio_138", "hsusb3_tll_dir", NULL, "safe_mode"),

(2)使用主名初始化
OMAP3_MUX(SDMMC2_DAT6, OMAP_MUX_MODE1 | OMAP_PIN_OUTPUT),

(3)使用别名初始化
omap_mux_init_signal("sdmmc2_dat6.sdmmc2_dat6",
OMAP_PIN_INPUT_PULLUP);
omap_mux_init_signal("hsusb3_tll_dir",
OMAP_PIN_INPUT_PULLDOWN);

======================================================================
3.在omap系统初始化gpio的流程为:
(1)定义,如果复杂的初始化就需要用上面的方法去初始化。
omap_mux_init_gpio(OMAP3STALKER_ETHR_GPIO_IRQ, OMAP_PIN_INPUT_PULLUP);

(2)申请
gpio_request(OMAP3STALKER_ETHR_GPIO_IRQ, "SMC911x irq") < 0)

(3)方向
gpio_direction_input(OMAP3STALKER_ETHR_GPIO_IRQ);

(4)gpio转irq
OMAP_GPIO_IRQ(OMAP3STALKER_ETHR_GPIO_IRQ)

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP