20170922_jeffrey - silenceuncrio/diary GitHub Wiki

0855

今天 focus 在 mfgtool

依據 NXP community 的 Cannot boot from eMMC i.mx6UL EVK

for mfg tool one can look at script
mfgtool2-yocto-mx-evk-sdcard-sd2.vbs,
since eMMC is used instead SD2, it should work for it.
For using procedure in the Linux User's Guide one can try first boot
from qspi.

解開 L4.1.15_1.0.0_ga-mfg-tools.tar.gz 後再解開 mfgtools-with-rootfs.tar.gz

得到 mfgtools 目錄

分別看到 mfgtool2-yocto-mx-evk-sdcard-sd1.vbsmfgtool2-yocto-mx-evk-sdcard-sd2.vbs 的內容

mfgtool2-yocto-mx-evk-sdcard-sd1.vbs

Set wshShell = CreateObject("WScript.shell")
wshShell.run "mfgtool2.exe -c ""linux"" -l ""SDCard"" -s ""board=sabresd"" -s ""mmc=0"" -s ""6uluboot=evk"" -s ""6uldtb=14x14-evk"" "
Set wshShell = Nothing

mfgtool2-yocto-mx-evk-sdcard-sd2.vbs

Set wshShell = CreateObject("WScript.shell")
wshShell.run "mfgtool2.exe -c ""linux"" -l ""SDCard"" -s ""board=sabresd"" -s ""mmc=1"" -s ""6uluboot=evk"" -s ""6uldtb=14x14-evk"" "
Set wshShell = Nothing

差別在某一個 -s 的參數值

  • mfgtool2-yocto-mx-evk-sdcard-sd1.vbs
    • -s ""mmc=0""
  • mfgtool2-yocto-mx-evk-sdcard-sd2.vbs
    • -s ""mmc=1""

0925

來整理一下 mfgtools\Profiles\Linux\OS Firmware\ucl2.xml

只留 <LIST name="SDCard" desc="Choose SD Card as media"> 的部分

<UCL>
  <CFG>
    <STATE name="BootStrap" dev="MX6SL" vid="15A2" pid="0063"/>
    <STATE name="BootStrap" dev="MX6D" vid="15A2" pid="0061"/>
    <STATE name="BootStrap" dev="MX6Q" vid="15A2" pid="0054"/>
    <STATE name="BootStrap" dev="MX6SX" vid="15A2" pid="0071"/>
    <STATE name="BootStrap" dev="MX6UL" vid="15A2" pid="007D"/>
    <STATE name="BootStrap" dev="MX7D" vid="15A2" pid="0076"/>
    <STATE name="Updater"   dev="MSC" vid="066F" pid="37FF"/>
  </CFG>

  

  <LIST name="SDCard" desc="Choose SD Card as media">
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6q%plus%%board%_sd.imx" ifdev="MX6Q">Loading U-boot</CMD>
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6dl%board%_sd.imx" ifdev="MX6D">Loading U-boot</CMD>
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6slevk_sd.imx" ifdev="MX6SL">Loading U-boot</CMD>
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6sx%sxuboot%_sd.imx" ifdev="MX6SX">Loading U-boot</CMD>
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx7d%7duboot%_sd.imx" ifdev="MX7D">Loading U-boot</CMD>
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6ul%6uluboot%_sd.imx" ifdev="MX6UL">Loading U-boot</CMD>
		
	<CMD state="BootStrap" type="load" file="firmware/zImage" address="0x12000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6Q MX6D">Loading Kernel.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage" address="0x80800000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL">Loading Kernel.</CMD>

	<CMD state="BootStrap" type="load" file="firmware/%initramfs%" address="0x12C00000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6Q MX6D">Loading Initramfs.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/%initramfs%" address="0x83800000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL">Loading Initramfs.</CMD>

	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6q%plus%-%board%%ldo%.dtb" address="0x18000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6Q">Loading device tree.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6dl-%board%%ldo%.dtb" address="0x18000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6D">Loading device tree.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6sl-evk%ldo%.dtb" address="0x83000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL">Loading device tree.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6sx-%sxdtb%.dtb" address="0x83000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SX">Loading device tree.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage-imx7d-%7ddtb%.dtb" address="0x83000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX7D">Loading device tree.</CMD>
	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6ul-%6uldtb%%ldo%.dtb" address="0x83000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6UL">Loading device tree.</CMD>


	<CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>


	<!-- create partition -->
	<CMD state="Updater" type="push" body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
	<CMD state="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD>
	<CMD state="Updater" type="push" body="$ sh mksdcard.sh /dev/mmcblk%mmc%"> Partitioning...</CMD>

	<!-- burn uboot -->
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6q%plus%%board%_sd.imx" ifdev="MX6Q">Sending u-boot.bin</CMD>
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6dl%board%_sd.imx" ifdev="MX6D">Sending u-boot.bin</CMD>
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6slevk_sd.imx" ifdev="MX6SL">Sending u-boot.bin</CMD>
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6sx%sxuboot%_sd.imx" ifdev="MX6SX">Sending u-boot.bin</CMD>
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx7d%7duboot%_sd.imx" ifdev="MX7D">Sending u-boot.bin</CMD>
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6ul%6uluboot%_sd.imx" ifdev="MX6UL">Sending u-boot.bin</CMD>

	<CMD state="Updater" type="push" body="$ dd if=/dev/zero of=/dev/mmcblk%mmc% bs=1k seek=384 conv=fsync count=129">clear u-boot arg</CMD>
	<CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk%mmc% bs=1k seek=1 conv=fsync">write u-boot.bin to sd card</CMD>

	<CMD state="Updater" type="push" body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo \"waiting...\"; done ">Waiting for the partition ready</CMD>
	<CMD state="Updater" type="push" body="$ mkfs.vfat /dev/mmcblk%mmc%p1">Formatting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p1"/>
	<CMD state="Updater" type="push" body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"/>

	<!-- burn zImage -->
	<CMD state="Updater" type="push" body="send" file="files/zImage">Sending kernel</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/zImage">write kernel image to sd card</CMD>

	<!-- burn dtb -->
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6q%plus%-%board%%ldo%.dtb" ifdev="MX6Q">Sending Device Tree file</CMD>
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6dl-%board%%ldo%.dtb" ifdev="MX6D">Sending Device Tree file</CMD>
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6sl-evk%ldo%.dtb" ifdev="MX6SL">Sending Device Tree file</CMD>
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6sx-%sxdtb%.dtb" ifdev="MX6SX">Sending Device Tree file</CMD>
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx7d-%7ddtb%.dtb" ifdev="MX7D">Sending Device Tree file</CMD>
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6ul-%6uldtb%%ldo%.dtb" ifdev="MX6UL">Sending Device Tree file</CMD>

	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6q%plus%-%board%.dtb" ifdef="MX6Q">write device tree to sd card</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6dl-%board%.dtb" ifdef="MX6D">write device tree to sd card</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6sl-evk.dtb" ifdef="MX6SL">write device tree to sd card</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6sx-%sxdtb%.dtb" ifdef="MX6SX">write device tree to sd card</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx7d-%7ddtb%.dtb" ifdef="MX7D">write device tree to sd card</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6ul-%6uldtb%.dtb" ifdef="MX6UL">write device tree to sd card</CMD>


	<CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p1">Unmounting vfat partition</CMD>

	<!-- burn rootfs -->
	<CMD state="Updater" type="push" body="$ mkfs.ext3 -j /dev/mmcblk%mmc%p2">Formatting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p2"/>
	<CMD state="Updater" type="push" body="$ mount -t ext3 /dev/mmcblk%mmc%p2 /mnt/mmcblk%mmc%p2"/>
	<CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs.tar.bz2" ifdev="MX6SL MX6D MX6Q MX6SX">Sending and writting rootfs</CMD>
	<CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs_nogpu.tar.bz2" ifdev="MX6UL MX7D">Sending and writting rootfs</CMD>
	<CMD state="Updater" type="push" body="frf">Finishing rootfs write</CMD>
	<CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p2">Unmounting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ echo Update Complete!">Done</CMD>
  </LIST>

只留 ifdev="MX6UL" 的部分

<UCL>
  <CFG>
    <STATE name="BootStrap" dev="MX6SL" vid="15A2" pid="0063"/>
    <STATE name="BootStrap" dev="MX6D" vid="15A2" pid="0061"/>
    <STATE name="BootStrap" dev="MX6Q" vid="15A2" pid="0054"/>
    <STATE name="BootStrap" dev="MX6SX" vid="15A2" pid="0071"/>
    <STATE name="BootStrap" dev="MX6UL" vid="15A2" pid="007D"/>
    <STATE name="BootStrap" dev="MX7D" vid="15A2" pid="0076"/>
    <STATE name="Updater"   dev="MSC" vid="066F" pid="37FF"/>
  </CFG>

  

  <LIST name="SDCard" desc="Choose SD Card as media">
	<CMD state="BootStrap" type="boot" body="BootStrap" file ="firmware/u-boot-imx6ul%6uluboot%_sd.imx" ifdev="MX6UL">Loading U-boot</CMD>
		
	<CMD state="BootStrap" type="load" file="firmware/zImage" address="0x80800000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL">Loading Kernel.</CMD>

	<CMD state="BootStrap" type="load" file="firmware/%initramfs%" address="0x83800000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6SL MX6SX MX7D MX6UL">Loading Initramfs.</CMD>

	<CMD state="BootStrap" type="load" file="firmware/zImage-imx6ul-%6uldtb%%ldo%.dtb" address="0x83000000"
		loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" ifdev="MX6UL">Loading device tree.</CMD>


	<CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>


	<!-- create partition -->
	<CMD state="Updater" type="push" body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
	<CMD state="Updater" type="push" body="$ tar xf $FILE "> Partitioning...</CMD>
	<CMD state="Updater" type="push" body="$ sh mksdcard.sh /dev/mmcblk%mmc%"> Partitioning...</CMD>

	<!-- burn uboot -->
	<CMD state="Updater" type="push" body="send" file="files/u-boot-imx6ul%6uluboot%_sd.imx" ifdev="MX6UL">Sending u-boot.bin</CMD>

	<CMD state="Updater" type="push" body="$ dd if=/dev/zero of=/dev/mmcblk%mmc% bs=1k seek=384 conv=fsync count=129">clear u-boot arg</CMD>
	<CMD state="Updater" type="push" body="$ dd if=$FILE of=/dev/mmcblk%mmc% bs=1k seek=1 conv=fsync">write u-boot.bin to sd card</CMD>

	<CMD state="Updater" type="push" body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo \"waiting...\"; done ">Waiting for the partition ready</CMD>
	<CMD state="Updater" type="push" body="$ mkfs.vfat /dev/mmcblk%mmc%p1">Formatting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p1"/>
	<CMD state="Updater" type="push" body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"/>

	<!-- burn zImage -->
	<CMD state="Updater" type="push" body="send" file="files/zImage">Sending kernel</CMD>
	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/zImage">write kernel image to sd card</CMD>

	<!-- burn dtb -->
	<CMD state="Updater" type="push" body="send" file="files/zImage-imx6ul-%6uldtb%%ldo%.dtb" ifdev="MX6UL">Sending Device Tree file</CMD>

	<CMD state="Updater" type="push" body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6ul-%6uldtb%.dtb" ifdef="MX6UL">write device tree to sd card</CMD>


	<CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p1">Unmounting vfat partition</CMD>

	<!-- burn rootfs -->
	<CMD state="Updater" type="push" body="$ mkfs.ext3 -j /dev/mmcblk%mmc%p2">Formatting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ mkdir -p /mnt/mmcblk%mmc%p2"/>
	<CMD state="Updater" type="push" body="$ mount -t ext3 /dev/mmcblk%mmc%p2 /mnt/mmcblk%mmc%p2"/>
	<CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs.tar.bz2" ifdev="MX6SL MX6D MX6Q MX6SX">Sending and writting rootfs</CMD>
	<CMD state="Updater" type="push" body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs_nogpu.tar.bz2" ifdev="MX6UL MX7D">Sending and writting rootfs</CMD>
	<CMD state="Updater" type="push" body="frf">Finishing rootfs write</CMD>
	<CMD state="Updater" type="push" body="$ umount /mnt/mmcblk%mmc%p2">Unmounting rootfs partition</CMD>
	<CMD state="Updater" type="push" body="$ echo Update Complete!">Done</CMD>
  </LIST>

盤一下有什麼變數要參考別的地方

  • file ="firmware/u-boot-imx6ul%6uluboot%_sd.imx"
    • 6uluboot
  • file="firmware/zImage-imx6ul-%6uldtb%%ldo%.dtb"
    • 6uldtb
    • ldo
  • body="$ sh mksdcard.sh /dev/mmcblk%mmc%"
    • mmc
  • file="files/u-boot-imx6ul%6uluboot%_sd.imx"
    • 6uluboot
  • of=/dev/mmcblk%mmc%
    • mmc
  • body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo "waiting..."; done "
    • mmc
  • body="$ mkfs.vfat /dev/mmcblk%mmc%p1"
    • mmc
  • body="$ mkdir -p /mnt/mmcblk%mmc%p1"
    • mmc
  • body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"
    • mmc
  • body="$ cp $FILE /mnt/mmcblk%mmc%p1/zImage"
    • mmc
  • file="files/zImage-imx6ul-%6uldtb%%ldo%.dtb"
    • 6uldtb
    • ldo
  • body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6ul-%6uldtb%.dtb"
    • mmc
    • 6uldtb
  • body="$ umount /mnt/mmcblk%mmc%p1"
    • mmc
  • body="$ mkfs.ext3 -j /dev/mmcblk%mmc%p2"
    • mmc
  • body="$ mkdir -p /mnt/mmcblk%mmc%p2"
    • mmc
  • body="$ mount -t ext3 /dev/mmcblk%mmc%p2 /mnt/mmcblk%mmc%p2"
    • mmc
  • body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2"
    • mmc
  • body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2"
    • mmc
  • body="$ umount /mnt/mmcblk%mmc%p2"
    • mmc

看看有幾個變數

  • 6uluboot
  • 6uldtb
  • ldo
  • mmc

參考 mfgtools\cfg.ini 得到

  • 6uluboot
    • 6uluboot=14x14ddr3arm2
  • 6uldtb
    • 6uldtb=14x14-ddr3-arm2
  • ldo
    • ldo=
  • mmc
    • mmc = 0

因為執行 mfgtools\mfgtool2-yocto-mx-evk-sdcard-sd2.vbs 來把 mfgtool2.exe 帶起來的緣故

mmc 會在被設定成 1

除了 mmc 變數其餘都直接替換掉真正的值

再把 ifdev 敘述拿掉

1000

M300 週會

目前 Azuretec 客戶躍昇為 priority one

聽說已經要下 300 台了

1305

繼續整理 mfgtools\Profiles\Linux\OS Firmware\ucl2.xml

ifdev 敘述拿掉

<UCL>
  <CFG>
    <STATE name="BootStrap" dev="MX6SL" vid="15A2" pid="0063"/>
    <STATE name="BootStrap" dev="MX6D" vid="15A2" pid="0061"/>
    <STATE name="BootStrap" dev="MX6Q" vid="15A2" pid="0054"/>
    <STATE name="BootStrap" dev="MX6SX" vid="15A2" pid="0071"/>
    <STATE name="BootStrap" dev="MX6UL" vid="15A2" pid="007D"/>
    <STATE name="BootStrap" dev="MX7D" vid="15A2" pid="0076"/>
    <STATE name="Updater"   dev="MSC" vid="066F" pid="37FF"/>
  </CFG>

  <LIST name="SDCard" desc="Choose SD Card as media">

  <CMD state="BootStrap" type="boot" 
    body="BootStrap" file ="firmware/u-boot-imx6ul14x14ddr3arm2_sd.imx">Loading U-boot</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/zImage" address="0x80800000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE">Loading Kernel.</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/%initramfs%" address="0x83800000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE">Loading Initramfs.</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/zImage-imx6ul-14x14-ddr3-arm2.dtb" address="0x83000000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading device tree.</CMD>
  <CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>



  <!-- create partition -->
  <CMD state="Updater" type="push" 
    body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
  <CMD state="Updater" type="push" 
    body="$ tar xf $FILE "> Partitioning...</CMD>
  <CMD state="Updater" type="push" 
    body="$ sh mksdcard.sh /dev/mmcblk%mmc%"> Partitioning...</CMD>



  <!-- burn uboot -->
  <CMD state="Updater" type="push" 
    body="send" file="files/u-boot-imx6ul14x14ddr3arm2_sd.imx">Sending u-boot.bin</CMD>
  <CMD state="Updater" type="push" 
    body="$ dd if=/dev/zero of=/dev/mmcblk%mmc% bs=1k seek=384 conv=fsync count=129">clear u-boot arg</CMD>
  <CMD state="Updater" type="push" 
    body="$ dd if=$FILE of=/dev/mmcblk%mmc% bs=1k seek=1 conv=fsync">write u-boot.bin to sd card</CMD>
  <CMD state="Updater" type="push" 
    body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo \"waiting...\"; done ">Waiting for the partition ready</CMD>
  <CMD state="Updater" type="push" 
    body="$ mkfs.vfat /dev/mmcblk%mmc%p1">Formatting rootfs partition</CMD>
  <CMD state="Updater" type="push" 
    body="$ mkdir -p /mnt/mmcblk%mmc%p1"/>
  <CMD state="Updater" type="push" 
    body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"/>



  <!-- burn zImage -->
  <CMD state="Updater" type="push" 
    body="send" file="files/zImage">Sending kernel</CMD>
  <CMD state="Updater" type="push" 
    body="$ cp $FILE /mnt/mmcblk%mmc%p1/zImage">write kernel image to sd card</CMD>



  <!-- burn dtb -->
  <CMD state="Updater" type="push" 
    body="send" file="files/zImage-imx6ul-14x14-ddr3-arm2.dtb" ifdev="MX6UL">Sending Device Tree file</CMD>
  <CMD state="Updater" type="push" 
    body="$ cp $FILE /mnt/mmcblk%mmc%p1/imx6ul-14x14-ddr3-arm2.dtb" ifdef="MX6UL">write device tree to sd card</CMD>
  <CMD state="Updater" type="push" 
    body="$ umount /mnt/mmcblk%mmc%p1">Unmounting vfat partition</CMD>



  <!-- burn rootfs -->
  <CMD state="Updater" type="push" 
    body="$ mkfs.ext3 -j /dev/mmcblk%mmc%p2">Formatting rootfs partition</CMD>
  <CMD state="Updater" type="push" 
    body="$ mkdir -p /mnt/mmcblk%mmc%p2"/>
  <CMD state="Updater" type="push" 
    body="$ mount -t ext3 /dev/mmcblk%mmc%p2 /mnt/mmcblk%mmc%p2"/>
  <CMD state="Updater" type="push" 
    body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs.tar.bz2" ifdev="MX6SL MX6D MX6Q MX6SX">Sending and writting rootfs</CMD>
  <CMD state="Updater" type="push" 
    body="pipe tar -jxv -C /mnt/mmcblk%mmc%p2" file="files/rootfs_nogpu.tar.bz2" ifdev="MX6UL MX7D">Sending and writting rootfs</CMD>
  <CMD state="Updater" type="push" 
    body="frf">Finishing rootfs write</CMD>
  <CMD state="Updater" type="push" 
    body="$ umount /mnt/mmcblk%mmc%p2">Unmounting rootfs partition</CMD>
  <CMD state="Updater" type="push" 
    body="$ echo Update Complete!">Done</CMD>
  </LIST>

理論上我可以只燒錄 uboot 觀察是否能開機才對

馬上改來試試

<UCL>
  <CFG>
    <STATE name="BootStrap" dev="MX6SL" vid="15A2" pid="0063"/>
    <STATE name="BootStrap" dev="MX6D" vid="15A2" pid="0061"/>
    <STATE name="BootStrap" dev="MX6Q" vid="15A2" pid="0054"/>
    <STATE name="BootStrap" dev="MX6SX" vid="15A2" pid="0071"/>
    <STATE name="BootStrap" dev="MX6UL" vid="15A2" pid="007D"/>
    <STATE name="BootStrap" dev="MX7D" vid="15A2" pid="0076"/>
    <STATE name="Updater"   dev="MSC" vid="066F" pid="37FF"/>
  </CFG>

  <LIST name="SDCard" desc="Choose SD Card as media">

  <CMD state="BootStrap" type="boot" 
    body="BootStrap" file ="firmware/u-boot-imx6ul14x14ddr3arm2_sd.imx">Loading U-boot</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/zImage" address="0x80800000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE">Loading Kernel.</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/%initramfs%" address="0x83800000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE">Loading Initramfs.</CMD>
  <CMD state="BootStrap" type="load" 
    file="firmware/zImage-imx6ul-14x14-ddr3-arm2.dtb" address="0x83000000"
    loadSection="OTH" setSection="OTH" HasFlashHeader="FALSE" >Loading device tree.</CMD>
  <CMD state="BootStrap" type="jump" > Jumping to OS image. </CMD>



  <!-- create partition -->
  <CMD state="Updater" type="push" 
    body="send" file="mksdcard.sh.tar">Sending partition shell</CMD>
  <CMD state="Updater" type="push" 
    body="$ tar xf $FILE "> Partitioning...</CMD>
  <CMD state="Updater" type="push" 
    body="$ sh mksdcard.sh /dev/mmcblk%mmc%"> Partitioning...</CMD>



  <!-- burn uboot -->
  <CMD state="Updater" type="push" 
    body="send" file="files/u-boot-imx6ul14x14ddr3arm2_sd.imx">Sending u-boot.bin</CMD>
  <CMD state="Updater" type="push" 
    body="$ dd if=/dev/zero of=/dev/mmcblk%mmc% bs=1k seek=384 conv=fsync count=129">clear u-boot arg</CMD>
  <CMD state="Updater" type="push" 
    body="$ dd if=$FILE of=/dev/mmcblk%mmc% bs=1k seek=1 conv=fsync">write u-boot.bin to sd card</CMD>
  <CMD state="Updater" type="push" 
    body="$ while [ ! -e /dev/mmcblk%mmc%p1 ]; do sleep 1; echo \"waiting...\"; done ">Waiting for the partition ready</CMD>
  <CMD state="Updater" type="push" 
    body="$ mkfs.vfat /dev/mmcblk%mmc%p1">Formatting rootfs partition</CMD>
  <CMD state="Updater" type="push" 
    body="$ mkdir -p /mnt/mmcblk%mmc%p1"/>
  <CMD state="Updater" type="push" 
    body="$ mount -t vfat /dev/mmcblk%mmc%p1 /mnt/mmcblk%mmc%p1"/>



  <CMD state="Updater" type="push" 
    body="$ echo Update Complete!">Done</CMD>

  </LIST>

1325

使用 mfgtool 時接上 console 可以看到

MfgTool 工具停在 Jumping to OS image.

device console 顯示如下

U-Boot 2015.04-imx_v2015.04_4.1.15_1.0.0_ga+g384e1c1 (Mar 13 2016 - 17:40:51)

CPU:   Freescale i.MX6UL rev1.2 at 396 MHz
CPU:   Temperature 45 C
Reset cause: POR
Board: MX6UL 14X14 DDR3 ARM2
I2C:   ready
DRAM:  1 GiB
force_idle_bus: sda=1 scl=0 sda.gp=0x3 scl.gp=0x2
Can't find PMIC:PFUZE100
initcall sequence bff92ec0 failed at call 87803280 (err=-1)
### ERROR ### Please RESET the board ###

1345

想說這樣的錯誤只在 ramfs 裡的 uboot

索性就換成我們目前 mfgtool 在用的 mfgtools\Profiles\Linux\OS Firmware\firmware\u-boot-m300.imx-nand

console 顯示如下

U-Boot 2015.04imx_v2015.04_4.1.15_1.2.0_ga+gede7538 (Jan 26 2017 - 04:01:06)

CPU:   Freescale i.MX6UL rev1.2 at 396 MHz
CPU:   Temperature 45 C
Reset cause: POR
Board: MX6UL 14x14 EVK
I2C:   ready
DRAM:  512 MiB
force_idle_bus: sda=0 scl=0 sda.gp=0x1d scl.gp=0x1c
NAND:  0 MiB
MMC:   FSL_SDHC: 0
*** Warning - readenv() failed, using default environment

Display: TFT43AB (480x272)
Video: 480x272x24
In:    serial
Out:   serial
Err:   serial
Net:   FEC1
Error: FEC1 address not set.

Boot from USB for mfgtools
Use default environment for                              mfgtools
Run bootcmd_mfg: run mfgtool_args;bootz ${loadaddr} ${initrd_addr} ${fdt_addr};
Hit any key to stop autoboot:  0
Kernel image @ 0x80800000 [ 0x000000 - 0x552a48 ]
## Loading init Ramdisk from Legacy Image at 83800000 ...
   Image Name:   fsl-image-mfgtool-initramfs-imx6
   Image Type:   ARM Linux RAMDisk Image (gzip compressed)
   Data Size:    7542315 Bytes = 7.2 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 83000000
   Booting using the fdt blob at 0x83000000
   Using Device Tree in place at 83000000, end 8300b875

Starting kernel ...

Booting Linux on physical CPU 0x0
Linux version 4.1.15-1.0.0-mfgtool+g3924425 (bamboo@shlinux12) (gcc version 5.2.0 (GCC) ) #1 SMP PREEMPT Sun Mar 13 17:19:17 CST 2016
CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine model: Freescale i.MX6 UltraLite 14x14 EVK Board
cma: Reserved 320 MiB at 0x8c000000
Memory policy: Data cache writealloc
PERCPU: Embedded 12 pages/cpu @8bb32000 s16768 r8192 d24192 u49152
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048
Kernel command line: console=ttymxc0,115200 rdinit=/linuxrc g_mass_storage.stall=0 g_mass_storage.removable=1 g_mass_storage.idVendor=0x066F g_mass_storage.idProduct=0x37FF g_mass_storage.iSerialNumber= mtdparts=gpmi-nand:3m(boot),1m(boot_env),10m(kernel_a),2m(dtb_a),96m(rootfs_a),16m(config_a),4m(misc),10m(kernel_b),2m(dtb_b),96m(rootfs_b),-(config_b)
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 173432K/524288K available (6895K kernel code, 319K rwdata, 2412K rodata, 388K init, 423K bss, 23176K reserved, 327680K cma-reserved, 0K highmem)
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
    vmalloc : 0xa0800000 - 0xff000000   (1512 MB)
    lowmem  : 0x80000000 - 0xa0000000   ( 512 MB)
    pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)
    modules : 0x7f000000 - 0x7fe00000   (  14 MB)
      .text : 0x80008000 - 0x8091ef88   (9308 kB)
      .init : 0x8091f000 - 0x80980000   ( 388 kB)
      .data : 0x80980000 - 0x809cff00   ( 320 kB)
       .bss : 0x809d2000 - 0x80a3bf14   ( 424 kB)
SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Preemptible hierarchical RCU implementation.
        Additional per-CPU info printed with stalls.
        RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
NR_IRQS:16 nr_irqs:16 16
------------[ cut here ]------------
WARNING: CPU: 0 PID: 0 at /home2/bamboo/build/4.1.X-1.0.0_ga/fsl-imx-x11/temp_build_dir/build_fsl-imx-x11/tmp/work-shared/imx6qdlsolo/kernel-mfgtool-source/arch/arm/mach-imx/gpc.c:581 imx_gpc_check_dt+0x4c/0x8c()
Modules linked in:
CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.15-1.0.0-mfgtool+g3924425 #1
Hardware name: Freescale i.MX6 Ultralite (Device Tree)
[<80015ee4>] (unwind_backtrace) from [<80012774>] (show_stack+0x10/0x14)
[<80012774>] (show_stack) from [<8068fca4>] (dump_stack+0x80/0xc8)
[<8068fca4>] (dump_stack) from [<80035f5c>] (warn_slowpath_common+0x74/0xb0)
[<80035f5c>] (warn_slowpath_common) from [<80036034>] (warn_slowpath_null+0x1c/0x24)
[<80036034>] (warn_slowpath_null) from [<8092c9fc>] (imx_gpc_check_dt+0x4c/0x8c)
[<8092c9fc>] (imx_gpc_check_dt) from [<8093c8e4>] (imx6ul_init_irq+0x8/0x18)
[<8093c8e4>] (imx6ul_init_irq) from [<80922328>] (init_IRQ+0x28/0x80)
[<80922328>] (init_IRQ) from [<8091fad8>] (start_kernel+0x210/0x3a0)
[<8091fad8>] (start_kernel) from [<8000807c>] (0x8000807c)
---[ end trace cb88537fdc8fa200 ]---
Outdated DT detected, suspend/resume will NOT work
mxc_clocksource_init 24000000
Switching to timer-based delay loop, resolution 41ns
sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
clocksource mxc_timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
Console: colour dummy device 80x30
Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=240000)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
/cpus/cpu@0 missing clock-frequency property
CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
Setting up static identity map for 0x80008280 - 0x800082f0
Brought up 1 CPUs
SMP: Total of 1 processors activated (48.00 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
devtmpfs: initialized
device-tree: Duplicate name in lcdif@021c8000, renamed to "display#1"
VFP support v0.3: implementor 41 architecture 2 part 30 variant 7 rev 5
clocksource jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor ladder
cpuidle: using governor menu
hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
hw-breakpoint: maximum watchpoint size is 8 bytes.
imx6ul-pinctrl 20e0000.iomuxc: initialized IMX pinctrl driver
mxs-dma 1804000.dma-apbh: initialized
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
i2c i2c-0: IMX I2C adapter registered
i2c i2c-0: can't use DMA
i2c i2c-1: IMX I2C adapter registered
i2c i2c-1: can't use DMA
Linux video capture interface: v2.00
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
PTP clock support registered
Advanced Linux Sound Architecture Driver Initialized.
Switched to clocksource mxc_timer1
NET: Registered protocol family 2
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 3, 32768 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
Trying to unpack rootfs image as initramfs...
Freeing initrd memory: 7368K (83800000 - 83f32000)
imx rpmsg driver is registered.
Bus freq driver module loaded
futex hash table entries: 256 (order: 2, 16384 bytes)
VFS: Disk quotas dquot_6.6.0
VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
NFS: Registering the id_resolver key type
Key type id_resolver registered
Key type id_legacy registered
jffs2: version 2.2. (NAND) c 2001-2006 Red Hat, Inc.
fuse init (API version 7.23)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
imx-weim 21b8000.weim: Driver registered.
backlight supply power not found, using dummy regulator
21c8000.lcdif supply lcd not found, using dummy regulator
mxsfb 21c8000.lcdif: failed to find mxc display driver
Console: switching to colour frame buffer device 60x34
mxsfb 21c8000.lcdif: initialized
imx-sdma 20ec000.sdma: no event needs to be remapped
imx-sdma 20ec000.sdma: loaded firmware 3.3
imx-sdma 20ec000.sdma: initialized
2020000.serial: ttymxc0 at MMIO 0x2020000 (irq = 18, base_baud = 5000000) is a IMX
console [ttymxc0] enabled
21e8000.serial: ttymxc1 at MMIO 0x21e8000 (irq = 232, base_baud = 5000000) is a IMX
imx sema4 driver is registered.
[drm] Initialized drm 1.1.0 20060810
[drm] Initialized vivante 1.0.0 20120216 on minor 0
brd: module loaded
loop: module loaded
nand: No NAND device found
20b4000.ethernet supply phy not found, using dummy regulator
pps pps0: new PPS source ptp0
fec 20b4000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00
fec 20b4000.ethernet (unnamed net_device) (uninitialized): Using random MAC address: 72:7e:be:f9:86:07
libphy: fec_enet_mii_bus: probed
fec 20b4000.ethernet eth0: registered PHC device 0
2188000.ethernet supply phy not found, using dummy regulator
pps pps1: new PPS source ptp1
fec 2188000.ethernet (unnamed net_device) (uninitialized): Invalid MAC address: 00:00:00:00:00:00
fec 2188000.ethernet (unnamed net_device) (uninitialized): Using random MAC address: 96:30:16:91:17:00
fec 2188000.ethernet eth1: registered PHC device 1
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
ehci-mxc: Freescale On-Chip EHCI Host driver
usbcore: registered new interface driver usb-storage
2184800.usbmisc supply vbus-wakeup not found, using dummy regulator
2184000.usb supply vbus not found, using dummy regulator
2184200.usb supply vbus not found, using dummy regulator
ci_hdrc ci_hdrc.1: EHCI Host Controller
ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
Mass Storage Function, version: 2009/09/11
LUN: removable file: (no medium)
LUN: removable file: (no medium)
Number of LUNs=1
Number of LUNs=1
g_mass_storage gadget: Mass Storage Gadget, version: 2009/09/11
g_mass_storage gadget: g_mass_storage ready
mousedev: PS/2 mouse device common for all mice
input: iMX6UL TouchScreen Controller as /devices/platform/soc/2100000.aips-bus/2040000.tsc/input/input0
snvs_rtc 20cc034.snvs-rtc-lp: snvs rtc: you use old dts file, please update it
snvs_rtc 20cc034.snvs-rtc-lp: rtc core: registered 20cc034.snvs-rtc-lp as rtc0
i2c /dev entries driver
IR NEC protocol handler initialized
IR RC5(x/sz) protocol handler initialized
IR RC6 protocol handler initialized
IR JVC protocol handler initialized
IR Sony protocol handler initialized
IR SANYO protocol handler initialized
IR Sharp protocol handler initialized
IR MCE Keyboard/mouse protocol handler initialized
IR XMP protocol handler initialized
pxp-v4l2 pxp_v4l2: initialized
imx2-wdt 20bc000.wdog: timeout 60 sec (nowayout=0)
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
/soc/aips-bus@02100000/usdhc@02190000: voltage-ranges unspecified
sdhci-esdhc-imx 2190000.usdhc: Got CD GPIO
sdhci-esdhc-imx 2190000.usdhc: No vqmmc regulator found
mmc0: SDHCI controller on 2190000.usdhc [2190000.usdhc] using ADMA
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
Key type dns_resolver registered
cpu cpu0: dev_pm_opp_get_opp_count: device OPP not found (-19)
Registering SWP/SWPB emulation handler
snvs_rtc 20cc034.snvs-rtc-lp: setting system clock to 1970-01-01 00:00:00 UTC (0)
g_mass_storage gadget: high-speed config #1: Linux File-Backed Storage
VSD_3V3: disabling
can-3v3: disabling
ALSA device list:
  No soundcards found.
Freeing unused kernel memory: 388K (8091f000 - 80980000)
usb 1-1: new high-speed USB device number 2 using ci_hdrc
Starting UTP
uuc 0.5 [built Aug  2 2016 12:12:44]
UTP: Waiting for device to appear
UTP: file/device node /dev/utp already exists
cpu_id is 0
UTP: received command 'send'
UTP: sending Success to kernel for command send.
UTP: received command '$ tar xf $FILE '
UTP: executing "tar xf $FILE "
UTP: sending Success to kernel for command $ tar xf $FILE .
utp_poll: pass returned.
UTP: received command '$ sh mksdcard.sh /dev/mmcblk1'
UTP: executing "sh mksdcard.sh /dev/mmcblk1"
“wait for /dev/mmcblk1 appear”
“wait for /dev/mmcblk1 appear”
“wait for /dev/mmcblk1 appear”
...

顯示出 “wait for /dev/mmcblk1 appear” 後就進入無止盡的循環

改用 mfgtool2-yocto-mx-evk-sdcard-sd1.vbs 試試

效果一樣

這次換停在 “wait for /dev/mmcblk0 appear”

1355

修改 ucl2.xml 插入

  <CMD state="Updater" type="push" 
    body="$ ls /dev "> Partitioning...</CMD>

相對應的 console 如下

UTP: received command '$ ls /dev '
UTP: executing "ls /dev "
autofs           loop5               ram13   tty11  tty29  tty46  tty63
bus              loop6               ram14   tty12  tty3   tty47  tty7
console          loop7               ram15   tty13  tty30  tty48  tty8
cpu_dma_latency  mem                 ram2    tty14  tty31  tty49  tty9
dri              memory_bandwidth    ram3    tty15  tty32  tty5   ttymxc0
fb0              network_latency     ram4    tty16  tty33  tty50  ttymxc1
full             network_throughput  ram5    tty17  tty34  tty51  ubi_ctrl
fuse             null                ram6    tty18  tty35  tty52  urandom
hwrng            pps0                ram7    tty19  tty36  tty53  utp
i2c-0            pps1                ram8    tty2   tty37  tty54  vcs
i2c-1            ptmx                ram9    tty20  tty38  tty55  vcs1
input            ptp0                random  tty21  tty39  tty56  vcsa
kmsg             ptp1                rfkill  tty22  tty4   tty57  vcsa1
loop-control     pxp_device          rtc0    tty23  tty40  tty58  video0
loop0            ram0                snd     tty24  tty41  tty59  watchdog
loop1            ram1                tty     tty25  tty42  tty6   watchdog0
loop2            ram10               tty0    tty26  tty43  tty60  zero
loop3            ram11               tty1    tty27  tty44  tty61
loop4            ram12               tty10   tty28  tty45  tty62
UTP: sending Success to kernel for command $ ls /dev .
utp_poll: pass returned.

感覺是我傳到 ramfs 的 dtb 不對

1400

換了 dtb 還是一樣

感覺是要自己準備一個 uboot binary 了

1420

回到前天的回憶

meta-proscend\conf\distro\include\proscend-base.inc

...
IMAGE_FSTYPES += "nandflash"
...
UBOOT_CONFIG = "nand"
...

IMAGE_FSTYPESUBOOT_CONFIG 的定義我要換個地方

主要是希望 meta-proscend\conf\distro\proscend-m300.conf 能不去管 UBOOT_CONFIG 這件事

讓這件事從下述的 machine configuration file 來做區別 meta-proscend\conf\machine\m300.conf meta-proscend\conf\machine\m300e.conf

所以我要先把 IMAGE_FSTYPESUBOOT_CONFIG 的定義從
meta-proscend\conf\distro\include\proscend-base.inc
搬到
meta-proscend\conf\machine\m300.conf

先確定不會影響到先前的環境

1440

build 好了

不過從 core-image-minimal 的 log 並沒有看到有作 nandflash 相關的事情

build_small\tmp\work\m300-poky-linux-gnueabi\core-image-minimal\1.0-r0\temp\log.do_rootfs

先還原吧

1520

ariel 找我跟 john 聊一下 m300 的 vlan 和 qos 要怎麼作

1640

寫週報

⚠️ **GitHub.com Fallback** ⚠️