2010/11/3 àààà <anuj01@xxxxxxxxx>: > > Simply, whenever either a device or driver is registered with the bus, > then probe function of matching driver is called by the bus subsystem. > > Refer : http://lxr.linux.no/#linux+v2.6.36/Documentation/PCI/pci.txt > >    probe        This probing function gets called (during execution > Â88            Âof pci_register_driver() for already existing > Â89            Âdevices or later if a new device gets inserted) for > Â90            Âall PCI devices which match the ID table and are not > Â91            Â"owned" by the other drivers yet. This function gets > Â92            Âpassed a "struct pci_dev *" for each device whose > Â93            Âentry in the ID table matches the device. The probe > Â94            Âfunction returns zero when the driver chooses to > Â95            Âtake "ownership" of the device or an error code > Â96            Â(negative number) otherwise. > Â97            ÂThe probe function always gets called from process > Â98            Âcontext, so it can sleep. > That links talks about WHAT is done. "As pci_register_driver() looks for existing devices or which match the ID table and not owned by id table." I am looking for HOW it is done. I am not in a position to understand the source code right now.So I asked list. I had read that doc before posting here. ÿô.nÇ·®+%˱éw¦j)pغ{.nÇ·¤z¹Þw°n'¬þÚqªíçbì¸æ·vضm§ÿÿêYÞ¸³ú