lkml.org 
[lkml]   [2017]   [Mar]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] PCI: dwc: fix crash seen due to missing ops
From
Date
Hello Bjorn


I think that it might be a good idea to include this for v4.11.
PCIe for artpec-6 SoC works fine on v4.10, if we manage to
include this before v4.11 gets released, PCIe for artpec-6 SoC
will work fine on v4.11 too.


Regards,
Niklas

On 03/27/2017 07:43 AM, Kishon Vijay Abraham I wrote:
(snip)
>>
>> Hello Joao
>>
>> Since commit 442ec4c04d12, we now have two different ops,
>> dw_pcie_ops (ops for dw_pcie) and dw_pcie_host_ops (ops for a pcie_port),
>> note that they are different. The dw_pcie_ops is missing for pcie-artpec6
>> and pcie-designware-plat (since we are using the generic link-up function).
>>
>> Before commit 442ec4c04d12, dw_pcie_writel_dbi had dw_pcie_host_ops as
>> parameter, after the commit it has dw_pcie_ops as parameter.
>> It should crash on pcie-designware-plat as well, since there are other
>> functions, like dw_pcie_link_up, that assumes that pci->ops != null.
>>
>> Another alternative to adding the dummy ops would be to add null checks
>> for all uses off pci->ops in pcie-designware.c.
>> I don't like the idea to sprinkle null checks everywhere pci->ops is used.
>
> I'm okay either ways.
>
> Acked-by: Kishon Vijay Abraham I <kishon@ti.com>
>
>>
>> One could add a null check in dw_pcie_host_init, but without a dummy ops
>> we would still fail this check, so our drivers would still be non-functional
>> in Linus's tree.
>>

\
 
 \ /
  Last update: 2017-03-29 13:24    [W:0.550 / U:0.096 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site