描述:
            原版RS232驱动源码中的imx_start_tx函数原型如下:
static void imx_start_tx(struct uart_port *port)
static void imx_start_tx(struct uart_port *port)
{
	struct imx_port *sport = (struct imx_port *)port;
	unsigned long temp;
	if (port->rs485.flags & SER_RS485_ENABLED) {
		/* enable transmitter and shifter empty irq */
		temp = readl(port->membase + UCR2);
		if (port->rs485.flags & SER_RS485_RTS_ON_SEND)
			temp &= ~UCR2_CTS;
		else
			temp |= UCR2_CTS;
		writel(temp, port->membase + UCR2);
		temp = readl(port->membase + UCR4);
		temp |= UCR4_TCEN;
		writel(temp, port->membase + UCR4);
	}
	if (!sport->dma_is_enabled) {
		temp = readl(sport->port.membase + UCR1);
		writel(temp | UCR1_TXMPTYEN, sport->port.membase + UCR1);
	}
	if (sport->dma_is_enabled) {
		if (sport->port.x_char) {
			/* We have X-char to send, so enable TX IRQ and
			 * disable TX DMA to let TX interrupt to send X-char */
			temp = readl(sport->port.membase + UCR1);
			temp &= ~UCR1_TDMAEN;
			temp |= UCR1_TXMPTYEN;
			writel(temp, sport->port.membase + UCR1);
			return;
		}
		schedule_delayed_work(&sport->tsk_dma_tx, 0);
		return;
	}
}
硬件和系统分别是imx6ul A7核心和linux系统
想要在这里增加对GPIO端口的控制应该怎么处理?请高手帮忙????

