불량 블록 테이블 오프셋을 찾는 방법과 u-Boot에서 이를 변경하는 방법

불량 블록 테이블 오프셋을 찾는 방법과 u-Boot에서 이를 변경하는 방법

비슷한 문제에 직면하고 있습니다.커널은 u-boot로 표시된 nand 불량 블록을 인식하지 못합니다.

저는 s3c2440 ARM 프로세서가 포함된 친숙한 ARM micro2440 보드를 사용하고 있습니다. u-Boot는 일부 불량 블록을 발견하고 해당 위치를 불량 블록 테이블에 기록했지만 커널을 부팅할 때 해당 불량 블록을 찾을 수 없는 것 같더니 충돌이 발생했습니다.

이 사용자가 이전에 발견한 모호한 솔루션을 시도하고 싶지만 어떻게 해야 할지 모르겠습니다. BBT 오프셋을 알아보세요(아마도 s3c2440의 BBT 오프셋도 특이한 값이고 uboot가 사용하는 값이 아닐 수도 있습니다). 그리고 그렇다면 u-Boot의 BBT 오프셋을 어떻게 변경하나요?

답변1

귀하의 질문에 대한 정확한 답변은 없지만 openmoko 프로젝트의 s2410에 대한 잘못된 블록 지원이 있다는 것을 알고 있습니다.

http://wiki.openmoko.org/wiki/NAND_bad_blocks

답변2

문제는 앞서 언급한 BBT 오프셋이 아닌 것으로 밝혀졌습니다. 문제의 근본 원인은 다음 링크에 설명된 대로 squashfs를 사용하는 것입니다.

http://elinux.org/Support_read-only_block_filesystems_on_MTD_flash

해결책은 다른 파일 시스템을 사용하거나 UBI를 사용하여 불량 블록을 감지하는 것입니다.

관련 정보