제가 워낙 초보라 어디를 손 봐야 할지 모르겠네요.. 아래 gpio.S 수정한건데
좀 봐주세요.

ldr r0, =PXA_REG_GP_BASE

ldr r1, =GAFR0_L_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR0_L]
ldr r1, =GAFR0_U_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR0_U]


ldr r1, =GAFR1_L_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR1_L]
ldr r1, =GAFR1_U_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR1_U]

ldr r1, =GAFR2_L_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR2_L]
ldr r1, =GAFR2_U_VALUE
str r1, [r0, #PXA_REG_OFFSET_GAFR2_U]

ldr r1, =GPDR0_VALUE
str r1, [r0, #PXA_REG_OFFSET_GPDR0]
ldr r1, =GPDR1_VALUE
str r1, [r0, #PXA_REG_OFFSET_GPDR1]
ldr r1, =GPDR2_VALUE
str r1, [r0, #PXA_REG_OFFSET_GPDR2]

// PSSR 설정 - GPIO 입력 활성화
ldr r0, =PXA_REG_PSSR
ldr r1, =PSSR_VALUE
str r1, [r0]

// debug led off
ldr r0, =PXA_REG_GP_BASE
mov r1, #(_GPIO_OUT) // -> 이부분 수정함
(ez_x5.h define 수정)
str r1, [r0, #PXA_REG_OFFSET_GPCR0] // -> GPSR0
를 GPCR0로 변경

mov pc, lr

.globl led_out
led_out:

.globl error_loop
error_loop:

부분의 코드는 모두 지웠습니다.

이렇게 수정한후 컴파일해서 다시 올려봤습니다. 근데 보드가 먹통이 되어
버리더군요...

하나더 질문 드리겠습니다.

mov r1, #(_GPIO_OUT)
이부분에서 _GPIO_OUT 값이 12비트를 넘어가면 에러가 납니다.
자료를 찾아보니 12비트 까지만 가능하다고 하더군요.
제가 사용할 gpio 포트는 12 비트 보다 큰 포트도 사용합니다.
어떻게 변경하면 될까요?

이전 답변 감사드리며 다시한번 부탁드립니다.

수고하세요.

장형기 wrote..
: 안녕하세요..
:
: 부트로더에서 수정을 해 주셔야 겠네요..
:
: 부트로더의 소스 중 start/start.S 에서 보면 gpio_init 를 호출합니다..
:
: 이것은 start/gpio.S 에 있습니다... 이 파일에서 해당 GPIO를 LOW를 설정 해 주시면
:
: 될것 같네요..
:
: 그럼 수고하세요..
:
:
:
:
: 김상규 wrote..
: : 안녕하세요?
: :
: : EZ-X5 보드를 사용하고 있습니다.
: :
: : 전원 인가시 GPIO 포트핀의 상태를 변경하려고 합니다.
: :
: : 현재 전원 인가시 거의 모든 GPIO 포트가 HIGH 상태가 됩니다.
: :
: : 이걸 LOW로 변경해야 하는데 어디를 수정해야 하는지요?
: :
: : 부팅된후 어플리케이션에서 LOW로 변경은 가능하지만 전원이 들어왔을때
: :
: : HIGH 신호가 들어오면 안되는 상황입니다. 답변 부탁드립니다.
: :
: : 수고하세요.