在线时间6 小时
UID3645429
注册时间2020-5-22
NXP金币0
TA的每日心情 | 慵懒 2020-6-16 16:59 |
---|
签到天数: 6 天 [LV.2]偶尔看看I
注册会员
- 积分
- 79
- 最后登录
- 2020-6-17
|
楼主 |
发表于 2020-6-11 11:07:48
|
显示全部楼层
我參照 example_kernel_emmc.uuu 重新寫了 uuu script:
SDP: boot -f u-boot.imx
# This command will be run when use SPL
SDPU: write -f u-boot.imx -offset 0x57c00
SDPU: jump
# This command will be run when ROM support stream mode
SDPS: boot -f u-boot.imx
# use uboot burn bootloader to eMMC
# becaue difference chip, offset is difference
# you can use kernel to do that for specific boards
FB: ucmd setenv fastboot_dev mmc
FB: ucmd setenv mmcdev ${emmc_dev}
FB: flash bootloader u-boot.imx
FB: ucmd setenv emmc_cmd mmc partconf ${emmc_dev} 0 1 0;
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi
FB: ucmd setenv emmc_cmd mmc bootbus ${emmc_dev} 2 2 1;
FB: ucmd if test "${emmc_skip_fb}" != "yes"; then run emmc_cmd; fi
FB: ucmd setenv fastboot_buffer ${loadaddr}
FB: download -f zImage
FB: ucmd setenv fastboot_buffer ${fdt_addr}
FB: download -f imx6qp-sabresd.dtb
FB: ucmd setenv fastboot_buffer ${initrd_addr}
FB: download -f fsl-image-mfgtool-initramfs-imx_mfgtools.cpio.gz.u-boot
#FB: ucmd setenv bootargs console=${console},${baudrate} earlycon=${earlycon},${baudrate}
FB: acmd ${kboot} ${loadaddr} ${initrd_addr} ${fdt_addr}
# get mmc dev number from kernel command line
# Wait for emmc
FBK: ucmd while [ ! -e /dev/mmcblk*boot0 ]; do sleep 1; echo "wait for /dev/mmcblk*boot* appear"; done;
# serach emmc device number, if your platform have more than two emmc chip, please echo dev number >/tmp/mmcdev
FBK: ucmd dev=`ls /dev/mmcblk*boot*`; dev=($dev); dev=${dev[0]}; dev=${dev#/dev/mmcblk}; dev=${dev%boot*}; echo $dev > /tmp/mmcdev;
# create partition
FBK: ucmd mmc=`cat /tmp/mmcdev`; PARTSTR=$'10M,650M,0c\n660M,,83\n'; echo "$PARTSTR" | sfdisk --force /dev/mmcblk${mmc}
FBK: ucmd mmc=`cat /tmp/mmcdev`; dd if=/dev/zero of=/dev/mmcblk${mmc} bs=1k seek=4096 count=1
FBK: ucmd sync
# you can enable below command to write boot partition. but offset is difference at difference platform
# burn uboot
#FBK: ucmd mmc=`cat /tmp/mmcdev`; echo 0 > /sys/block/mmcblk${mmc}boot0/force_ro
#FBK: ucp u-boot.imx t:/tmp
#FBK: ucmd mmc=`cat /tmp/mmcdev`; dd if=/tmp/u-boot.imx of=/dev/mmc${mmc}boot0 bs=1K seek=32
#FBK: ucmd mmc=`cat /tmp/mmcdev`; echo 1 > /sys/block/mmcblk${mmc}boot0/force_ro
FBK: ucmd mmc=`cat /tmp/mmcdev`; while [ ! -e /dev/mmcblk${mmc}p1 ]; do sleep 1; done
FBK: ucmd mmc=`cat /tmp/mmcdev`; mkfs.vfat /dev/mmcblk${mmc}p1
# burn kernel
FBK: ucmd mmc=`cat /tmp/mmcdev`; mkdir -p /mnt/fat
FBK: ucmd mmc=`cat /tmp/mmcdev`; mount -t vfat /dev/mmcblk${mmc}p1 /mnt/fat
FBK: ucp zImage t:/mnt/fat
FBK: ucp imx6qp-sabresd.dtb t:/mnt/fat
FBK: ucmd umount /mnt/fat
# burn rootfs
FBK: ucmd mmc=`cat /tmp/mmcdev`; mkfs.ext3 -F -E nodiscard /dev/mmcblk${mmc}p2
FBK: ucmd mkdir -p /mnt/ext3
FBK: ucmd mmc=`cat /tmp/mmcdev`; mount /dev/mmcblk${mmc}p2 /mnt/ext3
FBK: acmd export EXTRACT_UNSAFE_SYMLINKS=1; tar -jx -C /mnt/ext3
FBK: ucp rootfs.tar.bz2 t:-
FBK: Sync
# burn kernel modules
FBK: ucmd rm -rf /mnt/ext3/lib/modules/*
FBK: ucp moudules.tar.bz2 t:-
FBK: Sync
FBK: ucmd umount /mnt/ext3
FBK: DONE
雖然這個燒錄,但常常在燒 rootfs 時出錯:Start Cmd:FBK: ucp lvirootfs.tar.bz2 t:-
58%1:4>Fail Bulk(W)IBUSB_ERROR_TIMEOUT(210.2s)
板子上 log:
run shell cmd: mmc=`cat /tmp/mmcdev`; mkfs.ext3 -F -E nodiscard /dev/mmcblk${mmc}p2
mke2fs 1.43-WIP (18-May-2015)
random: mkfs.ext3: uninitialized urandom read (16 bytes read)
random: mkfs.ext3: uninitialized urandom read (16 bytes read)
random: crng init done
run shell cmd: mkdir -p /mnt/ext3
run shell cmd: mmc=`cat /tmp/mmcdev`; mount /dev/mmcblk${mmc}p2 /mnt/ext3
EXT4-fs (mmcblk3p2): mounting ext3 file system using the ext4 subsystem
EXT4-fs (mmcblk3p2): mounted filesystem with ordered data mode. Opts: (null)
run shell cmd: export EXTRACT_UNSAFE_SYMLINKS=1; tar -jx -C /mnt/ext3
WOpen:-
ufb: page allocation failure: order:4, mode:0x14040c0(GFP_KERNEL|__GFP_COMP), nodemask=(null)
CPU: 0 PID: 88 Comm: ufb Not tainted 4.14.62 #27
Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[<8010eca8>] (unwind_backtrace) from [<8010b410>] (show_stack+0x10/0x14)
[<8010b410>] (show_stack) from [<806f3044>] (dump_stack+0x78/0x8c)
[<806f3044>] (dump_stack) from [<801b9558>] (warn_alloc+0xbc/0x164)
[<801b9558>] (warn_alloc) from [<801ba0a4>] (__alloc_pages_nodemask+0xa08/0xd84)
[<801ba0a4>] (__alloc_pages_nodemask) from [<801d1c84>] (kmalloc_order+0x18/0x28)
[<801d1c84>] (kmalloc_order) from [<80498668>] (ffs_epfile_io+0x17c/0x530)
[<80498668>] (ffs_epfile_io) from [<80498c60>] (ffs_epfile_read_iter+0x100/0x174)
[<80498c60>] (ffs_epfile_read_iter) from [<801fbf60>] (__vfs_read+0xd0/0x11c)
[<801fbf60>] (__vfs_read) from [<801fc038>] (vfs_read+0x8c/0x110)
[<801fc038>] (vfs_read) from [<801fc4b8>] (SyS_read+0x3c/0x90)
[<801fc4b8>] (SyS_read) from [<80107900>] (ret_fast_syscall+0x0/0x54)
Mem-Info:
active_anon:2675 inactive_anon:3991 isolated_anon:0
active_file:4489 inactive_file:43836 isolated_file:32
unevictable:0 dirty:3857 writeback:846 unstable:0
slab_reclaimable:4851 slab_unreclaimable:2474
mapped:666 shmem:5609 pagetables:29 bounce:0
free:26662 free_pcp:77 free_cma:23259
Node 0 active_anon:10700kB inactive_anon:15964kB active_file:17956kB inactive_file:159376kB unevictable:0kB isolated(anon):0kB isolated(file):0kB mapped:2664kB dirty:15428kB writeback:3060kB shmem:22436kB writeback_tmp:0kB unstable:0kB all_unreclaimable? no
Normal free:140192kB min:1648kB low:2060kB high:2472kB active_anon:10708kB inactive_anon:15964kB active_file:17956kB inactive_file:144200kB unevictable:0kB writepending:18428kB present:524288kB managed:507604kB mlocked:0kB kernel_stack:592kB pagetables:116kB bounce:0kB free_pcp:304kB local_pcp:152kB free_cma:123404kB
lowmem_reserve[]: 0 0 0
Normal: 1487*4kB (MEHC) 1152*8kB (MEHC) 1080*16kB (MEC) 1228*32kB (MEHC) 503*64kB (UMEC) 171*128kB (MEC) 86*256kB (MEC) 19*512kB (C) 3*1024kB (C) 0*2048kB 0*4096kB 0*8192kB 0*16384kB 0*32768kB = 160636kB
41042 total pagecache pages
0 pages in swap cache
Swap cache stats: add 0, delete 0, find 0/0
Free swap = 0kB
Total swap = 0kB
131072 pages RAM
0 pages HighMem/MovableOnly
4171 pages reserved
81920 pages cma reserved
tar: invalid tar magic |
|