diff options
Diffstat (limited to 'yocto/README')
| -rw-r--r-- | yocto/README | 122 |
1 files changed, 72 insertions, 50 deletions
diff --git a/yocto/README b/yocto/README index 6c92a6e..8e63844 100644 --- a/yocto/README +++ b/yocto/README @@ -73,6 +73,7 @@ yocto image ----------- - clone meta-information +cd /build mkdir oe-core cd oe-core # branch: @@ -94,12 +95,16 @@ MACHINE ?= "verdin-imx8mp" # set debian packages PACKAGE_CLASSES ?= "package_deb" ... +# set distro +DISTRO ?= "mikrophone" +... # append ACCEPT_FSL_EULA = "1" - append mikrophone layer: vi conf/bblayers.conf # append to BBLAYERS variable: +BBLAYERS ?= " \ ... ${TOPDIR}/../layers/meta-mikrophone \ " @@ -111,9 +116,20 @@ bitbake -k mikrophone-image bitbake -k mikrophone-image -c populate_sdk - install sdk: -deploy/sdk/tdx-xwayland-glibc-x86_64-mikroPhone-Image-armv8a-verdin-imx8mp-toolchain-7.x.y.sh +deploy/sdk/mikrophone-glibc-x86_64-mikroPhone-Image-armv8a-verdin-imx8mp-toolchain-7.x.y.sh # install into: /build/tdx-xwayland/7.x.y +- prepare sdk for building kernel modules: +vi /build/tdx-xwayland/7.x.y/environment-setup-armv8a-tdx-linux +... +# append +export KERNEL_SRC="$SDKTARGETSYSROOT/lib/modules/6.x.y-$OECORE_SDK_VERSION-devel/build" +... + +. /build/tdx-xwayland/7.x.y/environment-setup-armv8a-tdx-linux +cd /build/tdx-xwayland/7.x.y/sysroots/armv8a-tdx-linux/usr/lib/modules/6.x.y-7.x.y-devel/build +make prepare + - machine.conf in: layers/meta-toradex-nxp/conf/machine/verdin-imx8mp.conf layers/meta-mikrophone/conf/machine/include/verdin-imx8mp.inc - mikrophone distro.conf in: layers/meta-mikrophone/conf/distro/mikrophone.conf @@ -144,6 +160,14 @@ setenv fdtfile imx8mp-verdin-wifi-dev.dtb boot +install image (Tezi) +-------------------- + +Verdin iMX8MP # editenv fdtfile +edit: imx8mp-verdin-wifi-dev.dtb +Verdin iMX8MP # boot + + u-boot ------ @@ -191,74 +215,72 @@ git clone -b toradex_6.6-2.1.x-imx git://git.toradex.com/linux-toradex.git cd linux-toradex git checkout 3493ccd66900420e2462daf4db187b315b50469e cp ../oe-core/build/deploy/images/verdin-imx8mp/kernel-config .config +# enable vivante gpu driver +# should be exactly the same as kernel module from NXP's linux-imx buit by oe-core +# diff -ur ../linux-imx/drivers/mxc/gpu-viv drivers/mxc/gpu-viv +vi .config +... +CONFIG_MXC_GPU_VIV=m +... # verify config make olddefconfig # copy yocto/kernel_lvds_freq.patch from mikroPhone repo # apply LVDS patch patch < ../kernel_lvds_freq.patch -# build kernel and dtb -make -j$(nproc) Image.gz 2>&1 | tee build.log -make freescale/imx8mp-verdin-wifi-dev.dtb +# build kernel (remove + from kernel version string) +make LOCALVERSION= -j$(nproc) Image.gz 2>&1 | tee build.log # ls ./arch/arm64/boot/Image.gz -# ls ./arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-dev.dtb # build kernel modules -make -j$(nproc) modules 2>&1 | tee build.log -mkdir modules -INSTALL_MOD_PATH=`pwd`/modules make modules_install -cd modules -tar -czf ../modules.tar.gz . -cd .. - +make LOCALVERSION= -j$(nproc) modules 2>&1 | tee build.log +# copy Module.symvers if there are some additional function exports: EXPORT_SYMBOL_GPL(...) +cp Module.symvers /build/tdx-xwayland/7.x.y/sysroots/armv8a-tdx-linux/usr/lib/modules/6.x.y-7.x.y-devel/build/ +make INSTALL_MOD_PATH=modules modules_install +# build dtb +cp ../oe-core/layers/meta-mikrophone/recipes-kernel/linux/linux-toradex/*.dts arch/arm64/boot/dts/freescale/ +cp ../oe-core/layers/meta-mikrophone/recipes-kernel/linux/linux-toradex/*.dtsi arch/arm64/boot/dts/freescale/ +make DTC_FLAGS="-@" freescale/imx8mp-verdin-nonwifi-mikrophone.dtb +make DTC_FLAGS="-@" freescale/imx8mp-verdin-wifi-mikrophone.dtb +# ls ./arch/arm64/boot/dts/freescale/*.dtb +# deploy +tar -czf modules.tar.gz modules/ +scp ./arch/arm64/boot/Image.gz root@mikrophone:/boot/ +scp ./arch/arm64/boot/dts/freescale/*.dtb root@mikrophone:/boot/ +scp modules.tar.gz root@mikrophone:. + + +esp32mod +-------- -overlay -------- +- setup environment: +. /build/tdx-xwayland/7.x.y/environment-setup-armv8a-tdx-linux -# toradex overlays (match branch to kernel branch) -# git clone -b toradex_6.6-2.1.x-imx git://git.toradex.com/device-tree-overlays.git -# copy yocto/overlays from mikroPhone repo -cd overlays -STAGING_KERNEL_DIR=../linux-toradex make mikroPhone-panel_overlay.dtbo +- build: +# copy yocto/esp32mod from mikroPhone repo +cd esp32mod +make cd .. -esp32d ------- +esp32tun +-------- - setup environment: . /build/tdx-xwayland/7.x.y/environment-setup-armv8a-tdx-linux - build: -# copy yocto/esp32d from mikroPhone repo -cd esp32d +# copy yocto/esp32tun from mikroPhone repo +cd esp32tun make cd .. -debian repository ------------------ +overlays +-------- -- install aptly and configure aptly: -apt-get install aptly gnupg1 gpgv1 -aptly # creates config file -vi ~/.aptly.conf -... - "gpgProvider": "internal", -... - "FileSystemPublishEndpoints": { - "mikrophone": { - "rootDir": "/build/repo", - "linkMethod": "copy", - "verifyMethod": "md5" - } - }, -... - -- generate gpg signing key: -gpg1 --gen-key -gpg1 --export --armor # signing key for apt-key add - -- create and publish repository: -aptly repo create -distribution=koshuta -component=main mikrophone -aptly repo add mikrophone /build/oe-core/build/deploy/deb -aptly publish repo mikrophone filesystem:mikrophone: -aptly publish update koshuta filesystem:mikrophone: +# toradex overlays (match branch to kernel branch) +# git clone -b toradex_6.6-2.1.x-imx git://git.toradex.com/device-tree-overlays.git +# copy yocto/overlays from mikroPhone repo +cd overlays +STAGING_KERNEL_DIR=../linux-toradex make mikroPhone-panel_overlay.dtbo +STAGING_KERNEL_DIR=../linux-toradex make mikroPhone-esp32_overlay.dtbo +cd .. |
