任务: 配置uart3和uart5
UART3
UART5
配置uart3
1. 修改mmu33xx.c
_AM33XX_MUXENTRY(MII1_RXD3, 0,
"mii1_rxd3", NULL, "rgmii1_rd3", "mmc0_dat5",
"mmc1_dat2", NULL, "mcasp0_axr0", "gpio2_18"),
_AM33XX_MUXENTRY(MII1_RXD2, 0,
"mii1_rxd2", NULL, "rgmii1_rd2", "mmc0_dat4",
"mmc1_dat3", NULL, "mcasp0_axr1", "gpio2_19"),
从上图看uart3的rx和tx是Mode1,这里需要配置上,而且要注意这里的管脚名称叫mii1_rxd3,而上图是gmii1_rxd3,多了个g,所以需要mmu33xx.c和board-am335xevm.c保持一致。
2. 修改board-am335xevm.c
增加uart3的管脚配置。
static struct pinmux_config uart3_pin_mux[] = {
{"mii1_rxd3.uart3_rxd", OMAP_MUX_MODE1 | AM33XX_SLEWCTRL_SLOW |
AM33XX_PIN_INPUT_PULLUP},
{"mii1_rxd2.uart3_txd", OMAP_MUX_MODE1 | AM33XX_PULL_UP |
AM33XX_PULL_DISA |
AM33XX_SLEWCTRL_SLOW},
{NULL, 0},
};
在对应位置增加
static void uart3_init(int evm_id, int profile)
{
setup_pin_mux(uart3_pin_mux);
return;
}
参照其它uart给azm335x_dev_cfg里追加一项
{uart3_init, DEV_ON_BASEBOARD, PROFILE_ALL}
3. 屏蔽到其他用到这两个管脚的地方即可。