도와주세요!!
글 수 15,339
2007.10.05 12:34:32 (*.82.68.226)
6736
안녕하세요..
>nCS의 부가기능이란 것이 GPIO를 의미하는 것인가요?
--->> nCS의 부가기능이 GPIO가 아니라 이 GPIO핀의 부가적인 기능이 nCS 라는 것입니다.
즉, 이런 초기 설정이 없을 경우에는 기본적으로 GPIO를 사용하게 되어 있습니다.
따라서 초기 부팅시 이 GPIO의 부가기능인 nCS로 사용하겠다고 알려 주는 것입니다..
그럼 수고하세요..
>상세한 답변 감사합니다.
>
>datasheet를 좀 더 자세히 봐야 할 것 같긴한데 우선 알려주신 부분에서,
>결국 gpio_init이 하는 일은 gpio pin 중 15,18,33,78,79,80을 nCS의 부가기능을 사용하겠다고
>설정한다는 말씀이신거죠?
>
>제가 좀 헷갈리는 것은 예전에 유영창씨께서 작성하신 부트로더에 보면
>
>"nCS와 같은 칩 선택 핀(chip select pin)도 GPIO로 사용 가능하기 때문에 다른 프로세서와 달리
>메모리 컨트롤러를 설정하기 이전에 반드시 GPIO를 먼저 설정한다. 다른 프로세서는 메모리
>컨트롤서 설정이 GPIO설정에 큰 영향이 없는데, 유독 PXA255는 메모리 컨트롤로 설정 이전에
>GPIO 설정을 하지 않으면 메모리 컨트롤러의 설정이 적용되지 않는다."
>
>라고 적혀있습니다. 제가 이해한 바로는 nCS를 GPIO로 사용한다는 뜻으로 이해했는데, 장형기님께서
>말씀하신 nCS의 부가기능이란 것이 GPIO를 의미하는 것인가요?
>
>제가 지금 배우는 중이라 좀 헷갈리네요^^
>
>
>>안녕하세요..
>>
>>gpio alternative function 는 GPIO의 입력/출력 및 기타 부가적인 기능이 있다는 뜻입니다.
>>
>>>ldr r1, =GAFR0_L_VALUE
>>
>>GAFR0_L_VALUE는 81개의 gpio pin중에 15번째로 nCS[1], active low chip select 1을 의미
>>즉, 이 말은 이 GPIO핀은 입출력으로 사용가능하지만 nCS1으로 사용된 부가적인 기능을 사용하겠다는
>>의미입니다. r1 에 이 값을 대입하고,
>>
>>>str r1, [r0, #PXA_REG_OFFSET_GAFR0_L]
>>
>>#PXA_REG_OFFSET_GAFR0_L 레지스트에 이 GPIO를 nCS1으로 사용한다는 의미입니다.
>>즉, GPIO 기능이 아닌 nCS1의 기능으로 사용한다는 것입니다.
>>
>>
>>다른 예)
>>
>> #define GAFR2_L_VALUE ( GP_nCS2_MD | GP_nCS3_MD )
>>
>>
>> ldr r1, =GAFR2_L_VALUE
>> str r1, [r0, #PXA_REG_OFFSET_GAFR2_L]
>>
>>
>> 의 코드를 보면
>>
>> ldr r1, =GAFR2_L_VALUE
>> 는 nCS2와 nCS3를 GPIO로 사용하지 않고 부가적인 기능인 nCS2와 nCS3를 사용하겠다는 의미입니다.
>>
>> str r1, [r0, #PXA_REG_OFFSET_GAFR2_L]
>> 위에서 load한 r1의 값을 #PXA_REG_OFFSET_GAFR2_L 레지스트에 넣어서 이 GPIO들을 nCS2와 nCS3
>> 로 사용하겠다는 것입니다.
>>
>>
>>PXA255의 메뉴얼의 GPIO 부분을 자세히 읽어 보시기 바랍니다.
>>
>>그럼 수고하세요..
>>
>>
>>
>>
>>
>>
>>
>>
>>>안녕하세요. ez-x5 관련 질문있어서 문의드립니다.
>>>
>>>부트로더 소스중 가장 처음 시작하는 start.S를 보면 gpio_init으로 점프(branch) 하잖아요.
>>>그럼 gpio.S 파일내에 gpio_init으로 이동하는데 정확히 어떻게 초기화하는지 잘 이해가 않가네요.
>>>pxa255 datasheet를 봐도 reset부분은 있는데 init에 관련되 내용은 찾기가 힘드네요^^(알려주시면 감사해요)
>>>
>>>일단 궁금한것은 gpio alternative function에 nCS1~5, ext bus ready, pcmcia pin 값을 넣는다는데
>>>이 값들이 무슨 의미인지를 잘 모르겠네요.
>>>
>>>예를 들어)
>>>ldr r1, =GAFR0_L_VALUE
>>>str r1, [r0, #PXA_REG_OFFSET_GAFR0_L]
>>>
>>>가 있습니다.
>>>GAFR0_L_VALUE는 81개의 gpio pin중에 15번째로 nCS[1], active low chip select 1을 의미하고 이를
>>>PXA_REG_OFFSET_GAFR0_L (0x40E00054)에 저장합니다.
>>>
>>>여기서 nCS[1]의 값에는 어떤것이 들어있는건가요? 그리고 이건 어떤의미인가요?
>>>단순히 gpio 용으로 사용하겠다는 의미인가요?
>>>
>>>도와주시면 감사하겠습니다.
>>
>
>nCS의 부가기능이란 것이 GPIO를 의미하는 것인가요?
--->> nCS의 부가기능이 GPIO가 아니라 이 GPIO핀의 부가적인 기능이 nCS 라는 것입니다.
즉, 이런 초기 설정이 없을 경우에는 기본적으로 GPIO를 사용하게 되어 있습니다.
따라서 초기 부팅시 이 GPIO의 부가기능인 nCS로 사용하겠다고 알려 주는 것입니다..
그럼 수고하세요..
>상세한 답변 감사합니다.
>
>datasheet를 좀 더 자세히 봐야 할 것 같긴한데 우선 알려주신 부분에서,
>결국 gpio_init이 하는 일은 gpio pin 중 15,18,33,78,79,80을 nCS의 부가기능을 사용하겠다고
>설정한다는 말씀이신거죠?
>
>제가 좀 헷갈리는 것은 예전에 유영창씨께서 작성하신 부트로더에 보면
>
>"nCS와 같은 칩 선택 핀(chip select pin)도 GPIO로 사용 가능하기 때문에 다른 프로세서와 달리
>메모리 컨트롤러를 설정하기 이전에 반드시 GPIO를 먼저 설정한다. 다른 프로세서는 메모리
>컨트롤서 설정이 GPIO설정에 큰 영향이 없는데, 유독 PXA255는 메모리 컨트롤로 설정 이전에
>GPIO 설정을 하지 않으면 메모리 컨트롤러의 설정이 적용되지 않는다."
>
>라고 적혀있습니다. 제가 이해한 바로는 nCS를 GPIO로 사용한다는 뜻으로 이해했는데, 장형기님께서
>말씀하신 nCS의 부가기능이란 것이 GPIO를 의미하는 것인가요?
>
>제가 지금 배우는 중이라 좀 헷갈리네요^^
>
>
>>안녕하세요..
>>
>>gpio alternative function 는 GPIO의 입력/출력 및 기타 부가적인 기능이 있다는 뜻입니다.
>>
>>>ldr r1, =GAFR0_L_VALUE
>>
>>GAFR0_L_VALUE는 81개의 gpio pin중에 15번째로 nCS[1], active low chip select 1을 의미
>>즉, 이 말은 이 GPIO핀은 입출력으로 사용가능하지만 nCS1으로 사용된 부가적인 기능을 사용하겠다는
>>의미입니다. r1 에 이 값을 대입하고,
>>
>>>str r1, [r0, #PXA_REG_OFFSET_GAFR0_L]
>>
>>#PXA_REG_OFFSET_GAFR0_L 레지스트에 이 GPIO를 nCS1으로 사용한다는 의미입니다.
>>즉, GPIO 기능이 아닌 nCS1의 기능으로 사용한다는 것입니다.
>>
>>
>>다른 예)
>>
>> #define GAFR2_L_VALUE ( GP_nCS2_MD | GP_nCS3_MD )
>>
>>
>> ldr r1, =GAFR2_L_VALUE
>> str r1, [r0, #PXA_REG_OFFSET_GAFR2_L]
>>
>>
>> 의 코드를 보면
>>
>> ldr r1, =GAFR2_L_VALUE
>> 는 nCS2와 nCS3를 GPIO로 사용하지 않고 부가적인 기능인 nCS2와 nCS3를 사용하겠다는 의미입니다.
>>
>> str r1, [r0, #PXA_REG_OFFSET_GAFR2_L]
>> 위에서 load한 r1의 값을 #PXA_REG_OFFSET_GAFR2_L 레지스트에 넣어서 이 GPIO들을 nCS2와 nCS3
>> 로 사용하겠다는 것입니다.
>>
>>
>>PXA255의 메뉴얼의 GPIO 부분을 자세히 읽어 보시기 바랍니다.
>>
>>그럼 수고하세요..
>>
>>
>>
>>
>>
>>
>>
>>
>>>안녕하세요. ez-x5 관련 질문있어서 문의드립니다.
>>>
>>>부트로더 소스중 가장 처음 시작하는 start.S를 보면 gpio_init으로 점프(branch) 하잖아요.
>>>그럼 gpio.S 파일내에 gpio_init으로 이동하는데 정확히 어떻게 초기화하는지 잘 이해가 않가네요.
>>>pxa255 datasheet를 봐도 reset부분은 있는데 init에 관련되 내용은 찾기가 힘드네요^^(알려주시면 감사해요)
>>>
>>>일단 궁금한것은 gpio alternative function에 nCS1~5, ext bus ready, pcmcia pin 값을 넣는다는데
>>>이 값들이 무슨 의미인지를 잘 모르겠네요.
>>>
>>>예를 들어)
>>>ldr r1, =GAFR0_L_VALUE
>>>str r1, [r0, #PXA_REG_OFFSET_GAFR0_L]
>>>
>>>가 있습니다.
>>>GAFR0_L_VALUE는 81개의 gpio pin중에 15번째로 nCS[1], active low chip select 1을 의미하고 이를
>>>PXA_REG_OFFSET_GAFR0_L (0x40E00054)에 저장합니다.
>>>
>>>여기서 nCS[1]의 값에는 어떤것이 들어있는건가요? 그리고 이건 어떤의미인가요?
>>>단순히 gpio 용으로 사용하겠다는 의미인가요?
>>>
>>>도와주시면 감사하겠습니다.
>>
>