This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM3359 UART4

Other Parts Discussed in Thread: AM3359, SYSBIOS

Hi,

We are using UART4 for communication,refered the uart example code provided in sdk

Can any one help me out what is the procedure, initialisation steps to be taken care ?

Regards,

Bindu

  • Hi,

    What software are you using?

    Best regards,
    Miroslav

  • Hi,

    We could find few UART source files in SDK, will try to work with it .

    Regards,

    Bindu

  • I assume that's TI AM335x SDK. What you need to do is choose which of the available pins, that can be pinmuxed to UART4 signals, you want to use. Your choices are:

    1.
    gpmc_wait0.uart4_rxd (OMAP_MUX_MODE_6)
    gpmc_wpn.uart4_txd (OMAP_MUX_MODE_6)

    2.
    mii1_txd3.uart4_rxd (OMAP_MUX_MODE_3)
    mii1_txd2.uart4_txd (OMAP_MUX_MODE_3)

    3.
    uart0_ctsn.uart4_rxd (OMAP_MUX_MODE_1)
    uart0_rtsn.uart4_txd (OMAP_MUX_MODE_1)

    Choose one of the three according to your board design, then add a new pinmux_config to your board file. Example with choice number 3:

    static struct pinmux_config uart4_pin_mux[] = {
        {"uart0_ctsn.d_uart4_rxd", OMAP_MUX_MODE1 | AM33XX_PIN_INPUT_PULLUP },
        {"uart0_rtsn.d_uart4_txd", OMAP_MUX_MODE1 | AM33XX_PULL_ENBL },
        {NULL, 0},
    };

    Then add a new function:

    /* setup uart4 */
    static void uart4_init(int evm_id, int profile)
    {
        setup_pin_mux(uart4_pin_mux);
        return;
    }

    And then add this init function to the evm_dev_cfg for your board:

    static struct evm_dev_cfg custom_name[] = {
        ..........
        {uart4_init, DEV_ON_BASEBOARD, PROFILE_ALL},
        ..........
        {NULL, 0, 0},
    };

    Best regards,
    Miroslav

  • Hi Miroslav,

    Thanks for the reply,

    Yes it is TI AM3359 ICE Board.

     What you need to do is choose which of the available pins, that can be pinmuxed to UART4 signals, you want to use. Your choices are:

    1.
    gpmc_wait0.uart4_rxd (OMAP_MUX_MODE_6)
    gpmc_wpn.uart4_txd (OMAP_MUX_MODE_6)

    2.
    mii1_txd3.uart4_rxd (OMAP_MUX_MODE_3)
    mii1_txd2.uart4_txd (OMAP_MUX_MODE_3)

    3.
    uart0_ctsn.uart4_rxd (OMAP_MUX_MODE_1)
    uart0_rtsn.uart4_txd (OMAP_MUX_MODE_1)

    1) What is the difference between these three choices and Modes.

    2)We have a UART0 source files in  sdk, we can use them as the base and make changes occording to UART4 ( example base address.....), Hope it should work.

    3)Do we have UART4 source code available?

     

    Regards,

    Bindu

  • Hi,

    If you are using the ICE board, then I suppose the SDK you are using is not the Linux SDK, but the AM335x SYSBIOS Industrial SDK. I'm sorry, but if this is the case, I'm not familiar with it.

    You will need to wait for someone else to guide you, as the information I provided applies to the AM335x Sitara Linux SDK.

    Best regards,
    Miroslav

  • Hey Bindu,

    did you find a solution?

    I'm having the same problem.

    King regards, Hendrik