/linux/drivers/pci/controller/dwc/ |
H A D | pci-layerscape-ep.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * PCIe controller EP driver for Freescale Layerscape SoCs 19 #include "pcie-designware.h" 24 /* PEX PFa PCIE PME and message interrupt registers*/ 35 #define to_ls_pcie_ep(x) dev_get_drvdata((x)->dev) 52 static u32 ls_pcie_pf_lut_readl(struct ls_pcie_ep *pcie, u32 offset) in ls_pcie_pf_lut_readl() argument 54 struct dw_pcie *pci = pcie->pci; in ls_pcie_pf_lut_readl() 56 if (pcie->big_endian) in ls_pcie_pf_lut_readl() 57 return ioread32be(pci->dbi_base + offset); in ls_pcie_pf_lut_readl() 59 return ioread32(pci->dbi_base + offset); in ls_pcie_pf_lut_readl() [all …]
|
H A D | pcie-keembay.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * PCIe controller driver for Intel Keem Bay 22 #include "pcie-designware.h" 72 static void keembay_ep_reset_assert(struct keembay_pcie *pcie) in keembay_ep_reset_assert() argument 74 gpiod_set_value_cansleep(pcie->reset, 1); in keembay_ep_reset_assert() 78 static void keembay_ep_reset_deassert(struct keembay_pcie *pcie) in keembay_ep_reset_deassert() argument 84 * Specification Revision 1.1, Table-2.4. in keembay_ep_reset_deassert() 88 gpiod_set_value_cansleep(pcie->reset, 0); in keembay_ep_reset_deassert() 92 static void keembay_pcie_ltssm_set(struct keembay_pcie *pcie, bool enable) in keembay_pcie_ltssm_set() argument 96 val = readl(pcie->apb_base + PCIE_REGS_PCIE_APP_CNTRL); in keembay_pcie_ltssm_set() [all …]
|
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-designware-plat.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * PCIe RC driver for Synopsys DesignWare Core 5 * Copyright (C) 2015-2016 Synopsys, Inc. (www.synopsys.com) 21 #include "pcie-designware.h" 35 static void dw_plat_pcie_ep_init(struct dw_pcie_ep *ep) in dw_plat_pcie_ep_init() argument 37 struct dw_pcie *pci = to_dw_pcie_from_ep(ep); in dw_plat_pcie_ep_init() 44 static int dw_plat_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_plat_pcie_ep_raise_irq() argument 47 struct dw_pcie *pci = to_dw_pcie_from_ep(ep); in dw_plat_pcie_ep_raise_irq() 51 return dw_pcie_ep_raise_intx_irq(ep, func_no); in dw_plat_pcie_ep_raise_irq() 53 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in dw_plat_pcie_ep_raise_irq() [all …]
|
H A D | pcie-uniphier-ep.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * PCIe endpoint controller driver for UniPhier SoCs 20 #include "pcie-designware.h" 88 #define to_uniphier_pcie(x) dev_get_drvdata((x)->dev) 95 val = readl(priv->base + PCL_APP_READY_CTRL); in uniphier_pcie_ltssm_enable() 100 writel(val, priv->base + PCL_APP_READY_CTRL); in uniphier_pcie_ltssm_enable() 108 val = readl(priv->base + PCL_RSTCTRL2); in uniphier_pcie_phy_reset() 113 writel(val, priv->base + PCL_RSTCTRL2); in uniphier_pcie_phy_reset() 120 /* set EP mode */ in uniphier_pcie_pro5_init_ep() 121 val = readl(priv->base + PCL_MODE); in uniphier_pcie_pro5_init_ep() [all …]
|
/linux/Documentation/devicetree/bindings/pci/ |
H A D | ti,j721e-pci-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 # Copyright (C) 2020 Texas Instruments Incorporated - http://www.ti.com/ 4 --- 5 $id: http://devicetree.org/schemas/pci/ti,j721e-pci-ep.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: TI J721E PCI EP (PCIe Wrapper) 11 - Kishon Vijay Abraham I <kishon@ti.com> 16 - const: ti,j721e-pcie-ep 17 - const: ti,j784s4-pcie-ep 18 - description: PCIe EP controller in AM64 [all …]
|
H A D | qcom,pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/qcom,pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Qualcomm PCIe Endpoint Controller 10 - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 15 - enum: 16 - qcom,sa8775p-pcie-ep 17 - qcom,sdx55-pcie-ep 18 - qcom,sm8450-pcie-ep [all …]
|
H A D | rcar-pci-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 # Copyright (C) 2020 Renesas Electronics Europe GmbH - https://www.renesas.com/eu/en/ 4 --- 5 $id: http://devicetree.org/schemas/pci/rcar-pci-ep.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Renesas R-Car PCIe Endpoint 11 - Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> 12 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> 17 - enum: 18 - renesas,r8a774a1-pcie-ep # RZ/G2M [all …]
|
H A D | socionext,uniphier-pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/socionext,uniphier-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Socionext UniPhier PCIe endpoint controller 10 UniPhier PCIe endpoint controller is based on the Synopsys DesignWare 11 PCI core. It shares common features with the PCIe DesignWare core and 13 Documentation/devicetree/bindings/pci/snps,dw-pcie-ep.yaml. 16 - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> 21 - socionext,uniphier-pro5-pcie-ep [all …]
|
H A D | ti-pci.txt | 3 PCIe DesignWare Controller 4 - compatible: Should be "ti,dra7-pcie" for RC (deprecated) 5 Should be "ti,dra7-pcie-ep" for EP (deprecated) 6 Should be "ti,dra746-pcie-rc" for dra74x/dra76 in RC mode 7 Should be "ti,dra746-pcie-ep" for dra74x/dra76 in EP mode 8 Should be "ti,dra726-pcie-rc" for dra72x in RC mode 9 Should be "ti,dra726-pcie-ep" for dra72x in EP mode 10 - phys : list of PHY specifiers (used by generic PHY framework) 11 - phy-names : must be "pcie-phy0", "pcie-phy1", "pcie-phyN".. based on the 13 - ti,hwmods : Name of the hwmod associated to the pcie, "pcie<X>", [all …]
|
H A D | rcar-gen4-pci-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 # Copyright (C) 2022-2023 Renesas Electronics Corp. 4 --- 5 $id: http://devicetree.org/schemas/pci/rcar-gen4-pci-ep.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Renesas R-Car Gen4 PCIe Endpoint 11 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> 14 - $ref: snps,dw-pcie-ep.yaml# 19 - enum: 20 - renesas,r8a779f0-pcie-ep # R-Car S4-8 [all …]
|
H A D | rockchip-dw-pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/rockchip-dw-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: DesignWare based PCIe Endpoint controller on Rockchip SoCs 10 - Niklas Cassel <cassel@kernel.org> 13 RK3588 SoC PCIe Endpoint controller is based on the Synopsys DesignWare 14 PCIe IP and thus inherits all the common properties defined in 15 snps,dw-pcie-ep.yaml. 18 - $ref: /schemas/pci/snps,dw-pcie-ep.yaml# [all …]
|
H A D | cdns,cdns-pcie-ep.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/pci/cdns,cdns-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Cadence PCIe EP Controller 10 - Tom Joseph <tjoseph@cadence.com> 13 - $ref: cdns-pcie-ep.yaml# 17 const: cdns,cdns-pcie-ep 22 reg-names: 24 - const: reg [all …]
|
H A D | ti,am65-pci-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 # Copyright (C) 2021 Texas Instruments Incorporated - http://www.ti.com/ 4 --- 5 $id: http://devicetree.org/schemas/pci/ti,am65-pci-ep.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 - Kishon Vijay Abraham I <kishon@ti.com> 14 - $ref: pci-ep.yaml# 19 - ti,am654-pcie-ep 24 reg-names: 26 - const: app [all …]
|
H A D | axis,artpec6-pcie.txt | 1 * Axis ARTPEC-6 PCIe interface 3 This PCIe host controller is based on the Synopsys DesignWare PCIe IP 4 and thus inherits all the common properties defined in snps,dw-pcie.yaml. 7 - compatible: "axis,artpec6-pcie", "snps,dw-pcie" for ARTPEC-6 in RC mode; 8 "axis,artpec6-pcie-ep", "snps,dw-pcie" for ARTPEC-6 in EP mode; 9 "axis,artpec7-pcie", "snps,dw-pcie" for ARTPEC-7 in RC mode; 10 "axis,artpec7-pcie-ep", "snps,dw-pcie" for ARTPEC-7 in EP mode; 11 - reg: base addresses and lengths of the PCIe controller (DBI), 13 - reg-names: Must include the following entries: 14 - "dbi" [all …]
|
H A D | rockchip,rk3399-pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/rockchip,rk3399-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Rockchip AXI PCIe Endpoint 10 - Shawn Lin <shawn.lin@rock-chips.com> 13 - $ref: /schemas/pci/pci-ep.yaml# 14 - $ref: rockchip,rk3399-pcie-common.yaml# 18 const: rockchip,rk3399-pcie-ep 22 reg-names: [all …]
|
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 | intel,keembay-pcie-ep.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pci/intel,keembay-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Intel Keem Bay PCIe controller Endpoint mode 10 - Wan Ahmad Zainie <wan.ahmad.zainie.wan.mohamad@intel.com> 11 - Srikanth Thokala <srikanth.thokala@intel.com> 15 const: intel,keembay-pcie-ep 20 reg-names: 22 - const: dbi [all …]
|
H A D | snps,dw-pcie-ep.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/pci/snps,dw-pcie-ep.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Synopsys DesignWare PCIe endpoint interface 10 - Jingoo Han <jingoohan1@gmail.com> 11 - Gustavo Pimentel <gustavo.pimentel@synopsys.com> 14 Synopsys DesignWare PCIe host controller endpoint 16 # Please create a separate DT-schema for your DWC PCIe Endpoint controller 17 # and make sure it's assigned with the vendor-specific compatible string. [all …]
|
/linux/drivers/pci/controller/cadence/ |
H A D | pcie-cadence-plat.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Cadence PCIe platform driver. 13 #include "pcie-cadence.h" 18 * struct cdns_plat_pcie - private data for this PCIe platform driver 19 * @pcie: Cadence PCIe controller 22 struct cdns_pcie *pcie; member 31 static u64 cdns_plat_cpu_addr_fixup(struct cdns_pcie *pcie, u64 cpu_addr) in cdns_plat_cpu_addr_fixup() argument 44 struct device *dev = &pdev->dev; in cdns_plat_pcie_probe() 46 struct cdns_pcie_ep *ep; in cdns_plat_pcie_probe() local 54 return -EINVAL; in cdns_plat_pcie_probe() [all …]
|
/linux/drivers/phy/samsung/ |
H A D | phy-exynos-pcie.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Samsung Exynos SoC series PCIe PHY driver 5 * Phy provider for PCIe controller on Exynos SoC series 7 * Copyright (C) 2017-2020 Samsung Electronics Co., Ltd. 34 /* PMU PCIE PHY isolation control */ 37 /* For Exynos pcie phy */ 52 struct exynos_pcie_phy *ep = phy_get_drvdata(phy); in exynos5433_pcie_phy_init() local 54 regmap_update_bits(ep->pmureg, EXYNOS5433_PMU_PCIE_PHY_OFFSET, in exynos5433_pcie_phy_init() 56 regmap_update_bits(ep->fsysreg, PCIE_EXYNOS5433_PHY_GLOBAL_RESET, in exynos5433_pcie_phy_init() 58 regmap_update_bits(ep->fsysreg, PCIE_EXYNOS5433_PHY_L1SUB_CM_CON, in exynos5433_pcie_phy_init() [all …]
|
/linux/Documentation/PCI/endpoint/ |
H A D | pci-ntb-howto.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 PCI Non-Transparent Bridge (NTB) Endpoint Function (EPF) User Guide 9 This document is a guide to help users use pci-epf-ntb function driver 11 be followed in the host side and EP side is given below. For the hardware 13 Documentation/PCI/endpoint/pci-ntb-function.rst 19 --------------------------- 27 2900000.pcie-ep 2910000.pcie-ep 32 2900000.pcie-ep 2910000.pcie-ep 36 ------------------------- 40 # ls /sys/bus/pci-epf/drivers [all …]
|
/linux/drivers/phy/broadcom/ |
H A D | phy-bcm-sr-pcie.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2016-2018 Broadcom 18 #define SR_PAXC_PHY_IDX (SR_NR_PCIE_PHYS - 1) 40 * struct sr_pcie_phy - Stingray PCIe PHY 42 * @core: pointer to the Stingray PCIe PHY core control 53 * struct sr_pcie_phy_core - Stingray PCIe PHY core control 56 * @base: base register of PCIe SS 60 * @phys: array of PCIe PHYs 72 * PCIe PIPEMUX lookup table 75 * The array element represents a bitmap where a set bit means the PCIe [all …]
|
/linux/arch/arm64/boot/dts/ti/ |
H A D | k3-j784s4-evm-pcie0-pcie1-ep.dtso | 1 // SPDX-License-Identifier: GPL-2.0-only OR MIT 8 * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/ 11 /dts-v1/; 14 #include <dt-bindings/interrupt-controller/arm-gic.h> 15 #include <dt-bindings/soc/ti,sci_pm_domain.h> 17 #include "k3-pinctrl.h" 32 #address-cells = <2>; 33 #size-cells = <2>; 34 interrupt-parent = <&gic500>; 36 pcie0_ep: pcie-ep@2900000 { [all …]
|