불량 차단 목록이 포함된 UBIFS 펌웨어 이미지를 생성하시겠습니까?

불량 차단 목록이 포함된 UBIFS 펌웨어 이미지를 생성하시겠습니까?

동일한 UBI 기반 펌웨어 이미지가 포함된 두 개의 펌웨어 파티션이 있는 라우터가 있습니다. 모두 NAND 블록 손상으로 인해 손상되었습니다. 그러나 부트 환경을 사용하여 새 펌웨어 이미지를 플래시할 수 있습니다. 하지만 플래시 프로세스 중에 다음과 같은 여러 메시지가 표시되므로 이는 별로 도움이 되지 않습니다.

nandflash_block_erase(): 불량 낸드 블록 XXX를 삭제해 봅니다.

제 질문은 다음과 같습니다. 불량 블록 목록이 포함된 UBI 이미지를 생성하여 해당 블록이 포함된 UBI 볼륨에서 기본적으로 사용되지 않도록 할 수 있습니까?

감사해요!

답변1

그래서 약간의 조사 끝에 필요한 정보를 직접 찾았습니다.

아주 간단히 말해서, UBI 이미지에는 블록을 찾을 위치를 알려주는 "불량 블록 목록"이나 기타 정보가 필요하지 않습니다(손상된 NAND 블록으로 인해 플래시 중에 일부가 재배치된 경우). UBI는 블록에 대해 특정 순서를 지정할 필요조차 없습니다. 이는 UBI 드라이버가 필요한 메타데이터를 얻기 위해 초기화할 때 모든 NAND 블록의 시작 부분을 먼저 읽기 때문에 가능합니다.

UBI 이미지를 NAND에 올바르게 플래시하려면 불량 NAND 블록을 건너뛰는 것 이상의 몇 가지 단계가 필요합니다. 세부정보를 확인하실 수 있습니다여기.

Broadcom CFE 부팅 환경에서는 플래싱 중에 "불량 블록 삭제/쓰기 시도 중" 오류가 많이 발생하기 때문에 불량 블록이 있는 NAND 플래시 영역에 UBI 이미지를 제대로 쓸 수 없다고 가정해야 합니다.

관련 정보