BIOS, 부트 로더, 커널 부팅 및 스크린 드라이버

BIOS, 부트 로더, 커널 부팅 및 스크린 드라이버

라즈베리파이를 터치스크린으로 설정하려고 합니다.

커널이 부팅되면 화면에 흰색 화면만 표시됩니다. 그래서 부팅 과정에서 부팅 메시지가 화면에 어떻게 표시되는지 알고 싶습니다. BIOS, 부트로더 및 커널은 모두 화면에 무언가를 표시할 수 있습니다. 어떻게 이럴 수있어?

흰색 터치스크린으로 돌아가 보겠습니다. 이 화면은 HDMI, DVI가 아닌 특정 SPI를 통해 연결되기 때문에 "표준" 화면이 아닙니다. 로그를 보면 커널이 시작된 후 8초 후에 프레임 버퍼가 준비되었음을 알 수 있습니다.

[    8.026032] graphics fb1: flexfb frame buffer, 480x320, 300 KiB video memory, 4 KiB buffer memory, fps=20, spi0.0 at 16 MHz

그래서 화면이 올바르게 구성되었다면,

  • 커널 시작 로그가 화면에 표시됩니까?
  • 아니면 몇 초(스크린 드라이버를 로드하는 데 걸리는 시간) 후에 화면에 커널 로그를 표시합니까?
  • 아니면 커널 로그를 얻지 못할 것입니다. 하지만 X가 시작되면 뭔가를 표시하게 될까요?

답변1

부팅 프로세스 초기에 커널 메시지/로그가 rpi 화면에 나타나지 않는 이유는 프레임 버퍼 화면이 부팅 프로세스에서 상대적으로 "늦게" 활성화되기 때문입니다.

실제로 라즈베리/바나나/오렌지 PI 플랫폼에서는 부팅 프로세스/커널 메시지/오류가 표시되지 않습니다.앞으로프레임버퍼가 활성화됩니다. 질문하신 대로 이 문제를 해결할 수 있는 방법이 없습니다.

따라서 이전 부팅 프로세스를 추적하려면 u-boot를 구성하면 됩니다.그리고커널은 직렬 출력을 사용하고 초기 시점부터 부팅 프로세스를 추적합니다.

이렇게 하려면 USB-TTL 직렬 케이블 PL2303HX를 구입하여 Raspberry Pi의 콘솔/JTAG 핀에 연결해야 합니다.

minicom그런 다음 프레임 버퍼 출력이 활성화될 때까지 직렬 원격 터미널(예:)을 사용하여 랩톱/컴퓨터의 원격 터미널에서 부팅 프로세스를 따를 수 있습니다 .

dmesgPS 나중에 출력을 보는 데 방해가 되는 것은 없습니다 . 출력에는 dmesg모든 이전 시스템 활동의 출력이 표시되지 않지만 최소한 커널 메시지는 표시됩니다. 그러나 일부 추가 출력 포인트의 필요성을 피할 수 있는 방법은 없습니다.앞으로프레임 버퍼가 시스템 출력을 표시하기 시작합니다.

케이블 회전 속도

이미지 출처: Adafruit

RS-232 출력 설정 방법에 대한 관련 콘텐츠를 확인하세요.initramfs(ARM)의 콘솔 설정

관련 정보