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.

PROCESSOR-SDK-J721E: How to use uart3(serial@2830000) in 8.0 sdk?

Part Number: PROCESSOR-SDK-J721E


Hi Ti:

we try to use uart driver.

But we try "echo test > /dev/ttyS5"

system block,and no return.like:

but console uart is ok

  • Here is our uart DTS config:

    main_uart3_pins_default: main_uart3_pins_default {
    pinctrl-single,pins = <
    J721E_IOPAD(0x78, PIN_INPUT, 14) /* (Y23) PRG1_PRU1_GPO8.UART3_RXD */
    J721E_IOPAD(0x74, PIN_OUTPUT, 14) /* (AC21) PRG1_PRU1_GPO7.UART3_TXD */
    >;
    };

    &main_uart3 {
    status = "okay";
    pinctrl-names = "default";
    pinctrl-0 = <&main_uart3_pins_default>;
    };

    main_uart3: serial@2830000 {
    compatible = "ti,j721e-uart", "ti,am654-uart";
    reg = <0x00 0x02830000 0x00 0x100>;
    reg-shift = <2>;
    reg-io-width = <4>;
    interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
    clock-frequency = <48000000>;
    current-speed = <115200>;
    power-domains = <&k3_pds 280 TI_SCI_PD_EXCLUSIVE>;
    clocks = <&k3_clks 280 0>;
    clock-names = "fclk";
    };

  • [ 4.336842] 40a00000.serial: ttyS1 at MMIO 0x40a00000 (irq = 15, base_baud = 6000000) is a 8250
    [ 4.346192] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 30, base_baud = 3000000) is a 8250
    [ 4.354938] printk: console [ttyS2] enabled
    [ 4.373794] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 31, base_baud = 3000000) is a 8250
    [ 4.382741] 2830000.serial: ttyS5 at MMIO 0x2830000 (irq = 32, base_baud = 3000000) is a 8250
    [ 4.391682] 2840000.serial: ttyS6 at MMIO 0x2840000 (irq = 33, base_baud = 3000000) is a 8250

    This is my tty start up log

  • By the way,we try to use vfs_read,vfs_write in kernel  to use uart3.

    But no data output.

    And we found that there are some change between 7.3 and 8.0 in tty_io.c.(Is this  kernel verison update change? )

    Kernel use read_iter write_iter function instead of read and write.

    May be lead to this issue?

  • Hi,

    Apologies for the long silence on this. Is this TI TDA4 EVM or a custom board?

    Based on the above the pin muxing needs to be changed. Also what is your final goal?

    Best Regards,
    Keerthy

  • This is a custom board

    Also what is your final goal?  ---- We use uart3 to control Max96745

    Based on the above the pin muxing needs to be changed  -----  pinmux we have change to mode 14 (as same as TI pinmux tool)

    Could you show us a correct pinmux config for uart3? 

  • Hi,

    What I mean is that UART3_RXD & UART3_TXD come out on multiple balls for J721e:

    & for UART3_TAD

    Are you using a custom board to do this? As the J721e EVM does not have the UART3 brought out to the board.

    UART0/1/2/4 are brought out.

    Thanks,
    Keerthy