[PATCH v2] PCI: designware: move remaining rc setup code to dw_pcie_setup_rc()
flat view
From: pratyush.anand@gmail.com (Pratyush Anand)
Date: 2016-04-07 06:59:13
Also in:
linux-pci, lkml
Hi Gab, Thanks for bringing it. On Wed, Apr 6, 2016 at 8:20 PM, Gabriele Paoloni [off-list ref] wrote:
Hi, sorry to be late on thisquoted
-----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