On 2013/1/28 19:01, Chris Clayton wrote: > [no one screamed, so linux-media ml dropped] > > Hi Martin, > > On 01/28/13 10:56, Martin Mokrejs wrote: >> >> >> Chris Clayton wrote: >>> Hi Yijing, >>> >>> On 01/28/13 02:40, Yijing Wang wrote: >>>> Hi Chris, >>>> Sorry for the delay reply. It seems like my reply last night was missed. >>>> >>>> From the sysinfo you provide, there are no pcie port devices under /sys/bus/pci_express/devices. >>>> Maybe because there are some problems with _OSC in your laptop, so pcie port driver won't create pcie port device >>>> for hotplug, aer and so on. >>>> >>>> Maybe you can add boot parameter "pcie_ports=native" and reboot your laptop. >>>> Then use #modprobe pciehp pciehp_force=1 pciehp_debug=1 to load pciehp modules. >>>> After above actions, enter /sys/bus/pci_express/devices/ directory and /sys/bus/pci/slots/ >>>> Some slots and pcie port devices should be there now. >>>> >>> Sorry, I've tried your suggestion, but the two directories are still empty. >>> >>> I verified the test environment as follows: >>> >>> [chris:~]$ uname -a >>> Linux laptop 3.7.4 #15 SMP PREEMPT Mon Jan 28 09:43:57 GMT 2013 i686 GNU/Linux >>> [chris:~]$ grep acpiphp /boot/System.map-3.7.4 >>> [chris:~]$ modinfo acpiphp >>> modinfo: ERROR: Module acpiphp not found. >>> [chris:~]$ modinfo pciehp >>> filename: /lib/modules/3.7.4/kernel/drivers/pci/hotplug/pciehp.ko >>> license: GPL >>> description: PCI Express Hot Plug Controller Driver >>> author: Dan Zink <dan.zink@xxxxxxxxxx>, Greg Kroah-Hartman <greg@xxxxxxxxx>, Dely Sy <dely.l.sy@xxxxxxxxx> >>> depends: >>> intree: Y >>> vermagic: 3.7.4 SMP preempt mod_unload CORE2 >>> parm: pciehp_detect_mode:Slot detection mode: pcie, acpi, auto >>> pcie - Use PCIe based slot detection >>> acpi - Use ACPI for slot detection >>> auto(default) - Auto select mode. Use acpi option if duplicate >>> slot ids are found. Otherwise, use pcie option >>> (charp) >>> parm: pciehp_debug:Debugging mode enabled or not (bool) >>> parm: pciehp_poll_mode:Using polling mechanism for hot-plug events or not (bool) >>> parm: pciehp_poll_time:Polling mechanism frequency, in seconds (int) >>> parm: pciehp_force:Force pciehp, even if OSHP is missing (bool) >>> [chris:~]$ cat /proc/cmdline >>> root=/dev/sda5 pciehp_ports=native ro resume=/dev/sda6 Oh, should "pcie_ports=native" not "pciehp_ports=native". >>> [chris:~]$ sudo modprobe pciehp pciehp_force=1 pciehp_debug=1 >>> [chris:~]$ lsmod >>> Module Size Used by >>> pciehp 19907 0 >>> [...] >>> >>> You will notice that the kernel I have used is 3.7.4. I hope that's a suitable kernel for your tests. I've moved away from the 3.8 development kernel onto one that's stable and on which Martin has identified a solution. I see Greg KH released 3.7.5 yesterday and it includes a pciehp change. I'll upgrade to that, run the tests again and report back. >>> >>> One question - should I include the (acpi) pci_slot driver in the kernel build or does pciehp populate the directories without pci_slot? >> >> Hi Chris, >> I am not a kernel developer but from the other threads at linux-pci I gathered there are in some >> scenarios problems with improper loading of the hotplug modules. Therefore, the patches floating >> now around are to disable hotplug module availability. Therefore, I suggested you to try only >> only static kernel support for hotplug. That way you don't hit the issue. That is for sure not >> addressed in 3.7.5, seems that it is probably in -next. >> Martin >> > In a few minutes I'll be sending out another reply to Yijing's suggestions because I noticed a typo in the parameter I added to the kernel command line. I'm now going back through email to remember why we were trying to get those /sys/bus/pci... directories populated. > > Watch this space! :-) > Chris > > > . > -- Thanks! Yijing -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html