任务: 配置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. 屏蔽到其他用到这两个管脚的地方即可。