iMX6UL-MAX14830 - unable to receive data

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

iMX6UL-MAX14830 - unable to receive data

1,851 Views
surendradhobale
Contributor III

 I have interfaced max 14830 quad serial UART IC with iMX6UL over SPI bus. I am able to the read revision id and registers of the MAX14830.

I am trying to check the transmission and reception using the internal loopback test on the UART. I am transmitting the data from internal minicom. Configuration of the UART updated correctly on the 14830 registers. I am able to send the data ( char)  over the UART. I have set loopback bit in the mode2 register, so that i can receive same char on the minicom console, but unable to receive the data.

I am debugging the driver,

 max310x Startup
configure mode1
configure mode2
mode1=[80],mode2=[28],irqstat=[60]
[max310x_set_termios]
Read LCR Register = [3]
Read Flow control Register = [88]
get baud rate gen config =[9600]
[max310x_set_baud]
Set baud rate =[9603]
[max310x_set_mctrl]
[max310x_md_proc]
md: mode2 reg= [28]
[max310x_set_termios]
Read LCR Register = [3]
Read Flow control Register = [0]
get baud rate gen config =[115200]
[max310x_set_baud]
Set baud rate =[115385]
[max310x_start_tx]
[max310x_handle_tx]
To send [1]
[a]

I am expecting  start rx , but not receiving anything.

What could be wrong? any suggestion. Please help.

## DTS file ###

max14830: max14830@0 {
                   compatible = "maxim,max14830";
                   reg = <0>;
                   mode = <0>;
                   clocks = <&clk20m>;
                   clock-names = "osc";
                    interrupt-parent = <&gpio1>;
                    interrupts = <20 IRQ_TYPE_LEVEL_LOW 0>;
                    //interrupts = <20 IRQ_TYPE_EDGE_FALLING >;  ( here i have tried multiple combination )
                    gpio-controller;
                        #gpio-cells = <2>;
                   spi-max-frequency = <26000000>;
        };

Thanks,

Surendra

Labels (2)
0 Kudos
1 Reply

1,140 Views
igorpadykov
NXP Employee
NXP Employee

Hi Surendra

there is no " start rx", as received data are processed in irq routine

max310x_port_irq(), max310x_handle_rx

linux-2.6-imx.git - Freescale i.MX Linux Tree 

so one can check with oscilloscope if gpio (&gpio1..) is activated

and set sensible max RXFIFO trigger level in

MAX310X_FIFOTRIGLVL_REG  (0x10) /* FIFO IRQ trigger levels */

use https://datasheets.maximintegrated.com/en/ds/MAX14830.pdf 

also as its registers are compatible with MAX3107

one can check examples for MAX3107 EVKIT Software:
https://www.maximintegrated.com/en/products/interface/controllers-expanders/MAX3107EVKIT.html/tb_tab...

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos