Our product software is still using old Red Hat(RH) version 5.1, 2.6.32 kernel. We install our software as an iso CD through USB 2.0 CDROM. Our hardware was so far was having only USB 2.0 ports. We have got new hardware, which has only USB 3.0 ports.
Unfortunately RH 5/2.6.32 don't have USB 3 (xHCI) USB host adapter emulation support. It's available only from RH 7.
As a workaround, I enabled xhci in kernel and wanted to added the xhci.ko
in initrd.img
modules directory and also updated module-info
, modules.alias
, modules.dep
, pci.ids
accordingly. Created the iso with the new initrd.img
, but I don't see any difference in install logs like xhci loaded, etc.
I found out init
and /sbin/loader
are the two guys loading the modules, and realized I have to make change "say insmod xhci.ko
". Unfortunately those files are ELF files and not script files like mentioned by others in web searches.
With further research, I found out their source file is available in anaconda installer. I am not able to find the source of this anaconda installer anywhere.
I have 2 questions:
How do people using old kernels/distribution still support new hardware?
initrd.img
'sinit
and/sbin/loader
are ELF files. Is there a way to load new driver modules without changing those init/loader files?Is modifying the source of anaconda the only option? Where I can find the source?