/Linux-v5.10/drivers/pci/controller/cadence/ |
D | pcie-cadence.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Cadence PCIe controller driver. 4 // Author: Cyrille Pitchen <cyrille.pitchen@free-electrons.com> 8 #include "pcie-cadence.h" 10 void cdns_pcie_set_outbound_region(struct cdns_pcie *pcie, u8 busnr, u8 fn, in cdns_pcie_set_outbound_region() argument 18 u64 sz = 1ULL << fls64(size - 1); in cdns_pcie_set_outbound_region() 30 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_PCI_ADDR0(r), addr0); in cdns_pcie_set_outbound_region() 31 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_PCI_ADDR1(r), addr1); in cdns_pcie_set_outbound_region() 33 /* Set the PCIe header descriptor */ in cdns_pcie_set_outbound_region() 42 * PCIe descriptor, the PCI function number must be set into in cdns_pcie_set_outbound_region() [all …]
|
/Linux-v5.10/Documentation/devicetree/bindings/phy/ |
D | brcm,cygnus-pcie-phy.txt | 1 Broadcom Cygnus PCIe PHY 4 - compatible: must be "brcm,cygnus-pcie-phy" 5 - reg: base address and length of the PCIe PHY block 6 - #address-cells: must be 1 7 - #size-cells: must be 0 9 Each PCIe PHY should be represented by a child node 12 - reg: the PHY ID 13 0 - PCIe RC 0 14 1 - PCIe RC 1 15 - #phy-cells: must be 0 [all …]
|
D | nvidia,tegra124-xusb-padctl.txt | 11 Some of the lanes are high-speed lanes, which can be used for PCIe, SATA or 12 super-speed USB. Other lanes are for various types of low-speed, full-speed 13 or high-speed USB (such as UTMI, ULPI and HSIC). The XUSB pad controller 14 contains a software-configurable mux that sits between the I/O controller 15 ports (e.g. PCIe) and the lanes. 17 In addition to per-lane configuration, USB 3.0 ports may require additional 18 settings on a per-board basis. 20 Pads will be represented as children of the top-level XUSB pad controller 23 PHY bindings, as described by the phy-bindings.txt file in this directory. 29 abstraction of the signals that are routed to a USB receptacle (i.e. a PHY [all …]
|
D | lantiq,vrx200-pcie-phy.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/lantiq,vrx200-pcie-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Lantiq VRX200 and ARX300 PCIe PHY Device Tree Bindings 10 - Martin Blumenstingl <martin.blumenstingl@googlemail.com> 13 "#phy-cells": 15 description: selects the PHY mode as defined in <dt-bindings/phy/phy-lantiq-vrx200-pcie.h> 19 - lantiq,vrx200-pcie-phy 20 - lantiq,arx300-pcie-phy [all …]
|
D | qcom,qmp-phy.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: "http://devicetree.org/schemas/phy/qcom,qmp-phy.yaml#" 6 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 8 title: Qualcomm QMP PHY controller 11 - Manu Gautam <mgautam@codeaurora.org> 14 QMP phy controller supports physical layer functionality for a number of 15 controllers on Qualcomm chipsets, such as, PCIe, UFS, and USB. 20 - qcom,ipq8074-qmp-pcie-phy 21 - qcom,ipq8074-qmp-usb3-phy [all …]
|
D | brcm,sr-pcie-phy.txt | 1 Broadcom Stingray PCIe PHY 4 - compatible: must be "brcm,sr-pcie-phy" 5 - reg: base address and length of the PCIe SS register space 6 - brcm,sr-cdru: phandle to the CDRU syscon node 7 - brcm,sr-mhb: phandle to the MHB syscon node 8 - #phy-cells: Must be 1, denotes the PHY index 11 PHY index goes from 0 to 7 13 For the internal PAXC based root complex, PHY index is always 8 17 compatible = "brcm,sr-mhb", "syscon"; 22 compatible = "brcm,sr-cdru", "syscon"; [all …]
|
D | socionext,uniphier-pcie-phy.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/phy/socionext,uniphier-pcie-phy.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Socionext UniPhier PCIe PHY 10 This describes the devicetree bindings for PHY interface built into 11 PCIe controller implemented on Socionext UniPhier SoCs. 14 - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> 19 - socionext,uniphier-pro5-pcie-phy 20 - socionext,uniphier-ld20-pcie-phy [all …]
|
D | ti-phy.txt | 1 TI PHY: DT DOCUMENTATION FOR PHYs in TI PLATFORMs 3 OMAP CONTROL PHY 6 - compatible: Should be one of 7 "ti,control-phy-otghs" - if it has otghs_control mailbox register as on OMAP4. 8 "ti,control-phy-usb2" - if it has Power down bit in control_dev_conf register 10 "ti,control-phy-pipe3" - if it has DPLL and individual Rx & Tx power control 11 e.g. USB3 PHY and SATA PHY on OMAP5. 12 "ti,control-phy-pcie" - for pcie to support external clock for pcie and to 14 e.g. PCIE PHY in DRA7x 15 "ti,control-phy-usb2-dra7" - if it has power down register like USB2 PHY on [all …]
|
D | amlogic,meson-axg-pcie.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: "http://devicetree.org/schemas/phy/amlogic,meson-axg-pcie.yaml#" 5 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 7 title: Amlogic AXG PCIE PHY 10 - Remi Pommarel <repk@triplefau.lt> 14 const: amlogic,axg-pcie-phy 25 phy-names: 28 "#phy-cells": 32 - compatible [all …]
|
D | phy-miphy365x.txt | 1 STMicroelectronics STi MIPHY365x PHY binding 4 This binding describes a miphy device that is used to control PHY hardware 5 for SATA and PCIe. 8 - compatible : Should be "st,miphy365x-phy" 9 - st,syscfg : Phandle / integer array property. Phandle of sysconfig group 11 an entry for each port sub-node, specifying the control 14 Required nodes : A sub-node is required for each channel the controller 16 'reg' and 'reg-names' properties are used inside these 21 - #phy-cells : Should be 1 (See second example) 23 - PHY_TYPE_SATA [all …]
|
/Linux-v5.10/drivers/pci/controller/dwc/ |
D | pcie-armada8k.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * PCIe host controller driver for Marvell Armada-8K SoCs 5 * Armada-8K PCIe Glue Layer Source Code 20 #include <linux/phy/phy.h> 26 #include "pcie-designware.h" 34 struct phy *phy[ARMADA8K_PCIE_MAX_LANES]; member 62 * AR/AW Cache defaults: Normal memory, Write-Back, Read / Write 72 #define to_armada8k_pcie(x) dev_get_drvdata((x)->dev) 74 static void armada8k_pcie_disable_phys(struct armada8k_pcie *pcie) in armada8k_pcie_disable_phys() argument 79 phy_power_off(pcie->phy[i]); in armada8k_pcie_disable_phys() [all …]
|
/Linux-v5.10/Documentation/devicetree/bindings/pci/ |
D | rockchip-pcie-host.txt | 1 * Rockchip AXI PCIe Root Port Bridge DT description 4 - #address-cells: Address representation for root ports, set to <3> 5 - #size-cells: Size representation for root ports, set to <2> 6 - #interrupt-cells: specifies the number of cells needed to encode an 8 - compatible: Should contain "rockchip,rk3399-pcie" 9 - reg: Two register ranges as listed in the reg-names property 10 - reg-names: Must include the following names 11 - "axi-base" 12 - "apb-base" 13 - clocks: Must contain an entry for each entry in clock-names. [all …]
|
D | pci-keystone.txt | 1 TI Keystone PCIe interface 4 hardware version 3.65. It shares common functions with the PCIe DesignWare 6 Documentation/devicetree/bindings/pci/designware-pcie.txt 8 Please refer to Documentation/devicetree/bindings/pci/designware-pcie.txt 12 Required Properties:- 14 compatibility: Should be "ti,keystone-pcie" for RC on Keystone2 SoC 15 Should be "ti,am654-pcie-rc" for RC on AM654x SoC 16 reg: Three register ranges as listed in the reg-names property 17 reg-names: "dbics" for the DesignWare PCIe registers, "app" for the 22 interrupt-cells: should be set to 1 [all …]
|
D | samsung,exynos5440-pcie.txt | 1 * Samsung Exynos 5440 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 designware-pcie.txt. 7 - compatible: "samsung,exynos5440-pcie" 8 - reg: base addresses and lengths of the PCIe controller, 9 - reg-names : First name should be set to "elbi". 12 NOTE: When using the "config" property, reg-names must be set. 13 - interrupts: A list of interrupt outputs for level interrupt, 15 - phys: From PHY binding. Phandle for the generic PHY. 16 Refer to Documentation/devicetree/bindings/phy/samsung-phy.txt [all …]
|
D | rockchip-pcie-ep.txt | 1 * Rockchip AXI PCIe Endpoint Controller DT description 4 - compatible: Should contain "rockchip,rk3399-pcie-ep" 5 - reg: Two register ranges as listed in the reg-names property 6 - reg-names: Must include the following names 7 - "apb-base" 8 - "mem-base" 9 - clocks: Must contain an entry for each entry in clock-names. 10 See ../clocks/clock-bindings.txt for details. 11 - clock-names: Must include the following entries: 12 - "aclk" [all …]
|
D | brcm,iproc-pcie.txt | 1 * Broadcom iProc PCIe controller with the platform bus interface 4 - compatible: 5 "brcm,iproc-pcie" for the first generation of PAXB based controller, 7 "brcm,iproc-pcie-paxb-v2" for the second generation of PAXB-based 9 "brcm,iproc-pcie-paxc" for the first generation of PAXC based 11 "brcm,iproc-pcie-paxc-v2" for the second generation of PAXC based 13 PAXB-based root complex is used for external endpoint devices. PAXC-based 15 - reg: base address and length of the PCIe controller I/O register space 16 - #interrupt-cells: set to <1> 17 - interrupt-map-mask and interrupt-map, standard PCI properties to define the [all …]
|
D | fsl,imx6q-pcie.txt | 1 * Freescale i.MX6 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 designware-pcie.txt. 7 - compatible: 8 - "fsl,imx6q-pcie" 9 - "fsl,imx6sx-pcie", 10 - "fsl,imx6qp-pcie" 11 - "fsl,imx7d-pcie" 12 - "fsl,imx8mq-pcie" 13 - reg: base address and length of the PCIe controller [all …]
|
D | qcom,pcie.txt | 3 - compatible: 7 - "qcom,pcie-ipq8064" for ipq8064 8 - "qcom,pcie-ipq8064-v2" for ipq8064 rev 2 or ipq8065 9 - "qcom,pcie-apq8064" for apq8064 10 - "qcom,pcie-apq8084" for apq8084 11 - "qcom,pcie-msm8996" for msm8996 or apq8096 12 - "qcom,pcie-ipq4019" for ipq4019 13 - "qcom,pcie-ipq8074" for ipq8074 14 - "qcom,pcie-qcs404" for qcs404 15 - "qcom,pcie-sdm845" for sdm845 [all …]
|
/Linux-v5.10/drivers/phy/broadcom/ |
D | phy-bcm-sr-pcie.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2016-2018 Broadcom 12 #include <linux/phy/phy.h> 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 43 * @index: PHY index 44 * @phy: pointer to the kernel PHY device 49 struct phy *phy; member 53 * struct sr_pcie_phy_core - Stingray PCIe PHY core control [all …]
|
D | phy-bcm-cygnus-pcie.c | 18 #include <linux/phy/phy.h> 34 * struct cygnus_pcie_phy - Cygnus PCIe PHY device 35 * @core: pointer to the Cygnus PCIe PHY core control 36 * @id: internal ID to identify the Cygnus PCIe PHY 37 * @phy: pointer to the kernel PHY device 42 struct phy *phy; member 46 * struct cygnus_pcie_phy_core - Cygnus PCIe PHY core control 50 * @phys: pointer to Cygnus PHY device 59 static int cygnus_pcie_power_config(struct cygnus_pcie_phy *phy, bool enable) in cygnus_pcie_power_config() argument 61 struct cygnus_pcie_phy_core *core = phy->core; in cygnus_pcie_power_config() [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # Phy drivers for Broadcom platforms 6 tristate "BCM63xx USBH PHY driver" 10 Enable this to support the BCM63xx USBH PHY driver. 14 tristate "Broadcom Cygnus PCIe PHY driver" 19 Enable this to support the Broadcom Cygnus PCIe PHY. 23 tristate "Broadcom Stingray USB PHY driver" 28 Enable this to support the Broadcom Stingray USB PHY 34 tristate "Broadcom Kona USB2 PHY Driver" 38 Enable this to support the Broadcom Kona USB 2.0 PHY. [all …]
|
/Linux-v5.10/drivers/pci/controller/ |
D | pcie-iproc-platform.c | 1 // SPDX-License-Identifier: GPL-2.0 17 #include <linux/phy/phy.h> 20 #include "pcie-iproc.h" 24 .compatible = "brcm,iproc-pcie", 27 .compatible = "brcm,iproc-pcie-paxb-v2", 30 .compatible = "brcm,iproc-pcie-paxc", 33 .compatible = "brcm,iproc-pcie-paxc-v2", 42 struct device *dev = &pdev->dev; in iproc_pcie_pltfm_probe() 43 struct iproc_pcie *pcie; in iproc_pcie_pltfm_probe() local 44 struct device_node *np = dev->of_node; in iproc_pcie_pltfm_probe() [all …]
|
D | pci-aardvark.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for the Aardvark PCIe controller, used on Marvell Armada 20 #include <linux/phy/phy.h> 28 #include "../pci-bridge-emul.h" 30 /* PCIe core registers */ 128 /* PCIe core controller registers */ 136 /* PCIe Central Interrupts Registers */ 202 struct phy *phy; member 205 static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg) in advk_writel() argument 207 writel(val, pcie->base + reg); in advk_writel() [all …]
|
D | pci-tegra.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * PCIe host controller driver for Tegra SoCs 8 * Based on NVIDIA PCIe driver 9 * Copyright (c) 2008-2009, NVIDIA Corporation. 11 * Bits taken from arch/arm/mach-dove/pcie.c 33 #include <linux/phy/phy.h> 270 * Fields in PADS_REFCLK_CFG*. Those registers form an array of 16-bit 271 * entries, one entry per PCIe port. These field definitions and desired 361 struct phy *phy; member 376 struct tegra_pcie *pcie; member [all …]
|
/Linux-v5.10/drivers/staging/mt7621-pci/ |
D | pci-mt7621.c | 1 // SPDX-License-Identifier: GPL-2.0+ 12 * support RT2880/RT3883 PCIe 15 * support RT6855/MT7620 PCIe 29 #include <linux/phy/phy.h> 49 /* Host-PCI bridge registers */ 66 /* PCIe RC control registers */ 92 * struct mt7621_pcie_port - PCIe port information 95 * @pcie: pointer to PCIe host info 96 * @phy: pointer to PHY control block 106 struct mt7621_pcie *pcie; member [all …]
|