/linux/Documentation/devicetree/bindings/pci/ |
H A D | nvidia,tegra194-pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/nvidia,tegra194-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 (and later) PCIe Endpoint controller (Synopsys DesignWare Core based) 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 12 - Vidya Sagar <vidyas@nvidia.com> 15 This PCIe controller is based on the Synopsys DesignWare PCIe IP and thus 16 inherits all the common properties defined in snps,dw-pcie-ep.yaml. Some [all …]
|
H A D | nvidia,tegra194-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/nvidia,tegra194-pcie.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 (and later) PCIe controller (Synopsys DesignWare Core based) 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 12 - Vidya Sagar <vidyas@nvidia.com> 15 This PCIe controller is based on the Synopsys DesignWare PCIe IP and thus 16 inherits all the common properties defined in snps,dw-pcie.yaml. Some of [all …]
|
/linux/Documentation/devicetree/bindings/phy/ |
H A D | phy-tegra194-p2u.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/phy-tegra194-p2u.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 & Tegra234 P2U 10 - Thierry Reding <treding@nvidia.com> 13 Tegra194 has two PHY bricks namely HSIO (High Speed IO) and NVHS (NVIDIA High 17 A P2U instance is a glue logic between Synopsys DesignWare Core PCIe IP's PIPE 19 PCIe lane. 24 - nvidia,tegra194-p2u [all …]
|
H A D | nvidia,tegra194-xusb-padctl.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 4 $id: http://devicetree.org/schemas/phy/nvidia,tegra194-xusb-padctl.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 XUSB pad controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 21 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 22 super-speed USB. Other lanes are for various types of low-speed, full-speed 23 or high-speed USB (such as UTMI, ULPI and HSIC). The XUSB pad controller [all …]
|
/linux/drivers/pci/controller/dwc/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 3 menu "DesignWare-based PCIe controllers" 18 bool "Amazon Annapurna Labs PCIe controller" 24 Say Y here to enable support of the Amazon's Annapurna Labs PCIe 25 controller IP on Amazon SoCs. The PCIe controller uses the DesignWare 27 required only for DT-based platforms. ACPI platforms with the 28 Annapurna Labs PCIe controller don't need to enable this. 31 tristate "Amlogic Meson PCIe controller" 38 and therefore the driver re-uses the DesignWare core functions to 45 bool "Axis ARTPEC-6 PCIe controller (host mode)" [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 2 obj-$(CONFIG_PCIE_DW) += pcie-designware.o 3 obj-$(CONFIG_PCIE_DW_HOST) += pcie-designware-host.o 4 obj-$(CONFIG_PCIE_DW_EP) += pcie-designware-ep.o 5 obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o 6 obj-$(CONFIG_PCIE_BT1) += pcie-bt1.o 7 obj-$(CONFIG_PCI_DRA7XX) += pci-dra7xx.o 8 obj-$(CONFIG_PCI_EXYNOS) += pci-exynos.o 9 obj-$(CONFIG_PCIE_FU740) += pcie-fu740.o 10 obj-$(CONFIG_PCI_IMX6) += pci-imx6.o [all …]
|
H A D | pcie-tegra194.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * PCIe host controller driver for the following SoCs 4 * Tegra194 7 * Copyright (C) 2019-2022 NVIDIA Corporation. 33 #include "pcie-designware.h" 35 #include <soc/tegra/bpmp-abi.h> 293 static inline void appl_writel(struct tegra_pcie_dw *pcie, const u32 value, in appl_writel() argument 296 writel_relaxed(value, pcie->appl_base + reg); in appl_writel() 299 static inline u32 appl_readl(struct tegra_pcie_dw *pcie, const u32 reg) in appl_readl() argument 301 return readl_relaxed(pcie->appl_base + reg); in appl_readl() [all …]
|
H A D | pcie-tegra194-acpi.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * ACPI quirks for Tegra194 PCIe host controller 11 #include <linux/pci-acpi.h> 12 #include <linux/pci-ecam.h> 14 #include "pcie-designware.h" 24 struct device *dev = cfg->parent; in tegra194_acpi_init() 29 return -ENOMEM; in tegra194_acpi_init() 31 pcie_ecam->config_base = cfg->win; in tegra194_acpi_init() 32 pcie_ecam->iatu_base = cfg->win + SZ_256K; in tegra194_acpi_init() 33 pcie_ecam->dbi_base = cfg->win + SZ_512K; in tegra194_acpi_init() [all …]
|
/linux/Documentation/devicetree/bindings/usb/ |
H A D | nvidia,tegra194-xusb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra194-xusb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 xHCI controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 18 const: nvidia,tegra194-xusb 22 - description: base and length of the xHCI host registers 23 - description: base and length of the XUSB FPCI registers [all …]
|
H A D | nvidia,tegra-xudc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/usb/nvidia,tegra-xudc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 14 - Nagarjuna Kristam <nkristam@nvidia.com> 15 - JC Kuo <jckuo@nvidia.com> 16 - Thierry Reding <treding@nvidia.com> 21 - enum: 22 - nvidia,tegra210-xudc # For Tegra210 23 - nvidia,tegra186-xudc # For Tegra186 [all …]
|
/linux/arch/arm64/boot/dts/nvidia/ |
H A D | tegra194.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include <dt-bindings/clock/tegra194-clock.h> 3 #include <dt-bindings/gpio/tegra194-gpio.h> 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/mailbox/tegra186-hsp.h> 6 #include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 7 #include <dt-bindings/pinctrl/pinctrl-tegra.h> 8 #include <dt-bindings/power/tegra194-powergate.h> 9 #include <dt-bindings/reset/tegra194-reset.h> 10 #include <dt-bindings/thermal/tegra194-bpmp-thermal.h> [all …]
|
H A D | tegra234-p3768-0000+p3767.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/input/linux-event-codes.h> 4 #include <dt-bindings/input/gpio-keys.h> 6 #include "tegra234-p3767.dtsi" 17 stdout-path = "serial0:115200n8"; 22 compatible = "nvidia,tegra194-hsuart"; 23 reset-names = "serial"; 28 compatible = "nvidia,tegra194-hsuart"; 29 reset-names = "serial"; 41 vcc-supply = <&vdd_1v8_sys>; [all …]
|
H A D | tegra234.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/clock/tegra234-clock.h> 4 #include <dt-bindings/gpio/tegra234-gpio.h> 5 #include <dt-bindings/interrupt-controller/arm-gic.h> 6 #include <dt-bindings/mailbox/tegra186-hsp.h> 7 #include <dt-bindings/memory/tegra234-mc.h> 8 #include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 9 #include <dt-bindings/power/tegra234-powergate.h> 10 #include <dt-bindings/reset/tegra234-reset.h> 11 #include <dt-bindings/thermal/tegra234-bpmp-thermal.h> [all …]
|
H A D | tegra194-p2888.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 2 #include "tegra194.dtsi" 4 #include <dt-bindings/mfd/max77620.h> 8 compatible = "nvidia,p2888", "nvidia,tegra194"; 27 stdout-path = "serial0:115200n8"; 34 phy-reset-gpios = <&gpio TEGRA194_MAIN_GPIO(G, 5) GPIO_ACTIVE_LOW>; 35 phy-handle = <&phy>; 36 phy-mode = "rgmii-id"; 39 #address-cells = <1>; 40 #size-cells = <0>; [all …]
|
H A D | tegra234-p3740-0002+p3701-0008.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 6 #include <dt-bindings/sound/rt5640.h> 7 #include "tegra234-p3701-0008.dtsi" 11 compatible = "nvidia,p3740-0002+p3701-0008", "nvidia,p3701-0008", "nvidia,tegra234"; 19 stdout-path = "serial0:115200n8"; 29 dai-format = "i2s"; 30 remote-endpoint = <&rt5640_ep>; [all …]
|
H A D | tegra234-p3737-0000+p3701-0000.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 6 #include <dt-bindings/sound/rt5640.h> 8 #include "tegra234-p3701-0000.dtsi" 12 compatible = "nvidia,p3737-0000+p3701-0000", "nvidia,p3701-0000", "nvidia,tegra234"; 21 stdout-path = "serial0:115200n8"; 31 dai-format = "i2s"; 32 remote-endpoint = <&rt5640_ep>; [all …]
|
H A D | tegra194-p2972-0000.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 7 #include "tegra194-p2888.dtsi" 11 compatible = "nvidia,p2972-0000", "nvidia,tegra194"; 24 #address-cells = <1>; 25 #size-cells = <0>; 31 remote-endpoint = <&xbar_i2s1_ep>; 39 dai-format = "i2s"; [all …]
|
H A D | tegra194-p3509-0000.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include <dt-bindings/gpio/tegra194-gpio.h> 4 #include <dt-bindings/input/linux-event-codes.h> 5 #include <dt-bindings/input/gpio-keys.h> 19 #address-cells = <1>; 20 #size-cells = <0>; 26 remote-endpoint = <&xbar_i2s3_ep>; 34 dai-format = "i2s"; 45 #address-cells = <1>; 46 #size-cells = <0>; [all …]
|
/linux/drivers/acpi/ |
H A D | pci_mcfg.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include <linux/pci-acpi.h> 14 #include <linux/pci-ecam.h> 37 ((end) - (start) + 1), \ 110 THUNDER_PEM_QUIRK(2, 0), /* off-chip devices */ 111 THUNDER_PEM_QUIRK(2, 1), /* off-chip devices */ 121 { "NVIDIA", "TEGRA194", 1, 0, MCFG_BUS_ANY, &tegra194_pcie_ops}, 122 { "NVIDIA", "TEGRA194", 1, 1, MCFG_BUS_ANY, &tegra194_pcie_ops}, 123 { "NVIDIA", "TEGRA194", 1, 2, MCFG_BUS_ANY, &tegra194_pcie_ops}, 124 { "NVIDIA", "TEGRA194", 1, 3, MCFG_BUS_ANY, &tegra194_pcie_ops}, [all …]
|
/linux/Documentation/devicetree/bindings/pinctrl/ |
H A D | nvidia,tegra194-pinmux.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pinctrl/nvidia,tegra194-pinmux.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NVIDIA Tegra194 Pinmux Controller 10 - Thierry Reding <thierry.reding@gmail.com> 11 - Jon Hunter <jonathanh@nvidia.com> 16 - nvidia,tegra194-pinmux 17 - nvidia,tegra194-pinmux-aon 21 - description: pinmux registers [all …]
|
/linux/drivers/soc/tegra/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 4 # 32-bit ARM SoCs 63 # 64-bit ARM SoCs 75 Tegra124's "4+1" Cortex-A15 CPU complex. 85 the Tegra210 has four Cortex-A57 cores paired with four Cortex-A53 88 and providing 256 CUDA cores. It supports hardware-accelerated en- 93 controllers, such as GPIO, I2C, SPI, SDHCI, PCIe, SATA and XHCI, to 106 combination of Denver and Cortex-A57 CPU cores and a GPU based on 107 the Pascal architecture. It contains an ADSP with a Cortex-A9 CPU 109 multi-format support, ISP for image capture processing and BPMP for [all …]
|
H A D | pmc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Copyright (c) 2018-2024, NVIDIA CORPORATION. All rights reserved. 12 #define pr_fmt(fmt) "tegra-pmc: " fmt 14 #include <linux/arm-smccc.h> 16 #include <linux/clk-provider.h> 18 #include <linux/clk/clk-conf.h> 37 #include <linux/pinctrl/pinconf-generic.h> 56 #include <dt-bindings/interrupt-controller/arm-gic.h> 57 #include <dt-bindings/pinctrl/pinctrl-tegra-io-pad.h> 58 #include <dt-bindings/gpio/tegra186-gpio.h> [all …]
|
/linux/include/linux/ |
H A D | pci-ecam.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 * Memory address shift values for the byte-level address that 21 * Section 7.2.2, Table 7-1, p. 677. 62 void __iomem *win; /* 64-bit single mapping */ 63 void __iomem **winp; /* 32-bit per-bus mapping */ 74 /* map_bus when ->sysdata is an instance of pci_config_window */ 81 extern const struct pci_ecam_ops pci_32b_ops; /* 32-bit accesses only */ 82 extern const struct pci_ecam_ops pci_32b_read_ops; /* 32-bit read only */ 86 extern const struct pci_ecam_ops xgene_v1_pcie_ecam_ops; /* APM X-Gene PCIe v1 */ 87 extern const struct pci_ecam_ops xgene_v2_pcie_ecam_ops; /* APM X-Gene PCIe v2.x */ [all …]
|
/linux/drivers/phy/tegra/ |
H A D | xusb.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2014-2022, NVIDIA CORPORATION. All rights reserved. 31 if (args->args_count != 0) in tegra_xusb_pad_of_xlate() 32 return ERR_PTR(-EINVAL); in tegra_xusb_pad_of_xlate() 34 for (i = 0; i < pad->soc->num_lanes; i++) { in tegra_xusb_pad_of_xlate() 35 if (!pad->lanes[i]) in tegra_xusb_pad_of_xlate() 38 if (pad->lanes[i]->dev.of_node == args->np) { in tegra_xusb_pad_of_xlate() 39 phy = pad->lanes[i]; in tegra_xusb_pad_of_xlate() 45 phy = ERR_PTR(-ENODEV); in tegra_xusb_pad_of_xlate() 53 .compatible = "nvidia,tegra124-xusb-padctl", [all …]
|