All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
@ 2023-12-19 11:23 Stephen Chen
  2024-01-03 21:27 ` Trevor Woerner
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Chen @ 2023-12-19 11:23 UTC (permalink / raw)
  To: yocto; +Cc: twoerner, Stephen Chen

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 @@
 
 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



^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2023-12-19 11:23 [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules Stephen Chen
@ 2024-01-03 21:27 ` Trevor Woerner
  2024-01-04  4:20   ` [yocto] " Stephen Chen
  0 siblings, 1 reply; 8+ messages in thread
From: Trevor Woerner @ 2024-01-03 21:27 UTC (permalink / raw)
  To: Stephen Chen; +Cc: yocto

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
> 


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-03 21:27 ` Trevor Woerner
@ 2024-01-04  4:20   ` Stephen Chen
  2024-01-04  4:40     ` Khem Raj
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Chen @ 2024-01-04  4:20 UTC (permalink / raw)
  To: Trevor Woerner, yocto

[-- Attachment #1: Type: text/plain, Size: 7716 bytes --]

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

[-- Attachment #2: Type: text/html, Size: 10369 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-04  4:20   ` [yocto] " Stephen Chen
@ 2024-01-04  4:40     ` Khem Raj
  2024-01-04  6:18       ` Stephen Chen
  0 siblings, 1 reply; 8+ messages in thread
From: Khem Raj @ 2024-01-04  4:40 UTC (permalink / raw)
  To: yocto, stephen; +Cc: Trevor Woerner

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
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> You automatically follow any topics you start or reply to.
> View/Reply Online (#62082): https://lists.yoctoproject.org/g/yocto/message/62082
> Mute This Topic: https://lists.yoctoproject.org/mt/103260773/1997914
> Group Owner: yocto+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-04  4:40     ` Khem Raj
@ 2024-01-04  6:18       ` Stephen Chen
  2024-01-04  6:33         ` Khem Raj
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Chen @ 2024-01-04  6:18 UTC (permalink / raw)
  To: Khem Raj, yocto

[-- Attachment #1: Type: text/plain, Size: 10107 bytes --]

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
>> 
>> 
> 
>

[-- Attachment #2: Type: text/html, Size: 10742 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-04  6:18       ` Stephen Chen
@ 2024-01-04  6:33         ` Khem Raj
  2024-01-04  6:45           ` Stephen Chen
  0 siblings, 1 reply; 8+ messages in thread
From: Khem Raj @ 2024-01-04  6:33 UTC (permalink / raw)
  To: Stephen Chen; +Cc: yocto

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
>


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-04  6:33         ` Khem Raj
@ 2024-01-04  6:45           ` Stephen Chen
  2024-01-07  3:53             ` Trevor Woerner
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Chen @ 2024-01-04  6:45 UTC (permalink / raw)
  To: Khem Raj, yocto

[-- Attachment #1: Type: text/plain, Size: 12849 bytes --]

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
> 
>

[-- Attachment #2: Type: text/html, Size: 15239 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [yocto] [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules
  2024-01-04  6:45           ` Stephen Chen
@ 2024-01-07  3:53             ` Trevor Woerner
  0 siblings, 0 replies; 8+ messages in thread
From: Trevor Woerner @ 2024-01-07  3:53 UTC (permalink / raw)
  To: yocto, stephen; +Cc: Khem Raj

I have been running little experiments on various builds with
meta-rockchip and with just oe-core and qemu machines. The more
I think about it, the more I wonder why a BSP layer is including
kernel modules via MACHINE_EXTRA_RRECOMMENDS at all, never mind
with MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS.

If a specific module were required for something to work (like wifi) or
perhaps some firmware blob, then it would be understandable. But a blanket
pulling in of all kernel modules by the BSP layer seems fishy.

This feels more like a distro setting, or local.conf at the very least.

I'm going to remove these from meta-rockchip. We can see if any are truly
required for a board to work.


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2024-01-07  3:53 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-19 11:23 [meta-rockchip] [PATCH] use MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS to add kernel-modules Stephen Chen
2024-01-03 21:27 ` Trevor Woerner
2024-01-04  4:20   ` [yocto] " Stephen Chen
2024-01-04  4:40     ` Khem Raj
2024-01-04  6:18       ` Stephen Chen
2024-01-04  6:33         ` Khem Raj
2024-01-04  6:45           ` Stephen Chen
2024-01-07  3:53             ` Trevor Woerner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.