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
