Creator CI20을 구하려고 합니다.SD 카드에서 부팅곧장.
다음 명령을 사용하여 기본 Linux 커널 4.9.20을 컴파일했습니다(노트북에서 debianstretch를 실행 중입니다).
$ make ARCH=mips ci20_defconfig
$ make ARCH=mips CROSS_COMPILE=mipsel-linux-gnu- uImage
Image Name: Linux-4.9.20
Created: Sat Jul 1 21:04:19 2017
Image Type: MIPS Linux Kernel Image (uncompressed)
Data Size: 5225712 Bytes = 5103.23 kB = 4.98 MB
Load Address: 80010000
Entry Point: 8034d0a0
Image arch/mips/boot/uImage is ready
arch/mips/boot/uImage
파일을 내 컴퓨터에 복사하면TFTP 위치, 커널이 정상적으로 부팅되도록 관리할 수 있습니다.
Hit any key to stop autoboot: 0
ci20# dhcp 0x88000000 192.168.0.14:uImage
ERROR: resetting DM9000 -> not responding
dm9000 i/o: 0xb6000000, id: 0x90000a46
DM9000: running in 8 bit mode
MAC: d0:31:10:ff:7d:02
operating at 100M full duplex mode
BOOTP broadcast 1
DHCP client bound to address 192.168.0.15
Using dm9000 device
TFTP from server 192.168.0.14; our IP address is 192.168.0.15
Filename 'uImage'.
Load address: 0x88000000
Loading: #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
################################
264.6 KiB/s
done
Bytes transferred = 4924012 (4b226c hex)
## Booting kernel from Legacy Image at 88000000 ...
Image Name: Linux-4.9.20
Image Type: MIPS Linux Kernel Image (uncompressed)
Data Size: 4923948 Bytes = 4.7 MiB
Load Address: 80010000
Entry Point: 803465e0
Verifying Checksum ... OK
Loading Kernel Image ... OK
Starting k[ 0.111767] jz4780-nemc 13410000.nemc: failed to calculate clock period
[ 0.148419] UBI error: cannot open mtd 3, error -19[ 0.153621] UBI error: cannot open mtd 4, error -19
[ 0.158775] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 0.167039] Rebooting in 10 seconds..bootm 0x88000000NAND: 8192 MiB
하지만 SD 카드에 복사하면 u-boot에서 다음과 같은 이상한 메시지가 나타납니다.
U-Boot 2013.10-rc3-g25f5638f9 (Jul 01 2017 - 16:30:50)
Board: ci20 (r1) (Ingenic XBurst JZ4780 SoC)
DRAM: 1 GiB
NAND: 8192 MiB
MMC: jz_mmc msc1: 0
In: eserial4
Out: eserial4
Err: eserial4
Net: dm9000
Hit any key to stop autoboot: 0
** File not found /boot/uImage **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
sdcard의 내용은 다음과 같습니다.
% tree /media/mathieu/466bcc7d-37c4-41f3-b83f-8ac6628eb2bb/boot
/media/mathieu/466bcc7d-37c4-41f3-b83f-8ac6628eb2bb/boot
├── uImage
└── vmlinux.img
0 directories, 2 files
파일 시스템은 다음과 같습니다
% mount
/dev/mmcblk0p1 on /media/mathieu/466bcc7d-37c4-41f3-b83f-8ac6628eb2bb type ext4 (rw,nosuid,nodev,relatime,data=ordered,uhelper=udisks2)
오류가 무엇인지에 대해 u-boot에서 추가 정보를 얻을 수 있는 방법이 있습니까?
답변1
@tom-rini가 설명했듯이 문제는 ext4에 자동으로 추가된 64비트입니다.
문서:
설명하다:
$ sudo mkfs.ext4 /dev/sdx1
대신 다음과 같이 말해야 합니다(최신 mkfs.ext4 명령의 경우).
$ sudo mkfs.ext4 -O^64bit,^metadata_csum /dev/sdx1
후손을 위해 제가 이것에 물린 것은 이번이 두 번째입니다.
마지막이길 바랍니다.