]> git.baikalelectronics.ru Git - kernel.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)
commit813785109fadba7a63f11dd6c589c6045f2cb886
treefafdda2d525c497e81f75920b1a77da7ab11d71a
parentb52cda632a9e0f0c7da46d64729a61fca6be5e83
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