How to use UART3/4 with LX2160ardb_rev2?

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

How to use UART3/4 with LX2160ardb_rev2?

Jump to solution
974 Views
m_kei
Contributor III

What settings are needed to use UART3/4 with LX2160ardb_rev2?

A two-way RS232C adapter cable was created according to the "QorIQ LX2160A Reference Design Board Reference Manual". We further considered it necessary to set RCW and set UART1/UART2_RTSCTS_PMUX to 0b010.

I believe all that is left is to set up the same as UART1/2, but UART3/4 is not responding.

Is there something else that needs to be set up?

0 Kudos
1 Solution
959 Views
m_kei
Contributor III

Explanation was insufficient.

I am developing software that runs on lx2160ardb_rev2 and in it I want to use all channels of UART1/2/3/4 simultaneously.

>Please add the following definition in plat/nxp/soc-lx2160a/lx2160ardb/plat_def.h.

>#define NXP_UART_ADDR 0x021E0000

>Or 

>#define NXP_UART_ADDR 0x021F000

I think this method is a change to make if you want to switch the UART channel used by uboot. 

The reference manual does not explain what parameters I need to set if I want to use UART3/4. What parameters other than UART registers must be changed?

View solution in original post

0 Kudos
3 Replies
962 Views
yipingwang
NXP TechSupport
NXP TechSupport

Except configuring RCW UART1/UART2_RTSCTS_PMUX as 0b010.

You also need to modify ATF source code to make it support UART3/4.

Please go to ATF source code folder flexbuild_lsdk2108/components/firmware/atf,

Please add the following definition in plat/nxp/soc-lx2160a/lx2160ardb/plat_def.h.

#define NXP_UART_ADDR 0x021E0000

Or 

#define NXP_UART_ADDR 0x021F0000

Then rebuild ATF images and deploy them on the target board.

0 Kudos
960 Views
m_kei
Contributor III

Explanation was insufficient.

I am developing software that runs on lx2160ardb_rev2 and in it I want to use all channels of UART1/2/3/4 simultaneously.

>Please add the following definition in plat/nxp/soc-lx2160a/lx2160ardb/plat_def.h.

>#define NXP_UART_ADDR 0x021E0000

>Or 

>#define NXP_UART_ADDR 0x021F000

I think this method is a change to make if you want to switch the UART channel used by uboot. 

The reference manual does not explain what parameters I need to set if I want to use UART3/4. What parameters other than UART registers must be changed?

0 Kudos
953 Views
m_kei
Contributor III

I found the cause.

The diagram in the "QorIQ LX2160A Reference Design Board Reference Manual" is incorrect. The IN/OUT signal connections for UART3/4 are listed in reverse.

temp.png

In the figure, the wiring between DB9F and UART3/4 is described as follows.

  • DB9F:7(T1OUT) -> UART3/4 DB9M:2
  • DB9F:8(R1IN) -> UART3/4 DB9M:3

In other words, the OUT signal is connected to pin 2 and the IN signal to pin 3 in DB9M of UART3/4.

In contrast, the UART1/2 connections are reversed. The IN signal is on pin 2 and the OUT signal on pin 3.

In other words, the cable is described in this figure so that the IN/OUT signals are reversed for UART1/2 and UART3/4.

The solution is simple. Use a cross cable for UART1/2 and a straight cable for UART3/4, or wire either IN/OUT line opposite to the diagram.

0 Kudos