-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wifi/bt/gps modules not listed in MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS #1
Comments
This change fix a boot issue: [ 0.849690] Initramfs unpacking failed: junk in compressed archive [ 0.913369] ufs_qcom_phy_qmp_14nm 627000.phy: invalid resource [ 0.916028] qcom-pcie 600000.pcie: Failed to get supply 'vddpe-3v3': -517 [ 1.924849] qcom-pcie 608000.pcie: Phy link never came up [ 1.926456] qcom-pcie 608000.pcie: cannot initialize host [ 2.173672] ufshcd-qcom 624000.ufshc: ufshcd_print_pwr_info:[RX, TX]: gear=[1, 1], lane[1, 1], pwr[SLOWAUTO_MODE, SLOWAUTO_MODE], rate = 0 [ 2.235323] dwc3 7600000.dwc3: Failed to get clk 'ref': -2 [ 2.237718] dwc3 6a00000.dwc3: Failed to get clk 'ref': -2 [ 2.242360] i2c_qup 75b5000.i2c: [ 2.242360] tx channel not available [ 2.246507] i2c_qup 75b6000.i2c: [ 2.246507] tx channel not available [ 2.253187] i2c_qup 7577000.i2c: [ 2.253187] tx channel not available [ 2.416921] ufshcd-qcom 624000.ufshc: ufshcd_print_pwr_info:[RX, TX]: gear=[3, 3], lane[1, 1], pwr[FAST MODE, FAST MODE], rate = 2 [ 2.530560] dwc3 7600000.dwc3: Failed to get clk 'ref': -2 [ 2.538541] dwc3 6a00000.dwc3: Failed to get clk 'ref': -2 [ 2.574903] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(259,2) [ 2.574928] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 5.0.0-rc1 qualcomm-linux#1 [ 2.582393] Hardware name: Qualcomm Technologies, Inc. DB820c (DT) [ 2.588382] Call trace: [ 2.594552] dump_backtrace+0x0/0x178 [ 2.596888] show_stack+0x14/0x20 [ 2.600710] dump_stack+0x84/0xa4 [ 2.604007] panic+0x13c/0x2ec [ 2.607306] mount_block_root+0x1a0/0x284 [ 2.610254] mount_root+0x140/0x174 [ 2.614335] prepare_namespace+0x138/0x180 [ 2.617634] kernel_init_freeable+0x220/0x240 [ 2.621804] kernel_init+0x10/0x108 [ 2.626229] ret_from_fork+0x10/0x18 [ 2.629539] SMP: stopping secondary CPUs [ 2.633465] Kernel Offset: disabled [ 2.637253] CPU features: 0x002,20802008 [ 2.640463] Memory Limit: none [ 2.644645] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(259,2) ]--- This problem was introduced by this change on Linux: commit ff1522bb7d98450c72aea729f0b4147bc9986aed Author: David Engraf <[email protected]> Date: Thu Jan 3 15:28:31 2019 -0800 initramfs: cleanup incomplete rootfs Unpacking an external initrd may fail e.g. not enough memory. This leads to an incomplete rootfs because some files might be extracted already. Fixed by cleaning the rootfs so the kernel is not using an incomplete rootfs. Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: David Engraf <[email protected]> Cc: Dominik Brodowski <[email protected]> Cc: Greg Kroah-Hartman <[email protected]> Cc: Philippe Ombredanne <[email protected]> Cc: Arnd Bergmann <[email protected]> Cc: Luc Van Oostenryck <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Fixes, ... (gdb) bt #0 0x0000000000402268 in rmtfs_iovec (pkt=0xffffde2d4dc8, sock=7) at rmtfs.c:230 qualcomm-linux#1 handle_rmtfs (sock=sock@entry=7) at rmtfs.c:399 qualcomm-linux#2 0x00000000004017ec in run_rmtfs (rprocfd=3) at rmtfs.c:477 qualcomm-linux#3 main (argc=<optimized out>, argv=<optimized out>) at rmtfs.c:563 ... Signed-off-by: Aníbal Limón <[email protected]>
Fixes, ... (gdb) bt #0 0x0000000000402268 in rmtfs_iovec (pkt=0xffffde2d4dc8, sock=7) at rmtfs.c:230 qualcomm-linux#1 handle_rmtfs (sock=sock@entry=7) at rmtfs.c:399 qualcomm-linux#2 0x00000000004017ec in run_rmtfs (rprocfd=3) at rmtfs.c:477 qualcomm-linux#3 main (argc=<optimized out>, argv=<optimized out>) at rmtfs.c:563 ... Signed-off-by: Aníbal Limón <[email protected]>
Same issue for display and GPU modules |
I'd say that depends on the list of modules that are considered essential. I think it might be a good idea to use packagegroups and then to make packagegroups be selected via this variable. This way we can push decisions to that packagegroup (think about kgsl&sde vs msm.ko, vidc vs iris / venus, etc). |
After install all modules and launching weston, this is what I have running on rb3gen2: root@qcs6490-rb3gen2-core-kit:~# cat /proc/modules | awk '{print " | " $1 " | " $4 " | " }'
|
In oe-core we already have My current idea is to have something like this in each machine:
And in the shared .inc something like this:
That would make anything (re)using bits from core-image- work a lot better out of the box. |
With this approach we are encoding BSP details directly into machine config. How would you select between kgsl and msm drivers for the GPU? Or between venus and vidc(?) drivers for video encoders? Having that in packagegroups haves the same problem, but in a more traditional way: how to select dependent packages basing on 10 external conditions. And then those packagegroups can be added to |
At least for rb3gen2 the missing modules can all be listed via Using package groups for modules is really not that common (in BSP layers), but can be done if we decide to facilitate not including certain modules as part of the build. Personally I would prefer us having the upstream modules in a common qcom This would make the basic BSP experience from upstream be mostly functional and complete as the default behavior. |
Quite often people just install |
The split between upstream/downstream modules sounds perfect to me. |
I'm assuming they are enabled in the kernel build. The EULA has been accepted:
And:
The text was updated successfully, but these errors were encountered: