Cloud39E的UART1串口使用问题

本文介绍如何在39E主板上配置并使用UART2串口,包括修改内核文件以实现CIS_DATA0/GPIO6_PD/RXD2、CIS_DATA1/GPIO7_PD/TXD2两个引脚的功能转换。
39e的板子要用到uart2,即CIS_DATA0/GPIO6_PD/RXD2、CIS_DATA1/GPIO7_PD/TXD2这两个pin要利用成RXD2、TXD2功能,那么在软件上配置如下就可以正常使用:
1、kernel/arch/arm/mach-ak39/ak39-gpio.c修改如下:
       struct gpio_sharepin_cfg share_cfg_module[] = {
                {ePIN_AS_UART2,    SHARE_CFG2,    0, 0, (0xff<<4), (0x5a<<4), 0, 0,0, 0},
             {ePIN_AS_CAMERA,   SHARE_CFG2,    0, 0, (0xff00f), (0x0), 0, 0,0, 0},

      }
2、
kernel/arch/arm/mach-ak39/mach-cloud39e_ak3918e+h42.c修改如下:
         static struct platform_device *ak3918_platform_devices[] __initdata = {
              &ak39_uart0_device,
              &ak39_uart1_device,
         }
3、drivers/tty/serial/ak39_uart.c修改如下:
       static void ak39_serial_set_termios(struct uart_port *port,
                struct ktermios *termios, struct ktermios *old)
       {
                 ......
                 /* flow control setting */
    if(port->line != 0)
    {
        if((termios->c_cflag & CRTSCTS)) /* directly */
        {
            switch (port->line) {
            case 1:
                AK_GPIO_UART1_FLOW(1);
                break;
            }
            regval &= ~(1<<18|1<<19);
        }
        else  /* inversly */
        {
            switch(port->line) {
            case 1:
                 ak_setpin_as_gpio(8);
              ak_setpin_as_gpio(9);
             
break;
            }
        }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值