I'm reading kernel source code for the first time. First, I'd like to know how the PCI driver works.
I found the routines which scans PCI bus and and add data structure of the found devices into bus data structure as linked list.
But I got lost there. Each device probe routine seems to be called after the related module is loaded.
I cannot find the routines which call modprobe or insmod for desired modules related to found devices and I wonder how the module for each device is selected.
So, I'm finding where the PCI network driver module is loaded, for example.
Any advice would be greatly appreciated.
Regards,
J.H.Kim
I found the routines which scans PCI bus and and add data structure of the found devices into bus data structure as linked list.
But I got lost there. Each device probe routine seems to be called after the related module is loaded.
I cannot find the routines which call modprobe or insmod for desired modules related to found devices and I wonder how the module for each device is selected.
So, I'm finding where the PCI network driver module is loaded, for example.
Any advice would be greatly appreciated.
Regards,
J.H.Kim