[PATCH v2] PCI: designware: move remaining rc setup code to dw_pcie_setup_rc()

Pratyush Anand pratyush.anand at gmail.com
Wed Apr 6 23:59:09 PDT 2016


Hi Gab,

Thanks for bringing it.


On Wed, Apr 6, 2016 at 8:20 PM, Gabriele Paoloni
<gabriele.paoloni at huawei.com> wrote:
> Hi, sorry to be late on this
>
>> -----Original Message-----
>> From: linux-kernel-owner at vger.kernel.org [mailto:linux-kernel-
>> owner at vger.kernel.org] On Behalf Of Jisheng Zhang
>> Sent: 16 March 2016 11:41
>> To: jingoohan1 at gmail.com; pratyush.anand at gmail.com; bhelgaas at google.com
>> Cc: linux-pci at vger.kernel.org; linux-kernel at vger.kernel.org; linux-arm-
>> kernel at lists.infradead.org; Jisheng Zhang
>> Subject: [PATCH v2] PCI: designware: move remaining rc setup code to
>> dw_pcie_setup_rc()
>>
>> dw_pcie_setup_rc(), as its name indicates, setups the RC. But current
>> dw_pcie_host_init() also contains some necessary rc setup code.
>>
>> Another reason: the host may lost power during suspend to ram, the RC
>> need to be re-setup after resume. The rc can't be correctly resumed
>> without the rc setup code in dw_pcie_host_init().
>>
>> So this patch moves the code to dw_pcie_setup_rc() to address the above
>> two issues. After this patch, each pcie designware driver users could
>> call dw_pcie_setup_rc() to re-setup rc when resume back.
>
> I think this patch breaks the Hisilicon driver...
>
> Our driver performs linkup setup in UEFI therefore we do not call
> dw_pcie_setup_rc(), we only call dw_pcie_host_init().
>
> Maybe better to group the part of code to be moved in as separate
> function...
>
> Thanks and sorry for late reply.
>

I am just wondering, should n't then what ever we do in
dw_pcie_setup_rc() be done in your boot loader and not just link up.

~Pratyush



More information about the linux-arm-kernel mailing list