• 0 Posts
  • 275 Comments
Joined 2 years ago
cake
Cake day: April 13th, 2024

help-circle














  • I’m not that certain to be honest. But the following is my best understanding:

    • Most drivers are included directly in the kernel source.

    • They can be compiled built-in directly to the kernel binary, or they can be compiled as loadable kernel modules. I don’t know how the proportions between the two options look, but at least the essential drivers (chipsets, filesystems, etc) should be compiled in to allow the boot to progress enough that module loading works.

    • There are some, like the Nvidia proprietary GPU driver, that are provided only in binary form as loadable kernel modules.

    • I also understand that a lot of smartphone drivers are developed out-of-tree against older branches of the Linux kernel. Even those that are made public / open sourced, end up living outside the mainline kernel, and the devs of third party android builds have to cherry pick them into their kernel source.

    I think at least the last group should count as an example of a reason of the type for what OP was looking for.