디바이스 드라이버
imx6의 레프런스보드는 기본적으로 SPI 부팅을 합니다.
부트로더 이외에는 모두 SD를 사용하므로 구지 부트로더를 SPI에 넣고 사용하는 것 보다 SD로 부팅하는 방법을 추천합니다.
하지만 Sabrelite 보드의 경우에는 부팅 옵션을 조절하는 신호만 있고, 외부 설정보드는 따로 구매를 해야 합니다.
따라서 SPI 를 SD 로 부팅하는 프로그램을 제공합니다.
이와 관련한 인터넷 사이트는 여러 곳이 존재합니다.
이 사이트들을 참조하여 첨부한 파일을 SPI NOR-Flash에 다운로드하면 됩니다.
Sabrelite 보드는 2개의 SD 소켓을 제공합니다.
일반 SD 카드 사이즈의 uSDHC3 Port 와 마이크로 SD 카드 사이즈의 uSDHC4를 제공합니다.
원하는 카드에 맞게 해당 파일을 SPI NOR-Flash에 다운로드 하시면 됩니다.
아래는 인터넷 사이트에 있는 내용을 일부 캡쳐하였습니다.
-------------------------
리눅스 머신에서 첨부한 파일 압축을 해지하여 dd 명령으로 원하는 파일을 SD카드에 라이트합니다.
(예로 마이크로 SD를 사용하기 위하여 iMX6DQ_SPI_to_uSDHC4.bin 파일을 SD카트에 라이트 합니다.)
sudo dd if=iMX6DQ_SPI_to_uSDHC4.bin of=/dev/mmcblk0
여기서 of 부분은 신중하게 설정해야 합니다. 잘못 설정할 경우 시스템이 날아갈 수 있습니다.
of의 경우 SD카드를 장착한 후 dmesg 명령으로 확인하시기 바랍니다.
--------------------------
Sabrelite 보드의 SPI NOR-Flash 부팅 후 다음과 같이 하시면 됩니다.
MX6Q SABRELITE U-Boot > mmc dev 1
MX6Q SABRELITE U-Boot > mmc read 0x10800000 0 200
MX6Q SABRELITE U-Boot > sf probe
MX6Q SABRELITE U-Boot > sf erase 0 0x40000
MX6Q SABRELITE U-Boot > sf write 0x10800000 0 0x40000
mmc dev 0 : 일반 SD 카드
-------------------------
위와 같이 하였다면 리눅스 머신에서 micro SD 카드에 다시 정상적인 uBOOT를 Write 합니다.
sudo dd if=u-boot.imx of=/dev/sdb bs=512 seek=2; sync && sync