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