도와주세요!!
글 수 15,339
2004.07.27 09:14:51 (*.110.112.55)
6675
안녕하세요..
커널에서 시리얼 관련 부분은
arch/arm/mach-sa1100/ezboard.c
drivers/char/serial.c
include/asm/arch/serial.h
이 3곳을 참조합니다.
여기서 한곳을 확인 해 주세요.. 이 부분이 이렇게 되어 있어야 합니다.
# vi arch/arm/mach-sa1100/ezboard.c
static void __init ezboard_map_io(void)
{
sa1100_map_io();
iotable_init(ezboard_io_desc);
sa1100_register_uart(0, 3); // 커널이 인지하는 포트번호 0 = UART3
// 시리얼 포트 UART1, UART2 사용
Ser1SDCR0 |= SDCR0_SUS;
sa1100_register_uart(1, 1); // 커널이 인지하는 포트번호 1 = UART1
sa1100_register_uart(2, 2); // 커널이 인지하는 포트번호 2 = UART2
}
나머지는 그냥 사용하시면 됩니다..
baud rate 설정은 달리 위의 Device driver에 수정하실 필요없이.. 어플리케이션에서
바꾸어 주시면 됩니다..
그럼 수고하세요.
mac wrote..
: EZ-M01에서요, 강좌에서 처럼 UART1,2를 사용하기 위해 등록을 했습니다.
: 문제는 제가 baud rate를 바꿔 가면서 쓰고 싶은데요.. PC에서는 PC의 UART
: 레지스터 값을 바꾸고 상태를 보기위해 Line status register값을 읽고 하잖습
: 니까.. 당연 EZ-M01에서도 이런 식으로 하되 레지스터 조작은 SA1110의 레지스
: 터를 만져야 되겠지요?...
:
: 제가 궁금한건 이미 Linux를 포팅 했으면 이 UART1, 2에 대한 Device driver가
: 있는 것이니 따로 짤 필요은 없을 텐데.. 이런 설정들을 어떻게 바꿔야 하나
: 요.. 관련 소스 파일이 있습니까?...
커널에서 시리얼 관련 부분은
arch/arm/mach-sa1100/ezboard.c
drivers/char/serial.c
include/asm/arch/serial.h
이 3곳을 참조합니다.
여기서 한곳을 확인 해 주세요.. 이 부분이 이렇게 되어 있어야 합니다.
# vi arch/arm/mach-sa1100/ezboard.c
static void __init ezboard_map_io(void)
{
sa1100_map_io();
iotable_init(ezboard_io_desc);
sa1100_register_uart(0, 3); // 커널이 인지하는 포트번호 0 = UART3
// 시리얼 포트 UART1, UART2 사용
Ser1SDCR0 |= SDCR0_SUS;
sa1100_register_uart(1, 1); // 커널이 인지하는 포트번호 1 = UART1
sa1100_register_uart(2, 2); // 커널이 인지하는 포트번호 2 = UART2
}
나머지는 그냥 사용하시면 됩니다..
baud rate 설정은 달리 위의 Device driver에 수정하실 필요없이.. 어플리케이션에서
바꾸어 주시면 됩니다..
그럼 수고하세요.
mac wrote..
: EZ-M01에서요, 강좌에서 처럼 UART1,2를 사용하기 위해 등록을 했습니다.
: 문제는 제가 baud rate를 바꿔 가면서 쓰고 싶은데요.. PC에서는 PC의 UART
: 레지스터 값을 바꾸고 상태를 보기위해 Line status register값을 읽고 하잖습
: 니까.. 당연 EZ-M01에서도 이런 식으로 하되 레지스터 조작은 SA1110의 레지스
: 터를 만져야 되겠지요?...
:
: 제가 궁금한건 이미 Linux를 포팅 했으면 이 UART1, 2에 대한 Device driver가
: 있는 것이니 따로 짤 필요은 없을 텐데.. 이런 설정들을 어떻게 바꿔야 하나
: 요.. 관련 소스 파일이 있습니까?...