i.MX6 Can't toggle GPIO1_IO28 in uboot

cancel
Showing results for 
Search instead for 
Did you mean: 

i.MX6 Can't toggle GPIO1_IO28 in uboot

146 Views
xauser
Contributor I

Hello

I can't set GPIO1_IO28 (ENET_TX_EN) from uboot prompt.

On uboot prompt I checked pin mux of register 0x020E01E8 which is already 0x5. So GPIO mode is set.

I do 'gpio set 28' and can confirm that GPIO1 data register has changed (4fcc6246 -> 5fcc6246). Yet I don't see a changed voltage level on the track that goes to ENET_TX_EN. What am I missing?

0 Kudos
3 Replies

139 Views
igorpadykov
NXP TechSupport
NXP TechSupport

Hi xauser

 

reason may be that this line is broken or connected to other signal, one

can attach jtag and write to gpio registers directly. Also may be useful to check

if uboot procedure is working for other pins.

 

Best regards
igor

0 Kudos

131 Views
xauser
Contributor I

Hello Igor,

I have a user led connected to ENET_TXD0 and can control it from uboot prompt with no issues. So I can control ENET_TXD0 from uboot prompt but can't control ENET_TX_EN.

In board_init() method of uboot in file mx6qsabreauto.c I tried a gpio pin mux for KEY_COL1 like this.

MX6_PAD_KEY_COL1__GPIO4_IO08 | MUX_PAD_CTRL(ENET_PAD_CTRL),

imx_iomux_v3_setup_multiple_pads

I expected to see the pin mux of 0x5 in register 0x020E0200 but it's at 0x1. If I do a 'mw 0x020E0200 0x5' from uboot prompt the register values changes.

 

 

0 Kudos

118 Views
igorpadykov
NXP TechSupport
NXP TechSupport

one can check  ENET_TX_EN signal with oscilloscope,

set it as input and try pull resitors : pull-up, then pull-down,

observing with oscilloscope if signal level changes.

 

Best regards
igor

 

0 Kudos