imx8mm uart dma issue with kernel5.10

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx8mm uart dma issue with kernel5.10

488 Views
Tracy
Contributor II

Hello the community, 

    I ported kernel5.10 to imx8mm and found a problem that when I turned on the dma function of the serial port, the serial port communication would become unavailable and I could not send and receive data.

    I have linked both RTS/CTS, here are my dts Settings:

uart1: serial@30860000 {

                                compatible = "fsl,imx8mm-uart", "fsl,imx6q-uart";

                                reg = <0x30860000 0x10000>;

                                interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;

                                clocks = <&clk IMX8MM_CLK_UART1_ROOT>,

                                         <&clk IMX8MM_CLK_UART1_ROOT>;

                                clock-names = "ipg", "per";

                                dmas = <&sdma1 22 4 0>, <&sdma1 23 4 0>;

                                dma-names = "rx", "tx";

                                status = "okay";

 

                                bluetooth {

                                                //label = "BT-UART";

                                                //status = "okay";

                                                compatible = "qcom,qca9377-bt";

                                                //clocks = <&clk IMX8MM_CLK_UART1_ROOT>;

                                                pinctrl-0 = <&pinctrl_bluetooth>;

                                                enable-gpios = <&gpio2 6 GPIO_ACTIVE_HIGH>;

                                                //firmware-name = "rampatch_00230302.bin";

                                                max-speed = <3000000>;

                                };

 

                        };

&uart1 { /* BT */

        pinctrl-names = "default";

        pinctrl-0 = <&pinctrl_uart1>;

        assigned-clocks = <&clk IMX8MM_CLK_UART1>;

        assigned-clock-parents = <&clk IMX8MM_SYS_PLL1_80M>;

        fsl,uart-has-rtscts;

        status = "okay";

};

    I would like to know where we should check in the future, as well as RTS/CTS. Is it OK to connect the hardware, or do we need software to control it?

 

Thanks in advance,

Tracy

0 Kudos
0 Replies