플래시 메모리 의 종류가 궁금 합니다.
글쓴이: loveteaeun / 작성시간: 금, 2007/08/24 - 7:49오후
커널 소스를 보면 MTD_DATAFLASH 가 있고 MTD_NANDFLASH 가 있는데
이것 두개의 차이는 무엇인가요???
그리고 XIP 기술은 알겠는데 도대체 어떤식으로 이기술이 커널에 적용 되어 있나요?
CONFIG_JFFS2_FS_WRITEBUFFER 이 옵션의 역할이 무엇인가요?
Forums:
uboot를 분석하다
uboot를 분석하다 보시면 XIP에 관련된 내용이 나옵니다. 예전에 분석한 내용인데요. 주석을 보시면, code copy를 하지 않는 이유가 XIP일 경우에 대한 내용입니다. 참고하셨으면 좋겠네요. ^^
175 relocate: /* relocate U-Boot to RAM */
176 adr r0, _start /* r0 <- current position of code */
177 ldr r1, _TEXT_BASE /* test if we run from flash or RAM */
178 cmp r0, r1 /* don't reloc during debug */
179 /*
180 * _start와 _TEXT_BASE가 같다면 stack을 설정한다.
181 * 즉, _start와 _TEXT_BASE가 같다는 말은 현재 source 영역과 destination 영역이 같다는 것을 의미하기 때문에 따로
182 * u-boot code를 복사할 필요가 없어서 바로 stack을 설정하는 곳으로 jump한다.
183 */
184
185 beq stack_setup
186
187 ldr r2, _armboot_start
188 ldr r3, _bss_start
189 sub r2, r3, r2 /* r2 <- size of armboot */
190 add r2, r0, r2 /* r2 <- source end address */
191
192 /* flash 메모리에서 u-boot code를 ram으로 복사한다. */
193 copy_loop:
194 ldmia r0!, {r3-r10} /* copy from source address [r0] */
195 stmia r1!, {r3-r10} /* copy to target address [r1] */
196 cmp r0, r2 /* until source end addreee [r2] */
197 ble copy_loop
198 #endif /* CONFIG_SKIP_RELOCATE_UBOOT */
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
------------------------------------------------------
아직은 젊다. 모든 것을 할 수 있는 나이란 말이지.
댓글 달기