Part Number: AM5728
Dear All,
I'm trying to use UART8 (0x48422000) on AM57xx SoC.
RXD is connected to GPMC_A6 and TXD is connected to GPMC_A7.
The DTS definition of UART8 (generic - dra7.dtsi file):
uart8: serial@48422000 {
compatible = "ti,dra742-uart", "ti,omap4-uart";
reg = <0x48422000 0x100>;
interrupts = <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>;
ti,hwmods = "uart8";
clock-frequency = <48000000>;
status = "disabled";
};
Changes added by me:
&uart8 {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&uart8_pins_default>;
interrupts-extended = <&crossbar_mpu GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH
&dra7_pmx_core 0x058>;
dmas = <&sdma_xbar 146>, <&sdma_xbar 147>;
dma-names = "tx", "rx";
};
When I try to debug it with serial loopback I see that TXD is working, but I do not see sent characters (the signal is provided to RXD line - checked with oscilloscope).
cat /proc/interrupts shows OMAP_UART7 - and I'm able to see that TX buffer empty interrupt is serviced. The RX interrupt is not asserted.
For comparison I did the same setup with UART6 and it all works (cat /proc/interrupts shows 2 interrupts per sent character - tx empty and rx char available).
What am I missing?
Is there any register, which enables RX interrupt on L4PER2 uarts?
Note/Remark:
The L4PER2 UARTs seems like one not "enabled" by default - the IRQ_Crossbar interrupts are not mapped by default as well as DMA.
Thanks in advance for help,
Łukasz