RE: PCIe Hotplugging not working

From: Anand Kanaginhal
Date: Fri Dec 09 2011 - 10:03:47 EST



$ ls /sys/class/pci_bus
0000:00  0000:02  0000:04  0000:06  0000:08
0000:01  0000:03  0000:05  0000:07  0000:09

The card doesn't show up in lspci after hotplugging ( or doesnt disappear when pulled out),
However the card shows up if the card is plugged in while booting up the PC.

Below is the lspci output when the cards are connected at booting.

$ lspci
...
02:00.0 PCI bridge: PLX Technology, Inc. PEX 8533 32-lane, 6-port PCI Express Switch (rev aa)
03:01.0 PCI bridge: PLX Technology, Inc. PEX 8533 32-lane, 6-port PCI Express Switch (rev aa)
03:08.0 PCI bridge: PLX Technology, Inc. PEX 8533 32-lane, 6-port PCI Express Switch (rev aa)
03:09.0 PCI bridge: PLX Technology, Inc. PEX 8533 32-lane, 6-port PCI Express Switch (rev aa)

anand card c1>>>>>>>>04:00.0 Memory controller: Device 174a:0701 
anand card c2>>>>>>>>05:00.0 Ethernet controller: Agere Systems ET-131x PCI-E Ethernet Controller (rev 02)
....
$
Also wanted to know if my assumptions below are correct ?
--------------------------------------------------------------------------------
Please correct me if any of my understanding below is incorrect:
1. With the above setup, If I hotplug card c1 and/or c2, will my driver probe
get invoked.
2. I dont have to add any rules for in /etc/udev/rules.d/*.rules for my driver
 to work.
3. The standard hotplug controller driver would get the hotplug event from the
 switch and handle it.
4. The standard hotplug controller driver will be responsible for invoking
.probe and .remove functions of my driver.
---


Thanks
Anand



> Date: Fri, 9 Dec 2011 12:45:25 +0000
> From: mjg59@xxxxxxxxxxxxx
> To: anand_dk@xxxxxxxxxxx
> CC: bhelgaas@xxxxxxxxxx; greg@xxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linux-hotplug@xxxxxxxxxxxxxxx
> Subject: Re: PCIe Hotplugging not working
>
> Do you have anything in /sys/class/pci/slots ? Does your card show up in
> lspci when you hotplug it?
>
> --
> Matthew Garrett | mjg59@xxxxxxxxxxxxx
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/