I revert the patch, and run MACHINE=rock-5a bitbake core-image-base.
And many ko are included.
$ tree /tank/stephen/yocto-rockchip-mainline/build/tmp-glibc/work/rock_5a-oe-linux/core-image-base/1.0/rootfs/lib/modules
/tank/stephen/yocto-rockchip-mainline/build/tmp-glibc/work/rock_5a-oe-linux/core-image-base/1.0/rootfs/lib/modules
└── 6.6.0-yoctodev-standard-00098-gb053bfb06fa2
├── kernel
│ ├── arch
│ │ └── arm64
│ │ ├── crypto
│ │ │ ├── aes-neon-blk.ko
│ │ │ ├── aes-neon-bs.ko
│ │ │ ├── chacha-neon.ko
│ │ │ ├── crct10dif-ce.ko
│ │ │ ├── sha3-ce.ko
│ │ │ ├── sha512-arm64.ko
│ │ │ ├── sha512-ce.ko
│ │ │ └── sm3-ce.ko
│ │ └── lib
│ │ └── xor-neon.ko
│ ├── crypto
│ │ ├── af_alg.ko
│ │ ├── algif_rng.ko
│ │ ├── authencesn.ko
......
......
│ │ └── snd-soc-fsl-utils.ko
│ ├── generic
│ │ ├── snd-soc-audio-graph-card2.ko
│ │ ├── snd-soc-audio-graph-card.ko
│ │ ├── snd-soc-simple-card.ko
│ │ └── snd-soc-simple-card-utils.ko
│ └── rockchip
│ ├── snd-soc-rk3399-gru-sound.ko
│ ├── snd-soc-rockchip-i2s.ko
│ ├── snd-soc-rockchip-i2s-tdm.ko
│ ├── snd-soc-rockchip-rt5645.ko
│ └── snd-soc-rockchip-spdif.ko
├── modules.alias
├── modules.alias.bin
├── modules.builtin
├── modules.builtin.alias.bin
├── modules.builtin.bin
├── modules.builtin.modinfo
├── modules.dep
├── modules.dep.bin
├── modules.devname
├── modules.order
├── modules.softdep
├── modules.symbols
└── modules.symbols.bin
258 directories, 822 files
On Thu, Jan 4, 2024 at 02:33 PM, Khem Raj wrote:
do you see same issue with core-image-base ?
On Wed, Jan 3, 2024 at 10:18 PM Stephen Chen <stephen@radxa.com> wrote:
I revert the patch, and run command, MACHINE=rock-5a bitbake-getvar MACHINE_EXTRA_RRECOMMENDS
And I get this:
### Shell environment set up for builds. ###
You can now run 'bitbake <target>'
Common targets are:
core-image-minimal
core-image-full-cmdline
core-image-sato
core-image-weston
meta-toolchain
meta-ide-support
You can also run generated qemu images with a command like 'runqemu qemux86-64'.
Other commonly useful commands are:
- 'devtool' and 'recipetool' handle common recipe tasks
- 'bitbake-layers' handles common layer tasks
- 'oe-pkgdata-util' handles common target package tasks
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
NOTE: Starting bitbake server...
#
# $MACHINE_EXTRA_RRECOMMENDS [3 operations]
# append /tank/stephen/yocto-rockchip-mainline/meta-rockchip/conf/machine/rock-5a.conf:10
# "kernel-modules"
# set /tank/stephen/yocto-rockchip-mainline/openembedded-core/meta/conf/documentation.conf:283
# [doc] "A list of machine-specific packages to install as part of the image being built that are not essential for booting the machine. The image being built has no build dependencies on the packages in this list."
# set? /tank/stephen/yocto-rockchip-mainline/openembedded-core/meta/conf/bitbake.conf:897
# ""
# pre-expansion value:
# " kernel-modules"
MACHINE_EXTRA_RRECOMMENDS=" kernel-modules"
On Thu, Jan 4, 2024 at 12:40 PM, Khem Raj wrote:
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS should be used when you need a
module to be pulled in to enable something always.
so I think setting MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to pull in a
meta package sounds a bit wrong. I wonder if you have something
overriding MACHINE_EXTRA_RRECOMMENDS, please try
bitbake-getvar MACHINE_EXTRA_RRECOMMENDS
and check if it contains kernel-modules or not. Also check output of
bitbake -e core-image-full-cmdline
so see if kernel-modules are being pulled into image or not. bitbake
-g core-image-full-cmdline might also help in finding the dependencies
being pulled into image and their relations.
On Wed, Jan 3, 2024 at 8:20 PM Stephen Chen <stephen@radxa.com> wrote:
On Thu, Jan 4, 2024 at 05:27 AM, Trevor Woerner wrote:
On Tue 2023-12-19 @ 07:23:52 PM, Stephen Chen wrote:
This will add all built kernel modules to the image.
Signed-off-by: Stephen Chen <stephen@radxa.com>
diff --git a/conf/machine/include/rock-pi-4.inc b/conf/machine/include/rock-pi-4.inc
index 0a86846..fd9a9eb 100644
--- a/conf/machine/include/rock-pi-4.inc
+++ b/conf/machine/include/rock-pi-4.inc
@@ -3,4 +3,4 @@ MACHINEOVERRIDES =. "rock-pi-4:"
require conf/machine/include/rk3399.inc
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
diff --git a/conf/machine/nanopi-m4b.conf b/conf/machine/nanopi-m4b.conf
index 35cd8f6..01d5c59 100644
--- a/conf/machine/nanopi-m4b.conf
+++ b/conf/machine/nanopi-m4b.conf
@@ -5,7 +5,7 @@
I've tried this a couple times and a couple different ways and I can't figure
out how what we already have (MACHINE_EXTRA_RRECOMMENDS) is any different from
what you're proposing (MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS).
Using a very basic, no-distro setup I've built core-image-minimal and
core-image-base both with and without your patch and I see absolutely no
difference in the list of installed packages
(buildhistory/images/rock_5b/glibc/core-image-*/installed-packages.txt).
All of meta-rockchip's machine/include/* files already include
MACHINE_EXTRA_RRECOMMENDS, do you have a scenario where a build is not
including all of the built kernel modules in an image?
require conf/machine/include/rk3399.inc
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
KERNEL_DEVICETREE = "rockchip/rk3399-nanopi-m4b.dtb"
UBOOT_MACHINE = "nanopi-m4b-rk3399_defconfig"
diff --git a/conf/machine/nanopi-r2s.conf b/conf/machine/nanopi-r2s.conf
index 4472c21..4ed3160 100644
--- a/conf/machine/nanopi-r2s.conf
+++ b/conf/machine/nanopi-r2s.conf
@@ -6,6 +6,6 @@
require conf/machine/include/rk3328.inc
KERNEL_DEVICETREE = "rockchip/rk3328-nanopi-r2s.dtb"
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
UBOOT_MACHINE = "nanopi-r2s-rk3328_defconfig"
diff --git a/conf/machine/nanopi-r4s.conf b/conf/machine/nanopi-r4s.conf
index 21be440..1a63a96 100644
--- a/conf/machine/nanopi-r4s.conf
+++ b/conf/machine/nanopi-r4s.conf
@@ -5,7 +5,7 @@
require conf/machine/include/rk3399.inc
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
KERNEL_DEVICETREE = "rockchip/rk3399-nanopi-r4s.dtb"
UBOOT_MACHINE = "nanopi-r4s-rk3399_defconfig"
diff --git a/conf/machine/rock-5a.conf b/conf/machine/rock-5a.conf
index 5ace4da..53b56b1 100644
--- a/conf/machine/rock-5a.conf
+++ b/conf/machine/rock-5a.conf
@@ -7,6 +7,6 @@ require conf/machine/include/rk3588s.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-dev"
KERNEL_DEVICETREE = "rockchip/rk3588s-rock-5a.dtb"
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
UBOOT_MACHINE = "rock5a-rk3588s_defconfig"
diff --git a/conf/machine/rock-5b.conf b/conf/machine/rock-5b.conf
index d137108..dc5fabc 100644
--- a/conf/machine/rock-5b.conf
+++ b/conf/machine/rock-5b.conf
@@ -7,6 +7,6 @@ require conf/machine/include/rk3588.inc
PREFERRED_PROVIDER_virtual/kernel = "linux-yocto-dev"
KERNEL_DEVICETREE = "rockchip/rk3588-rock-5b.dtb"
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
UBOOT_MACHINE = "rock5b-rk3588_defconfig"
diff --git a/conf/machine/rock-pi-e.conf b/conf/machine/rock-pi-e.conf
index 517956c..3f83675 100644
--- a/conf/machine/rock-pi-e.conf
+++ b/conf/machine/rock-pi-e.conf
@@ -6,6 +6,6 @@
require conf/machine/include/rk3328.inc
KERNEL_DEVICETREE = "rockchip/rk3328-rock-pi-e.dtb"
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
UBOOT_MACHINE = "rock-pi-e-rk3328_defconfig"
diff --git a/conf/machine/rock-pi-s.conf b/conf/machine/rock-pi-s.conf
index 79ea73c..590e972 100644
--- a/conf/machine/rock-pi-s.conf
+++ b/conf/machine/rock-pi-s.conf
@@ -6,6 +6,6 @@
require conf/machine/include/rk3308.inc
KERNEL_DEVICETREE = "rockchip/rk3308-rock-pi-s.dtb"
-MACHINE_EXTRA_RRECOMMENDS += "kernel-modules"
+MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-modules"
UBOOT_MACHINE = "rock-pi-s-rk3308_defconfig"
--
2.25.1
Hi
I build ROCK 5A core-image-full-cmdline.
Without that patch, only these ko are included.
$ tree build/tmp-glibc/work/rock_5a-oe-linux/core-image-full-cmdline/1.0/rootfs/lib/modules/6.6.0-yoctodev-standard-00098-gb053bfb06fa2/kernel/
build/tmp-glibc/work/rock_5a-oe-linux/core-image-full-cmdline/1.0/rootfs/lib/modules/6.6.0-yoctodev-standard-00098-gb053bfb06fa2/kernel/
├── lib
│ └── libcrc32c.ko
└── net
├── 802
│ └── stp.ko
├── bridge
│ └── bridge.ko
├── ipv4
│ └── netfilter
│ ├── iptable_filter.ko
│ ├── iptable_mangle.ko
│ ├── iptable_nat.ko
│ ├── iptable_raw.ko
│ ├── iptable_security.ko
│ ├── ip_tables.ko
│ ├── ipt_REJECT.ko
│ ├── nf_defrag_ipv4.ko
│ └── nf_reject_ipv4.ko
├── ipv6
│ ├── ipv6.ko
│ └── netfilter
│ ├── ip6table_filter.ko
│ ├── ip6table_mangle.ko
│ ├── ip6table_nat.ko
│ ├── ip6_tables.ko
│ └── nf_defrag_ipv6.ko
├── llc
│ └── llc.ko
└── netfilter
├── nf_conntrack.ko
├── nf_conntrack_netlink.ko
├── nf_nat.ko
├── nfnetlink.ko
├── x_tables.ko
├── xt_addrtype.ko
├── xt_CHECKSUM.ko
├── xt_conntrack.ko
├── xt_MASQUERADE.ko
├── xt_nat.ko
├── xt_state.ko
└── xt_tcpudp.ko
10 directories, 31 files
With this patch, more ko are included.
$ tree build/tmp-glibc/work/rock_5a-oe-linux/core-image-full-cmdline/1.0/rootfs/lib/modules/6.6.0-yoctodev-standard-00098-gb053bfb06fa2/kernel/
build/tmp-glibc/work/rock_5a-oe-linux/core-image-full-cmdline/1.0/rootfs/lib/modules/6.6.0-yoctodev-standard-00098-gb053bfb06fa2/kernel/
├── arch
│ └── arm64
│ ├── crypto
│ │ ├── aes-neon-blk.ko
│ │ ├── aes-neon-bs.ko
│ │ ├── chacha-neon.ko
│ │ ├── crct10dif-ce.ko
│ │ ├── sha3-ce.ko
│ │ ├── sha512-arm64.ko
│ │ ├── sha512-ce.ko
│ │ └── sm3-ce.ko
│ └── lib
│ └── xor-neon.ko
├── crypto
│ │ │ ├── mc44s803.ko
....
.....
└── rockchip
├── snd-soc-rk3399-gru-sound.ko
├── snd-soc-rockchip-i2s.ko
├── snd-soc-rockchip-i2s-tdm.ko
├── snd-soc-rockchip-rt5645.ko
└── snd-soc-rockchip-spdif.ko
256 directories, 809 files