Re: PCIe can not rescan for new PCIe device ( FPGA board )

From: Kenji Kaneshige
Date: Mon Oct 24 2011 - 01:00:21 EST


Hello,

I'm sorry for the long delay.

(2011/10/14 18:40), Abdelghani Ouchabane wrote:
> On 13/10/11 14:50, Kenji Kaneshige wrote:
>> Thank you for the information. Though I don't have any good news for you,
>> I think as follows based on the info.
>>
>> - There are two hot-plug capable PCIe slots on your machine.
>>
>> - But, it seems you are using fakephp driver, not pciehp (is that
>> correct?). The fakephp cannot handle hot-plug event such as presence
>> change event on the slot. This is why the bus is not scanned automatically.
>>
>> - Unfortunately, the bus would not be scanned automatically even if you
>> use pciehp. As I told you in the previous email, current pciehp don't
>> scan the bus automatically only if the slot is hot-plug surprise
>> capable. According to the lspci output, your hotplug controller is not
>> hot-plug surprise capable.
>>
>> - I don't think pciehp solve invalid register read problem. According to
>> the lspci output, power controller capability isn't present on your
>> hotplug controller. On such environment, pciehp driver does almost the
>> same thing as fakephp does (just scan the bus/remove the pci device data
>> structure) except hot-plug event handling.
>>
>> But it's worth whole trying pciehp.
>> By the way, have you tried acpiphp? It might help you.
>>
>> Regards,
>> Kenji Kaneshige
>>
>
> Hallo Kenji,
>
> many thanks for your great supports. The new BIOS from Congatec solves
> the problem.
>
> I using both fakephp& pciehp drivers, Can I use both drivers at the
> same time?

I think, "no".

> I am using fakephp because I need "/sys/bus/pci/slots/0000\:02\:00.0/power".
>
> Other thing: my Kernel has "CONFIG_ACPI_PROC_EVENT is not set", does
> this explain why the scan is not performed automatically?

Fakephp driver doesn't have any corresponding hotplug controller (hardware).
So I don't think there is no way to detect presence change event on the slot.

>
> [root@localhost ~]# modprobe acpiphp
> FATAL: Error inserting acpiphp
> (/lib/modules/2.6.40.3-0.119.delos.i686/kernel/drivers/pci/hotplug/acpiphp.ko):
> No such device
>
> What is the advantage to use acpiphp ?

Some platform only allows acpiphp, but doesn't allow PCIe native hotplug driver
(like pciehp). The 'pciehp_force' specified your environment is to load pciehp
forcibly on such platform. So I thought acpiphp might solve your problem.

Regards,
Kenji Kaneshige



>
>
> Cheers,
> Ghani
>
>
>
>
>
> --
> 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
>

--
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/