You are not logged in.

#1 2018-10-27 15:33:09

gen2arch
Member
Registered: 2013-05-16
Posts: 106

SOLVED: USBHID module is no longer built

Hi,

since the last kernel updates I can no longer build my custom kernel.

Normally I build a custom kernel via the modprobe-db mechanism and localmodconfig compile target

/usr/bin/modprobed-db recall
make localmodconfig

Yet, whenever I try that now, the module "usbhid" is deactivated during build, .config has:

# CONFIG_USB_HID is not set

(although it is explicitely in modprobed.db), resulting in an error during the mkinitcpio build of the initrd:

  -> Running build hook: [keyboard]
==> ERROR: module not found: `usbhid'

This results in a kernel without working keyboard support.

This happend with kernels 4.18.16 and later.

Did anything change wrt to "usbhid", why is it deactivated??

Thanks

Last edited by gen2arch (2018-10-27 17:02:17)

Offline

#2 2018-10-27 17:02:00

gen2arch
Member
Registered: 2013-05-16
Posts: 106

Re: SOLVED: USBHID module is no longer built

This is kind of solved now:

I read the arch modeprobe-db wiki again (https://wiki.archlinux.org/index.php/Modprobed-db) and realized, that it has changed recently.

I modify the original arch kernel PKGBUILD no longer by inserting:

/usr/bin/modprobed-db recall
make localmodconfig

into it, but the following:

make LSMOD=$HOME/.config/modprobed.db localmodconfig

I do a

/usr/bin/modprobed-db recall

manually as root before.

With this, usbhid is normally built! The mechanism of deactivating everything in .config that is not actually used, didn't work with the first modification. I don't know why. It did work until recently though.

Offline

#3 2018-10-28 18:13:46

Everette88
Member
Registered: 2018-02-17
Posts: 27

Re: SOLVED: USBHID module is no longer built

/usr/bin/modprobed-db recall
make localmodconfig

Above tries to load all modules listed in modprobed-db in your running kernel and then use those loaded modules in new kernel build. There was recent change which made usbhid as build-in kernel component rather than module and that means it's no longer listed as loaded kernel module.

make LSMOD=$HOME/.config/modprobed.db localmodconfig

Above use modules listed in $HOME/.config/modprobed.db in your new kernel build without trying to load them before. That's why it still works.

/usr/bin/modprobed-db recall

Above isn't needed anymore if you use modules list directly  from $HOME/.config/modprobed.db.

Last edited by Everette88 (2018-10-28 18:15:35)

Offline

#4 2018-11-09 10:22:23

gen2arch
Member
Registered: 2013-05-16
Posts: 106

Re: SOLVED: USBHID module is no longer built

Everette, thanks! didn't see your answer earlier, -- which made perfectly clear what was happening!

Offline

Board footer

Powered by FluxBB