View previous topic :: View next topic |
Author |
Message |
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4810 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Mon Jan 31, 2022 5:30 pm Post subject: booting gentoo on ZenBook UX363EA_UX371EA [solved] |
|
|
my new laptop is a ZenBook UX363EA_UX371EA machine.
It works well on Ubuntu.
Now, I'm tryng to start gentoo.
First of all, I've created a gentoo partition, copying my old gentoo box from my old laptop (currently updated).
Then, I try an hand made kernel (+initrd) with no luck.
So, I've built a new gentoo-sources:5.15.11 with genkernel. Again no luck.
At the and, I tried a kernel from the last install-amd64-minimal iso from gentoo downloads.
All the times, I had the same behaviour.
After loading the initramfs, boot fails to find the root partition.
Having a look inside a bash shell, I discovered that the /dev/nvme0 device is not created and the nvme module is not loaded by the system.
Manually loading the nvme module does not help.
here some more info:
lshw
lspci
genkernel config
what should I do to have a working kernel? _________________ vu vu vu
gentù
mi piaci tu
Last edited by cloc3 on Wed Feb 02, 2022 9:00 pm; edited 2 times in total |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 2002
|
Posted: Mon Jan 31, 2022 5:53 pm Post subject: |
|
|
Without the dmesg, this is just a guess.
What is apparent is that the NVMe device is on a secondary PCI bridge.
One major driver that is missing is for thunderbolt 3.. Code: | # CONFIG_USB4 is not set |
Try activating this.
Edit: Just thought about genkernel. Genkernel only inserts modules from a known list and new drivers may not be loaded automatically. If you have to manually add one that doesn't appear there, then it must be with the doload= command-line parameter once you know the list. |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4810 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Tue Feb 01, 2022 12:45 am Post subject: |
|
|
grknight wrote: | Without the dmesg, this is just a guess.
|
CONFIG_USB4=y was not the right guess.
but I was able to put dmesg on a usb pendrive. _________________ vu vu vu
gentù
mi piaci tu
Last edited by cloc3 on Wed Feb 02, 2022 8:32 pm; edited 1 time in total |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 2002
|
Posted: Tue Feb 01, 2022 1:59 am Post subject: |
|
|
Interesting on how bus 10000:e0 isn't listed in the dmesg posted.
Since you have a working kernel on another distro, attempt to find what brings up that PCI bus which is not turned on. It might be some SMBUS/ACPI option.
As another thought, try a dracut initramfs which will include udev by default to figure out some additional modules. |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4810 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Wed Feb 02, 2022 8:48 pm Post subject: |
|
|
grknight wrote: |
As another thought, try a dracut initramfs which will include udev by default to figure out some additional modules. |
Thanks a lot.
But it is not true that genkernel initramfs can't load modules by itself, because the init script calls udevadm.
After some troubles, I was able to boot inside my zenbook using the same kernel built by genkernel.
It needs simply few changes to the intiramfs image.
In the following code, I show all my steps:
Code: |
genkernel all
MODDIR=5.15.11-gentoo-x86_64
mkdir bootingGenkernelInitramfs
cd bootingGenkernelInitramfs/
xzcat /boot/initramfs-5.15.11-gentoo-x86_64.img|cpio -i -Hnewc
mkdir -p lib/modules/${MODDIR}/kernel/drivers/pinctrl/intel
mkdir -p lib/modules/${MODDIR}/kernel/drivers/pci/controller
cp -a /lib/modules/${MODDIR}/kernel/drivers/pci/controller/vmd.ko lib/modules/${MODDIR}/kernel/drivers/pci/controller
cp -a /lib/modules/${MODDIR}/kernel/drivers/pinctrl/intel/pinctrl-intel.ko lib/modules/${MODDIR}/kernel/drivers/pinctrl/intel
cp -a /lib/modules/${MODDIR}/kernel/drivers/pinctrl/intel/pinctrl-tigerlake.ko lib/modules/${MODDIR}/kernel/drivers/pinctrl/intel
cp -af /lib/modules//${MODDIR}/modules.* lib/modules/${MODDIR}/
# I don't understand the following, but it takes me away a lot of time..
unlink ./linuxrc
find .|cpio -o -Hnewc|lzma -9>/boot/bootingGenkernelInitramfs-5.15.11-gentoo-x86_64 # I don't know why lzma instead of xz, but this also takes me away a lot of time.
cd /boot/
ln -sf bootingGenkernelInitramfs-5.15.11-gentoo-x86_64 init # here adjust the symlink properly for your system
|
Disclaimer: genkernel configuration is good for booting, but it not coveres all the hardware.
For example, touchpad is not working.
I hope to come back in a few days to post a better kernel config. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 2002
|
Posted: Wed Feb 02, 2022 9:24 pm Post subject: |
|
|
To get genkernel to includes these modules by default for your NVMe, add this to /etc/genkernel.conf: Code: | AMODULES_nvme="vmd pinctrl-intel pinctrl-tigerlake" |
This should get those modules added automatically without you doing anything to extract and add. |
|
Back to top |
|
|
|