Hi Pratyush

Many thanks for quick replying

> -----Original Message-----
> From: Pratyush Anand [mailto:[email protected]]
> Sent: 07 April 2016 07:59
> To: Gabriele Paoloni
> Cc: Jisheng Zhang; [email protected]; [email protected]; linux-
> [email protected]; [email protected]; linux-arm-
> [email protected]
> Subject: Re: [PATCH v2] PCI: designware: move remaining rc setup code
> to dw_pcie_setup_rc()
> 
> Hi Gab,
> 
> Thanks for bringing it.
> 
> 
> On Wed, Apr 6, 2016 at 8:20 PM, Gabriele Paoloni
> <[email protected]> wrote:
> > Hi, sorry to be late on this
> >
> >> -----Original Message-----
> >> From: [email protected] [mailto:linux-kernel-
> >> [email protected]] On Behalf Of Jisheng Zhang
> >> Sent: 16 March 2016 11:41
> >> To: [email protected]; [email protected];
> [email protected]
> >> Cc: [email protected]; [email protected]; linux-
> arm-
> >> [email protected]; 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.

Currently the HiSilicon driver does not call dw_pcie_setup_rc() at all;
so everything is done in dw_pcie_setup_rc() is done in bootloader.

I guess your question is if we can execute in bootloader the part of
code the this patch has moved to in "dw_pcie_setup_rc()". I think the
problem here is that even if it was possible we would break backward
compatibility with previous bootloaders...

Thanks

Gab 


> 
> ~Pratyush

Reply via email to