20160711_jeffrey - silenceuncrio/diary GitHub Wiki
Index
- 0950 - mail proposal ariel
- 1030 - M300 meeting 延到明天十點
- 1035 - trace
bitbake u-boot-imx -c compile -vf
流程 - 1115 -
do_compile ()
- 1305 -
do_compile ()
... - 1340 -
do_compile ()
- 修改 來 traceUBOOT_CONFIG
在local.conf
有無 定義nand
的 影響 - 1350 -
do_compile ()
- 修改 - 1425 -
oe_runmake
oe_runmake_call
- 1505 -
imx6ulevk.conf
- 修改 - 1555 -
do_compile ()
- 修改 - 1700 -
mx6ul_14x14_evk_defconfig
- 1805 -
Freescale Yocto Project User's Guide
-5.5 U-Boot configuration
-U-Boot type = NAND
0950
待會 1030 M300 要 meeting, 先 mail 上禮拜完成的 proposal mail 給 ariel
不過感覺 How-To use NAND boot on i.MX6UL EVK board 少了 rootfs 的部分
1030
禮拜一的會議室幾乎都沒空
M300 meeting 延到明天十點
1035
繼續上禮拜四的 trace
上禮拜四已經確認 bitbake u-boot-imx -c compile -vf
的流程
會到達 /fsl-release-bsp/sources/poky/meta/recipes-bsp/u-boot/u-boot.inc
do_compile () {
echo "Hello World"
}
繼續研究原本的 do_compile ()
1115
原始的 do_compile ()
do_compile () {
if [ "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then
sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' config.mk
fi
unset LDFLAGS
unset CFLAGS
unset CPPFLAGS
if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]
then
echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion
echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion
fi
if [ "x${UBOOT_CONFIG}" != "x" ]
then
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
if [ $j -eq $i ]
then
oe_runmake O=${config} ${config}
oe_runmake O=${config} ${UBOOT_MAKE_TARGET}
cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}
fi
done
unset j
done
unset i
else
oe_runmake ${UBOOT_MACHINE}
oe_runmake ${UBOOT_MAKE_TARGET}
fi
}
先看
if [ "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}" = "ld-is-gold" ] ; then
sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' config.mk
fi
do_compile ()
應該是個 shell functions, 所以用 shell script 來寫
可以參考 If / Else Statements (Shell Scripting)
來看 "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}"
參考 3.1.11. Inline Python Variable Expansion
"${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)}"
是個 Inline Python Variable Expansion
參考 3.4.2. BitBake Style Python Functions
bb.utils.contains()
是個 Python Function, 定義在 M300\fsl-release-bsp\sources\poky\bitbake\lib\bb\utils.py
bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', 'ld-is-gold', '', d)
應該就是去看 DISTRO_FEATURES
這個 YOCTCO variable 有沒有 contain ld-is-gold
, 有就回傳 ld-is-gold
如果 DISTRO_FEATURES
這個 YOCTCO variable 有 contain ld-is-gold
就去做
sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' config.mk
/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/
是個 regular expression
unset LDFLAGS
unset CFLAGS
unset CPPFLAGS
unset 是 bash built-in commands
if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]
then
echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion
echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion
fi
先跳過
1305
if [ "x${UBOOT_CONFIG}" != "x" ]
then
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
if [ $j -eq $i ]
then
oe_runmake O=${config} ${config}
oe_runmake O=${config} ${UBOOT_MAKE_TARGET}
cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}
fi
done
unset j
done
unset i
else
oe_runmake ${UBOOT_MACHINE}
oe_runmake ${UBOOT_MAKE_TARGET}
fi
從外層邏輯看起
if [ "x${UBOOT_CONFIG}" != "x" ]
then
# ...
else
# ...
fi
UBOOT_CONFIG 的定義來自於
M300\fsl-release-bsp\sources\meta-fsl-arm\conf\machine\imx6ulevk.conf
...
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "mx6ul_14x14_evk_config,sdcard"
UBOOT_CONFIG[qspi1] = "mx6ul_14x14_evk_qspi1_config"
UBOOT_CONFIG[mfgtool] = "mx6ul_14x14_evk_config"
參考 3.1.4. Setting a weak default value
UBOOT_CONFIG ??= "sd"
作下面解釋
If UBOOT_CONFIG
is set before the above statements are parsed, UBOOT_CONFIG
retains its value.
If UBOOT_CONFIG
is not set, the variable is set to "sd".
依照 Freescale Yocto Project User's Guide
- 5.5 U-Boot configuration
的說明
我們可以將 UBOOT_CONFIG
定義在 M300\fsl-release-bsp\build_small\conf\local.conf
裡面
目前因為 UBOOT_CONFIG
沒有被定義
所以採用 M300\fsl-release-bsp\sources\meta-fsl-arm\conf\machine\imx6ulevk.conf
的定義
UBOOT_CONFIG ??= "sd"
那這句我就不了解了 [ "x${UBOOT_CONFIG}" != "x" ]
${UBOOT_CONFIG}
指的是 UBOOT_CONFIG
的值
那就是 "sd"
所以 "x${UBOOT_CONFIG}"
= "xsd"
那麼不管我們是否將 UBOOT_CONFIG
定義在 M300\fsl-release-bsp\build_small\conf\local.conf
裡面
if [ "x${UBOOT_CONFIG}" != "x" ]
then
# ...
else
# ...
fi
都不會執行到 else ... fi
的部分
那就直接看 then ... else
的部分
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
if [ $j -eq $i ].
then
oe_runmake O=${config} ${config}
oe_runmake O=${config} ${UBOOT_MAKE_TARGET}
cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}
fi
done
unset j
done
unset i
直接修改以方便 trace
do_compile () {
echo "Hello World"
for config in ${UBOOT_MACHINE}; do
echo ${config}
done
echo "Hello World return..."
}
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small$ bitbake u-boot-imx -c compile -vf
...
+ echo Hello World
Hello World
+ echo mx6ul_14x14_evk_config
mx6ul_14x14_evk_config
+ echo Hello World return...
Hello World return...
...
可以肯定 ${UBOOT_MACHINE}
的值為 mx6ul_14x14_evk_config
1340
修改 do_compile ()
來 trace UBOOT_CONFIG
在 M300\fsl-release-bsp\build_small\conf\local.conf
裡有無被定義成 nand
的影響
do_compile () {
echo "Hello World"
if [ "x${UBOOT_CONFIG}" != "x" ]
then
echo "UBOOT_CONFIG - ${UBOOT_CONFIG}"
echo "UBOOT_MACHINE - ${UBOOT_MACHINE}"
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
echo "i - ${i}"
echo "UBOOT_CONFIG - ${UBOOT_CONFIG}"
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
echo "j - ${j}"
if [ $j -eq $i ]
then
echo "do something about oe_runmake..."
fi
done
unset j
done
unset i
else
echo "else part..."
fi
echo "Hello World return..."
}
UBOOT_CONFIG
沒有被定義
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small$ bitbake u-boot-imx -c compile -vf
...
+ echo Hello World
Hello World
+ [ xsd != x ]
+ echo UBOOT_CONFIG - sd
UBOOT_CONFIG - sd
+ echo UBOOT_MACHINE - mx6ul_14x14_evk_config
UBOOT_MACHINE - mx6ul_14x14_evk_config
+
expr
+
1
+ i=1
+ echo i - 1
i - 1
+ echo UBOOT_CONFIG - sd
UBOOT_CONFIG - sd
+
expr
+
1
+ j=1
+ echo j - 1
j - 1
+ [ 1 -eq 1 ]
+ echo do something about oe_runmake...
do something about oe_runmake...
+ unset j
+ unset i
+ echo Hello World return...
Hello World return...
+ ret=0
+ trap 0
+ exit 0
...
定義成 nand
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small$ bitbake u-boot-imx -c compile -vf
...
+ echo Hello World
Hello World
+ [ xnand != x ]
+ echo UBOOT_CONFIG - nand
UBOOT_CONFIG - nand
+ echo UBOOT_MACHINE -
UBOOT_MACHINE -
+ unset i
+ echo Hello World return...
Hello World return...
+ ret=0
+ trap 0
+ exit 0
...
是因為 UBOOT_MACHINE
沒有被定義所以才沒有後續的動作
1350
修改 do_compile ()
do_compile () {
echo "Hello World"
if [ "x${UBOOT_CONFIG}" != "x" ]
then
for config in ${UBOOT_MACHINE}; do
i=`expr $i + 1`;
for type in ${UBOOT_CONFIG}; do
j=`expr $j + 1`;
if [ $j -eq $i ]
then
echo "oe_runmake O=${config} ${config}"
echo "oe_runmake O=${config} ${UBOOT_MAKE_TARGET}"
echo "cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}"
fi
done
unset j
done
unset i
else
oe_runmake ${UBOOT_MACHINE}
oe_runmake ${UBOOT_MAKE_TARGET}
fi
echo "Hello World return..."
}
沒有被定義成 nand
的時候
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small$ bitbake u-boot-imx -c compile -vf
...
+ echo Hello World
Hello World
+ [ xsd != x ]
+
expr
+
1
+ i=1
+
expr
+
1
+ j=1
+ [ 1 -eq 1 ]
+ echo oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ echo oe_runmake O=mx6ul_14x14_evk_config u-boot.imx
oe_runmake O=mx6ul_14x14_evk_config u-boot.imx
+ echo cp /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot.imx /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot-sd.imx
cp /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot.imx /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot-sd.imx
+ unset j
+ unset i
+ echo Hello World return...
Hello World return...
+ ret=0
+ trap 0
+ exit 0
...
看一下
echo "oe_runmake O=${config} ${config}"
echo "oe_runmake O=${config} ${UBOOT_MAKE_TARGET}"
echo "cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}"
分別是
oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
oe_runmake O=mx6ul_14x14_evk_config u-boot.imx
cp /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot.imx /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config/u-boot-sd.imx
直接看 oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
在幹嘛
do_compile () {
echo "Hello World"
oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
}
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small$ bitbake u-boot-imx -c compile -vf
...
+ echo Hello World
Hello World
+ oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ oe_runmake_call O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ bbnote make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ echo NOTE: make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
NOTE: make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
make -C /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config KBUILD_SRC=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git \
-f /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/Makefile mx6ul_14x14_evk_config
make[1]: Entering directory '/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config'
make -f ../scripts/Makefile.build obj=scripts/basic
ln -fsn .. source
rm -f .tmp_quiet_recordmcount
/bin/bash ../scripts/mkmakefile \
.. . 2015 04
GEN ./Makefile
make -f ../scripts/Makefile.build obj=scripts/kconfig mx6ul_14x14_evk_config
make[2]: '../mx6ul_14x14_evk_config' is up to date.
make[1]: Leaving directory '/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config'
+ ret=0
+ trap 0
+ exit 0
...
oe_runmake O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
這件事會引發
oe_runmake_call O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
???
感覺這邊撐過去就可以有另一番天地了
1425
Methods: Inbuilt methods to make your life easier 裡提到
oe_runmake
This function is used to run make.
However unlike calling make yourself this will pass the EXTRA_OEMAKE settings to make, will display a note about the make command and will check for any errors generated via the call to make.
You should never have any reason to call make directly and should also use oe_runmake when you need to run make.
不過 oe_runmake_call
就不好找線索了
參考 22.8.5. Shell Message Function Changes
bbnote
- The shell versions of the BitBake message functions
+ bbnote make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ echo NOTE: make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
NOTE: make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
+ make -j 4 CROSS_COMPILE=arm-poky-linux-gnueabi- CC=arm-poky-linux-gnueabi-gcc --sysroot=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/sysroots/imx6ulevk V=1 O=mx6ul_14x14_evk_config mx6ul_14x14_evk_config
重點應該是
make -C /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config KBUILD_SRC=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git \
-f /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/Makefile mx6ul_14x14_evk_config
參考 make(1) - Linux man page 試著說故事
- Name
- make - GNU make utility to maintain groups of programs
- Synopsis
- make [ -f makefile ] [ options ] ... [ targets ] ...
- Options
-C dir, --directory=dir
Change to directory dir before reading the makefiles or doing anything else.
If multiple -C options are specified, each is interpreted relative to the previous one: -C / -C etc is equivalent to -C /etc.
This is typically used with recursive invocations of make.+-f file, --file=file, --makefile=FILE
Use file as a makefile.
故事是說我們會先切換到 dir
去, 在讀取 makefile
之前, make 的 targe
為 mx6ul_14x14_evk_config
- dir - Change to directory dir before reading the makefiles or doing anything else.
- /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/mx6ul_14x14_evk_config
- makefile - Use file as a makefile.
- /home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/Makefile
KBUILD_SRC
- 還不知道要幹麻- KBUILD_SRC=/home/jeffrey/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git
1505
為了更完整的資訊 - 將 U-Boot 的 source code 移除 - bitbake u-boot-imx -c clean
修改 M300\fsl-release-bsp\sources\meta-fsl-arm\conf\machine\imx6ulevk.conf
新增 UBOOT_CONFIG[nand] = "mx6ul_14x14_evk_nand_config,ubifs"
...
UBOOT_CONFIG ??= "sd"
UBOOT_CONFIG[sd] = "mx6ul_14x14_evk_config,sdcard"
UBOOT_CONFIG[nand] = "mx6ul_14x14_evk_nand_config,ubifs"
UBOOT_CONFIG[qspi1] = "mx6ul_14x14_evk_qspi1_config"
UBOOT_CONFIG[mfgtool] = "mx6ul_14x14_evk_config"
1555
修改 do_compile ()
do_compile () {
echo "Hello World"
...
oe_runmake O=${config} ${config}
# oe_runmake O=${config} ${UBOOT_MAKE_TARGET}
# cp ${S}/${config}/${UBOOT_BINARY} ${S}/${config}/u-boot-${type}.${UBOOT_SUFFIX}
...
}
UBOOT_CONFIG
沒被定義時
...
cc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/zconf.tab.o
scripts/kconfig/conf --defconfig=arch/../configs/mx6ul_14x14_evk_defconfig Kconfig
#
# configuration written to .config
#
...
UBOOT_CONFIG
定義成 "nand" 時
cc -o scripts/kconfig/conf scripts/kconfig/conf.o scripts/kconfig/zconf.tab.o
scripts/kconfig/conf --defconfig=arch/../configs/mx6ul_14x14_evk_nand_defconfig Kconfig
***
*** Can't find default configuration "arch/../configs/mx6ul_14x14_evk_nand_defconfig"!
***
../scripts/kconfig/Makefile:111: recipe for target 'mx6ul_14x14_evk_nand_defconfig' failed
make[2]: *** [mx6ul_14x14_evk_nand_defconfig] Error 1
...
簡單結論
UBOOT_CONFIG
沒被定義- 需要
configs/mx6ul_14x14_evk_defconfig
- 需要
UBOOT_CONFIG
定義成 "nand"- 需要
configs/mx6ul_14x14_evk_nand_defconfig
- 需要
結果就是 mx6ul_14x14_evk_nand_defconfig
找不到
原本 configs
下已經有一些 mx6ul_xxx_defconfig
了
jeffrey@jeffrey-VirtualBox:~/M300/fsl-release-bsp/build_small/tmp/work/imx6ulevk-poky-linux-gnueabi/u-boot-imx/2015.04-r0/git/configs$ ls -al mx6ul*
-rw-r--r-- 1 jeffrey jeffrey 230 7月 11 16:10 mx6ul_14x14_ddr3_arm2_defconfig
-rw-r--r-- 1 jeffrey jeffrey 246 7月 11 16:10 mx6ul_14x14_ddr3_arm2_eimnor_defconfig
-rw-r--r-- 1 jeffrey jeffrey 258 7月 11 16:10 mx6ul_14x14_ddr3_arm2_emmc_defconfig
-rw-r--r-- 1 jeffrey jeffrey 244 7月 11 16:10 mx6ul_14x14_ddr3_arm2_nand_defconfig
-rw-r--r-- 1 jeffrey jeffrey 244 7月 11 16:10 mx6ul_14x14_ddr3_arm2_qspi1_defconfig
-rw-r--r-- 1 jeffrey jeffrey 246 7月 11 16:10 mx6ul_14x14_ddr3_arm2_spinor_defconfig
-rw-r--r-- 1 jeffrey jeffrey 182 7月 11 16:10 mx6ul_14x14_evk_android_defconfig
-rw-r--r-- 1 jeffrey jeffrey 166 7月 11 16:10 mx6ul_14x14_evk_defconfig
-rw-r--r-- 1 jeffrey jeffrey 180 7月 11 16:10 mx6ul_14x14_evk_qspi1_defconfig
-rw-r--r-- 1 jeffrey jeffrey 234 7月 11 16:10 mx6ul_14x14_lpddr2_arm2_defconfig
-rw-r--r-- 1 jeffrey jeffrey 250 7月 11 16:10 mx6ul_14x14_lpddr2_arm2_eimnor_defconfig
-rw-r--r-- 1 jeffrey jeffrey 190 7月 11 16:10 mx6ul_9x9_evk_defconfig
-rw-r--r-- 1 jeffrey jeffrey 204 7月 11 16:10 mx6ul_9x9_evk_qspi1_defconfig
1700
mx6ul_14x14_evk_defconfig
內容如下
CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=board/freescale/mx6ul_14x14_evk/imximage.cfg,MX6UL"
CONFIG_ARM=y
CONFIG_TARGET_MX6UL_14X14_EVK=y
CONFIG_DM=y
CONFIG_DM_THERMAL=y
1805
理論上我們可以依照 Freescale Yocto Project User's Guide
- 5.5 U-Boot configuration
的說明
讓 U-Boot type = NAND
在 MACHINE=imx6ulevk
時一樣能 build image
剛剛找 ariel 討論我會想這麼作
希望在這個禮拜做出來
ariel 聽到我能在這禮拜完成覺得夠快了
我要趁著個機會將 YOCTO 弄熟一點