AnsweredAssumed Answered

i.MX SL with WL1273 chip, bluetooth over UART

Question asked by Sumit Sharma on May 3, 2014
Latest reply on Nov 21, 2014 by Bill Chen

Hi, I have been working with i.MX SL and using WL1273 chip with it in linux. Wifi is working fine, but issues are coming with the bluetooth.

The node is created as /dev/ttymxc1, but even the echo command is not working, the custom board hangs up.

The behaviour is same with flow control and without flow control as well.

I'm using UART1 for console, that is working fine and UART2 for bluetooth.

The configs are as:

static const struct imxuart_platform_data mx6sl_uart2_data __initconst = {

        .flags      = IMXUART_HAVE_RTSCTS ,

        .dma_req_rx = MX6Q_DMA_REQ_UART2_RX,

        .dma_req_tx = MX6Q_DMA_REQ_UART2_TX,

};

static void __init uart2_init(void)

{

        mxc_iomux_v3_setup_multiple_pads(mx6sl_bluetooth_pads, ARRAY_SIZE(mx6sl_bluetooth_pads));

        imx6q_add_imx_uart(1, &mx6sl_uart2_data);

        mxc_iomux_set_specialbits_register(GPIO_1_13, PAD_CTL_LVE, PAD_CTL_LVE_MASK);     /* All pins at 1.8V required */

        mxc_iomux_set_specialbits_register(GPIO_1_14, PAD_CTL_LVE, PAD_CTL_LVE_MASK);

        mxc_iomux_set_specialbits_register(UART2_RXD, PAD_CTL_LVE, PAD_CTL_LVE_MASK);

        mxc_iomux_set_specialbits_register(UART2_TXD, PAD_CTL_LVE, PAD_CTL_LVE_MASK);

        mxc_iomux_set_specialbits_register(UART2_RTS, PAD_CTL_LVE, PAD_CTL_LVE_MASK);

        mxc_iomux_set_specialbits_register(UART2_CTS, PAD_CTL_LVE, PAD_CTL_LVE_MASK);

}

static iomux_v3_cfg_t mx6sl_bluetooth_pads[] = {

        MX6SL_PAD_EPDC_D12__UART2_RXD,

        MX6SL_PAD_EPDC_D13__UART2_TXD,

        MX6SL_PAD_EPDC_D14__UART2_RTS,

        MX6SL_PAD_EPDC_D15__UART2_CTS,

        MX6SL_PAD_EPDC_D6__GPIO_1_13,

        MX6SL_PAD_EPDC_D7__GPIO_1_14,

};

 

Please help for proceeding further.

Outcomes