Thread (25 messages) 25 messages, 3 authors, 2019-06-07

Re: [PATCH V8 14/15] PCI: tegra: Add Tegra194 PCIe support

From: Vidya Sagar <hidden>
Date: 2019-06-07 14:10:50
Also in: linux-devicetree, linux-pci, linux-tegra, lkml

On 6/7/2019 12:22 AM, Dmitry Osipenko wrote:
06.06.2019 19:35, Dmitry Osipenko пишет:
quoted
26.05.2019 7:37, Vidya Sagar пишет:
quoted
Add support for Synopsys DesignWare core IP based PCIe host controller
present in Tegra194 SoC.

Signed-off-by: Vidya Sagar <redacted>
---
Changes since [v7]:
* Addressed review comments from Thierry

Changes since [v6]:
* Removed code around "nvidia,disable-aspm-states" DT property
* Refactored code to remove code duplication

Changes since [v5]:
* Addressed review comments from Thierry

Changes since [v4]:
* None

Changes since [v3]:
* None

Changes since [v2]:
* Changed 'nvidia,init-speed' to 'nvidia,init-link-speed'
* Changed 'nvidia,pex-wake' to 'nvidia,wake-gpios'
* Removed .runtime_suspend() & .runtime_resume() implementations

Changes since [v1]:
* Made CONFIG_PCIE_TEGRA194 as 'm' by default from its previous 'y' state
* Modified code as per changes made to DT documentation
* Refactored code to address Bjorn & Thierry's review comments
* Added goto to avoid recursion in tegra_pcie_dw_host_init() API
* Merged .scan_bus() of dw_pcie_host_ops implementation to tegra_pcie_dw_host_init() API

  drivers/pci/controller/dwc/Kconfig         |   10 +
  drivers/pci/controller/dwc/Makefile        |    1 +
  drivers/pci/controller/dwc/pcie-tegra194.c | 1621 ++++++++++++++++++++
  3 files changed, 1632 insertions(+)
  create mode 100644 drivers/pci/controller/dwc/pcie-tegra194.c
diff --git a/drivers/pci/controller/dwc/Kconfig b/drivers/pci/controller/dwc/Kconfig
index a6ce1ee51b4c..884112afc11b 100644
--- a/drivers/pci/controller/dwc/Kconfig
+++ b/drivers/pci/controller/dwc/Kconfig
@@ -220,6 +220,16 @@ config PCI_MESON
  	  and therefore the driver re-uses the DesignWare core functions to
  	  implement the driver.
  
+config PCIE_TEGRA194
+	tristate "NVIDIA Tegra194 (and later) PCIe controller"
+	depends on (TEGRA_BPMP && ARCH_TEGRA) || COMPILE_TEST
TEGRA_BPMP will be enough here as it depends on other relevant options.

Hence I mean:

	depends on TEGRA_BPMP || COMPILE_TEST
Maybe it's worth to even change TEGRA_BPMP to ARCH_TEGRA_194_SOC.
Although then you'll have to extend it with other platforms later on,
but probably that's fine.
I received an explicit comment previously to make this dependent on TEGRA_BPMP
as the driver is using APIs to get certain jobs done by BPMP-FW. But, since
we can't boot kernel in the first place without having BPMP-FW in place, I think
it should be fine to make it dependent on ARCH_TEGRA_194_SOC directly.
quoted
quoted
+	depends on PCI_MSI_IRQ_DOMAIN
You probably want to s/depends on/select/ PCI_MSI_IRQ_DOMAIN, don't you?
I actually looked up the PCI_MSI_IRQ_DOMAIN and it is correct in your
case, my bad.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help