]> git.kernelconcepts.de Git - karo-tx-linux.git/commit
PCI: iproc: Fix PCIe reset logic
authorRay Jui <rjui@broadcom.com>
Wed, 16 Sep 2015 00:39:18 +0000 (17:39 -0700)
committerBjorn Helgaas <bhelgaas@google.com>
Fri, 25 Sep 2015 23:13:04 +0000 (18:13 -0500)
commit199ff14100095d52cd1b232cc0f3b12f348b5b07
treefafdda2d525c497e81f75920b1a77da7ab11d71a
parentbdb8a1844f3113ec08915d1e8e3fd5686fb2fb78
PCI: iproc: Fix PCIe reset logic

The current reset logic does not always properly reset the device.  For
example, in the case when the perst_b signal is already de-asserted in the
bootloader, the current reset logic fails to trigger a proper assert ->
de-assert reset sequence.

Fix the issue by always triggering the proper reset sequence.

Also explicitly select the desired reset source, i.e., perst_b, and reduce
the wait time after the device comes out of reset from 250 ms to 100 ms,
based on recommendation from the ASIC team.

Tested-by: Vladimir Dreizin <vdreizin@broadcom.com>
Tested-by: Darren Edamura <dedamura@broadcom.com>
Signed-off-by: Ray Jui <rjui@broadcom.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Vladimir Dreizin <vdreizin@broadcom.com>
Reviewed-by: Trac Hoang <trhoang@broadcom.com>
Reviewed-by: Scott Branden <sbranden@broadcom.com>
drivers/pci/host/pcie-iproc.c