Difference between revisions of "RSB-3720 Ubunut creation by Yocto30 kernel"
From ESS-WIKI
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{DISPLAYTITLE:RSB-3720 | + | |
+ | {{DISPLAYTITLE:RSB-3720 Ubuntu creation by Yocto30 kernel}} | ||
[[File:RSB-3720 Ubunut creation by Yocto30 kernel top figuare.png|600x500px|RSB-3720 Ubunut creation by Yocto30 kernel top figuare.png]] | [[File:RSB-3720 Ubunut creation by Yocto30 kernel top figuare.png|600x500px|RSB-3720 Ubunut creation by Yocto30 kernel top figuare.png]] | ||
---- | ---- | ||
+ | |||
+ | | ||
== <span style="color:#3498db;">'''Prepare Image'''</span> == | == <span style="color:#3498db;">'''Prepare Image'''</span> == | ||
Line 18: | Line 21: | ||
:<span style="font-size:medium;">[[File:RSB-3720 Prepare ubuntu image.png|RTENOTITLE]]</span> | :<span style="font-size:medium;">[[File:RSB-3720 Prepare ubuntu image.png|RTENOTITLE]]</span> | ||
− | |||
− | |||
== <span style="color:#3498db;">'''Mount image'''</span> == | == <span style="color:#3498db;">'''Mount image'''</span> == | ||
Line 25: | Line 26: | ||
*<span style="font-size:medium;">You can find Yocto image in'''<span style="color:#9b59b6;">${WORKSPACE}</span>'''/build/tmp/deplay/image/<span style="color:#9b59b6;">'''${MC}'''</span>, and copy to your '''<span style="color:#9b59b6;">${WORKSPACE}</span>'''.</span> | *<span style="font-size:medium;">You can find Yocto image in'''<span style="color:#9b59b6;">${WORKSPACE}</span>'''/build/tmp/deplay/image/<span style="color:#9b59b6;">'''${MC}'''</span>, and copy to your '''<span style="color:#9b59b6;">${WORKSPACE}</span>'''.</span> | ||
− | :<span style="font-size:large;"><code>$ sudo cp –a | + | :<span style="font-size:large;"><code>$ sudo cp –a <span style="color:#9b59b6;">'''${rootfs.wic_IMAGE}'''</span>.bz2 <span style="color:#9b59b6;">'''${WORKSPACE}'''</span>.</code></span> |
:[[File:RSB-3720 copy Yocto30 image to workspace.png|RTENOTITLE]] | :[[File:RSB-3720 copy Yocto30 image to workspace.png|RTENOTITLE]] | ||
Line 47: | Line 48: | ||
:<span style="font-size:large;"><code>$sudo losetup --show -f -P <span style="color:#9b59b6;">'''${rootfs.wic_IMAGE}'''</span></code></span> | :<span style="font-size:large;"><code>$sudo losetup --show -f -P <span style="color:#9b59b6;">'''${rootfs.wic_IMAGE}'''</span></code></span> | ||
− | :<span style="font-size:large;"><span style="font-size:large;"><code>$sudo mount / | + | :<span style="font-size:large;"><span style="font-size:large;"><code>$sudo mount '''<span style="color:#9b59b6;">${virtual_DEVICE}</span>'''p2 yocto/rootfs/</code></span></span> |
:<span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><code>$sudo losetup --show -f -P 3720A1AIM30UIVA0362_iMX8MP_4G_2021-11-29.img</code></span></span></span> | :<span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><code>$sudo losetup --show -f -P 3720A1AIM30UIVA0362_iMX8MP_4G_2021-11-29.img</code></span></span></span> | ||
− | :<span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><code>$sudo mount / | + | :<span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><span style="font-size:large;"><code>$sudo mount</code></span></span><code>'''<span style="color:#9b59b6;">${virtual_DEVICE}</span>'''</code><span style="font-size:large;"><span style="font-size:large;"><code>p2 ubuntu/rootfs/</code></span></span></span></span> |
: | : | ||
:<span style="font-size:large;"><span style="font-size:large;">[[File:RSB-3720 Ubunut creation by Yocto30 kernel Mount Yocto image and Ubuntu image Partition2.png|RTENOTITLE]]</span></span> | :<span style="font-size:large;"><span style="font-size:large;">[[File:RSB-3720 Ubunut creation by Yocto30 kernel Mount Yocto image and Ubuntu image Partition2.png|RTENOTITLE]]</span></span> | ||
Line 84: | Line 85: | ||
:<span style="font-size:large;">[[File:RSB-3720 Ubunut creation by Yocto30 kernel change module.png|RTENOTITLE]]</span> | :<span style="font-size:large;">[[File:RSB-3720 Ubunut creation by Yocto30 kernel change module.png|RTENOTITLE]]</span> | ||
+ | |||
== <span style="color:#3498db;">'''Analyze dependency file'''</span> == | == <span style="color:#3498db;">'''Analyze dependency file'''</span> == | ||
Line 97: | Line 99: | ||
:<span style="font-size:large;"><code>$ depmod -a 5.4.70-2.3.0/</code></span> | :<span style="font-size:large;"><code>$ depmod -a 5.4.70-2.3.0/</code></span> | ||
− | :[[File:RSB-3720 Ubunut creation by Yocto30 kernel Analyze file replaced by module dependencies.png|RTENOTITLE]] | + | :[[File:RSB-3720 Ubunut creation by Yocto30 kernel Analyze file replaced by module dependencies.png|RTENOTITLE]] |
− | |||
== <span style="color:#3498db;">'''Umount target image'''</span> == | == <span style="color:#3498db;">'''Umount target image'''</span> == | ||
Line 115: | Line 116: | ||
*<span style="font-size:medium;">Remove virtual device</span> | *<span style="font-size:medium;">Remove virtual device</span> | ||
− | :<span style="font-size:large;"><code>$ sudo losetup -d | + | :<span style="font-size:large;"><code>$ sudo losetup -d '''<span style="color:#9b59b6;">${virtual_DEVICE}</span>'''</code></span> |
− | |||
− | |||
− | : | + | :<span style="font-size:large;"><code>$ sudo losetup -d '''<span style="color:#9b59b6;">${virtual_DEVICE}</span>'''</code></span> |
− | + | :[[File:RSB-3720 Ubunut creation by Yocto30 kernel Remove virtual device.png|RTENOTITLE]] | |
== <span style="color:#3498db;">'''Flash target image'''</span> == | == <span style="color:#3498db;">'''Flash target image'''</span> == | ||
Line 127: | Line 126: | ||
*<span style="font-size:medium;">Creating boot-up on-board flash from built sdcard image</span> | *<span style="font-size:medium;">Creating boot-up on-board flash from built sdcard image</span> | ||
− | :<span style="font-size:large;"><code>$ sudo dd if=<span style="color:#9b59b6;">'''${rootfs.wic_IMAGE}'''</span> of=/ | + | :<span style="font-size:large;"><code>$ sudo dd if=<span style="color:#9b59b6;">'''${rootfs.wic_IMAGE}'''</span> of='''<span style="color:#9b59b6;">${SD_DEVICE}</span>''' bs=1M conv=fsync</code></span> |
:[[File:RSB-3720 Ubunut creation by Yocto30 kernel Flash target image.png|RTENOTITLE]] | :[[File:RSB-3720 Ubunut creation by Yocto30 kernel Flash target image.png|RTENOTITLE]] |
Latest revision as of 09:58, 18 August 2023
Contents
Prepare Image
- Build Yocto Linux image with your expected version (e.g. A0386)
- You can follow this SOP to build your Yocto image.
- Modify kernel to "Add commit to support the Ubuntu desktop version"
- Prepare Ubuntu image (e.g. A0362)
Mount image
- You can find Yocto image in${WORKSPACE}/build/tmp/deplay/image/${MC}, and copy to your ${WORKSPACE}.
$ sudo cp –a ${rootfs.wic_IMAGE}.bz2 ${WORKSPACE}.
- Unpack rootfs.wic
$sudo bzip2 -d ${rootfs.wic_IMAGE}.bz2
- Create folders to mount
$mkdir ubuntu yocto
$mkdir ubuntu/rootfs yocto/rootfs
- Mount Yocto image and Ubuntu image Partition2
$sudo losetup --show -f -P ${rootfs.wic_IMAGE}
$sudo mount ${virtual_DEVICE}p2 yocto/rootfs/
$sudo losetup --show -f -P 3720A1AIM30UIVA0362_iMX8MP_4G_2021-11-29.img
Change rootfs
- Copy Yocto module to ${WORKSPACE}, then you can find Yocto module in rootfs/lib
$ sudo cp -a yocto/rootfs/lib/modules/ /home/adv/
- Delete under Yocto rootfs all files, and replace with Ubuntu rootfs
$ sudo rm -rf yocto/rootfs/
$ sudo cd ubuntu/rootfs/
$ sudo cp -a bin boot dev etc home lib media mnt opt proc root run sbin srv swapfile sys tmp usr var ~/yocto/rootfs/
- Replace with Yocto module
$ cd ~/yocto/roosfs/lib
$ sudo rm -rf modules/
$ sudo cp -a ~/modules ~/yocto/rootfs/lib/
Analyze dependency file
- Enter target image root directory
$ sudo chroot rootfs/
- Analyze file replaced by module dependencies
$ depmod -a 5.4.70-2.3.0/
Umount target image
- Umount rootfs
$ exit
$ sudo umount ~/yocto/rootfs/
$ sudo umount ~/ubuntu/rootfs/
- Remove virtual device
$ sudo losetup -d ${virtual_DEVICE}
$ sudo losetup -d ${virtual_DEVICE}
Flash target image
- Creating boot-up on-board flash from built sdcard image
$ sudo dd if=${rootfs.wic_IMAGE} of=${SD_DEVICE} bs=1M conv=fsync
Complete
- Pleace insert SDcard to target machine and booting, You can see Ubuntu Desktop on the monitor.