Re: [Patch v3 01/11] arch/powerpc/pci: Fix compiling error for mpc85xx_edac

From: york sun
Date: Sat Aug 06 2016 - 16:16:22 EST


On 08/04/2016 08:43 PM, Michael Ellerman wrote:
> York Sun <york.sun@xxxxxxx> writes:
>
>> Two symbols are missing if mpc85xx_edac driver is compiled as module.
>>
>> Signed-off-by: York Sun <york.sun@xxxxxxx>
>>
>> ---
>> Change log
>> v3: Change subject tag
>> v2: no change
>>
>> arch/powerpc/kernel/pci-common.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/arch/powerpc/kernel/pci-common.c b/arch/powerpc/kernel/pci-common.c
>> index 0f7a60f..86bc484 100644
>> --- a/arch/powerpc/kernel/pci-common.c
>> +++ b/arch/powerpc/kernel/pci-common.c
>> @@ -226,6 +226,7 @@ struct pci_controller* pci_find_hose_for_OF_device(struct device_node* node)
>> }
>> return NULL;
>> }
>> +EXPORT_SYMBOL(pci_find_hose_for_OF_device);
>>
>> /*
>> * Reads the interrupt pin to determine if interrupt is use by card.
>> @@ -1585,6 +1586,7 @@ int early_find_capability(struct pci_controller *hose, int bus, int devfn,
>> {
>> return pci_bus_find_capability(fake_pci_bus(hose, bus), devfn, cap);
>> }
>> +EXPORT_SYMBOL(early_find_capability);
>
> Does the driver really need to use these routines? They're meant for use
> early in boot, before PCI is setup.
>
> AFAICS this is just a regular driver, so when it's probed the PCI
> devices should have already been scanned. In which case pci_get_device()
> could work couldn't it? (I see other edac drivers doing that).

I am trying to fix this but need some help. We are dealing with PCIe
controller here. Does it have a bus number assigned at this point? If
yes, how can I find it? I seem not able to find out where the
platform_data is filled as well. Can someone kindly point it out to me?

York