imx6q: Debugging LED

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

imx6q: Debugging LED

跳至解决方案
1,320 次查看
kimsuhak
Contributor I

Hello

Im using IMX6QAI board.

I want to turn on the debugging LED (D9).

The register is DISP0_DAT21. and use this as GPIO5_IO15 (ALT5)

Not, C code.

I want to use it in lowlevel_init.S in u-boot  as an assembly code.

Do u have any idea for that ?

please help me.

标签 (1)
0 项奖励
回复
1 解答
1,112 次查看
igorpadykov
NXP Employee
NXP Employee

Hi kim

syntax for writing to register is given in lowlevel_init.S as:

ldr r0, =AIPS2_ON_BASE_ADDR

    ldr r1, =0x77777777

    str r1, [r0, #0x0]

Main points below, refer to i.MX6DQ Reference Manual (rev.1  4/2013):

DISP0_DAT21 is GPIO5 module IO15 (bit 15 in register GPIOx_DR).

sect.28.5.3 GPIO direction register (GPIOx_GDIR),

sect.28.5.2 GPIO data register (GPIOx_DR),

sect.36.4.109 Pad Mux Register (IOMUXC_SW_MUX_CTL_PAD_DISP0_DATA21)

GPIO5 module address is 0x020A_C000 from Table 2-2 "AIPS-1 memory map"

http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6DQRM.pdf

Best regards

chip

-----------------------------------------------------------------------------------------------------------------------

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

-----------------------------------------------------------------------------------------------------------------------

在原帖中查看解决方案

0 项奖励
回复
4 回复数
1,113 次查看
igorpadykov
NXP Employee
NXP Employee

Hi kim

syntax for writing to register is given in lowlevel_init.S as:

ldr r0, =AIPS2_ON_BASE_ADDR

    ldr r1, =0x77777777

    str r1, [r0, #0x0]

Main points below, refer to i.MX6DQ Reference Manual (rev.1  4/2013):

DISP0_DAT21 is GPIO5 module IO15 (bit 15 in register GPIOx_DR).

sect.28.5.3 GPIO direction register (GPIOx_GDIR),

sect.28.5.2 GPIO data register (GPIOx_DR),

sect.36.4.109 Pad Mux Register (IOMUXC_SW_MUX_CTL_PAD_DISP0_DATA21)

GPIO5 module address is 0x020A_C000 from Table 2-2 "AIPS-1 memory map"

http://cache.freescale.com/files/32bit/doc/ref_manual/IMX6DQRM.pdf

Best regards

chip

-----------------------------------------------------------------------------------------------------------------------

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

-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复
1,112 次查看
kimsuhak
Contributor I

I coded urs in lowlevel_init.S

that was my code.  but D9 doesn't work

Something missed?

.globl lowlevel_init

lowlevel_init:

    inv_dcache

    init_l2cc

    init_aips

    init_clock

    mov pc, lr

    ldr r0, = 0x020AC000

    ldr r1, =0x00008000

    str r1, [r0, #0x0]

    str r1, [r0, #0x4]

    ldr r0, = 0x020E0000

    ldr r1, =0x00000015

    str r1, [r0, #0x1C4]

0 项奖励
回复
1,112 次查看
igorpadykov
NXP Employee
NXP Employee

Hi kim

please comment what are you doing with these codes.

Best regards

chip

0 项奖励
回复
1,112 次查看
kimsuhak
Contributor I

Im solved.

I moved this code to cpu/.../start,S from lowlevel_init.S

I think something reset resigters of GPIO after .lowlevel_init.

It worked at the end of _arm_boot_start in start.S.

thanks for ur comments.

0 项奖励
回复