안녕하세요~

궁금한 것이 있어 이렇게 질문 올립니다 .


ez-s3c6410 평가보드에 16c554 확장 UART를 구성하고 있는 중인데요.

menuconfig 에서 포트를 16개로 확장을 하고

UART_SETUP 을 통해 ttyS0 부터 ttyS11 까지 설정을 하였습니다.

인터럽트는 공유로 설정하고 모두 같은 핀을 사용하고 있습니다.

부팅메시지는 다음과 같습니다.


ex) 이부분은 로그를 찍어본내용이구요

ttyS0: autoconf (0x0000, 0xc6860000): iir=3 iir1=6 iir2=6 type=16550A



Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
ttyS0: autoconf (0x0000, 0xc6860000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS0 at MMIO 0x30000000 (irq = 107) is a 16550A
ttyS1: autoconf (0x0000, 0xc6864000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS1 at MMIO 0x30800000 (irq = 107) is a 16550A
ttyS2: autoconf (0x0000, 0xc6868000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS2 at MMIO 0x31000000 (irq = 107) is a 16550A
ttyS3: autoconf (0x0000, 0xc686c000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS3 at MMIO 0x31800000 (irq = 107) is a 16550A
ttyS4: autoconf (0x0000, 0xc6870000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS4 at MMIO 0x32000000 (irq = 107) is a 16550A
ttyS5: autoconf (0x0000, 0xc6874000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS5 at MMIO 0x32800000 (irq = 107) is a 16550A
ttyS6: autoconf (0x0000, 0xc6878000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS6 at MMIO 0x33000000 (irq = 107) is a 16550A
ttyS7: autoconf (0x0000, 0xc687c000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS7 at MMIO 0x33800000 (irq = 107) is a 16550A
ttyS8: autoconf (0x0000, 0xc6880000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS8 at MMIO 0x34000000 (irq = 107) is a 16550A
ttyS9: autoconf (0x0000, 0xc6884000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS9 at MMIO 0x34800000 (irq = 107) is a 16550A
ttyS10: autoconf (0x0000, 0xc6888000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS10 at MMIO 0x35000000 (irq = 107) is a 16550A
ttyS11: autoconf (0x0000, 0xc688c000): iir=3 iir1=6 iir2=6 type=16550A
serial8250.0: ttyS11 at MMIO 0x35800000 (irq = 107) is a 16550A
s3c6400-uart.0: ttySAC0 at MMIO 0x7f005000 (irq = 16) is a S3C6400/10
s3c6400-uart.1: ttySAC1 at MMIO 0x7f005400 (irq = 20) is a S3C6400/10
s3c6400-uart.2: ttySAC2 at MMIO 0x7f005800 (irq = 24) is a S3C6400/10
s3c6400-uart.3: ttySAC3 at MMIO 0x7f005c00 (irq = 28) is a S3C6400/10


전반적인 개념이 정확히 서지 않은터라,,,


현재 어플 프로그램을 통해서 ttyS0  포트를 open 하여 데이터를 write 하고 바로 read하여 읽어 보았더니,

제대로 데이터가 나가고 읽히는것을 확인 할수는 있었습니다.


현재 하드웨어로는 하나의 16c554칩 에   CS핀 1개와  인터럽트 핀 1개만 연결하였습니다.  (ttyS0)


궁금한것은...

하드웨어적으로 연결이 안되어 있는 나머지 포트들도

ttyS1 , ttyS2 , ttyS3 ... ttyS11 까지   부팅메시지는 출력하는데요..


하드웨어적으로 연결이 안되어 있다면 부팅메시지시에 .. ttyS0 만 떠야하는게 아닌가요?


하드웨어적으로 정상적으로 물려있는지 안물려있는지 커널단에서 확인할수있는 방법이..있나요?


UART_SETUP 시에  UPF_SKIP_TEST 플래그와 관련이 있는것인지..


두서 없이 질문해서 죄송합니다.. 혹시 조언좀 구할수 있을까해서 질문올립니다.

읽어 주셔서 감사합니다..