| /kernel/linux/linux-5.10/include/linux/phy/ |
| D | phy.h | 1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 3 * phy.h -- generic phy header file 5 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com 15 #include <linux/device.h> 19 #include <linux/phy/phy-dp.h> 20 #include <linux/phy/phy-mipi-dphy.h> 22 struct phy; 48 * union phy_configure_opts - Opaque generic phy configuration 51 * the MIPI_DPHY phy mode. 61 * struct phy_ops - set of function pointers for performing phy operations [all …]
|
| /kernel/linux/linux-4.19/include/linux/phy/ |
| D | phy.h | 2 * phy.h -- generic phy header file 4 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com 19 #include <linux/device.h> 23 struct phy; 46 * struct phy_ops - set of function pointers for performing phy operations 47 * @init: operation to be performed for initializing phy 49 * @power_on: powering on the phy 50 * @power_off: powering off the phy 51 * @set_mode: set the mode of the phy 52 * @reset: resetting the phy [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/ |
| D | phy-core.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * phy-core.c -- Generic Phy framework. 5 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com 14 #include <linux/device.h> 17 #include <linux/phy/phy.h> 28 static void devm_phy_release(struct device *dev, void *res) in devm_phy_release() 30 struct phy *phy = *(struct phy **)res; in devm_phy_release() local 32 phy_put(dev, phy); in devm_phy_release() 35 static void devm_phy_provider_release(struct device *dev, void *res) in devm_phy_provider_release() 42 static void devm_phy_consume(struct device *dev, void *res) in devm_phy_consume() [all …]
|
| /kernel/linux/linux-4.19/drivers/phy/ |
| D | phy-core.c | 2 * phy-core.c -- Generic Phy framework. 4 * Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com 18 #include <linux/device.h> 21 #include <linux/phy/phy.h> 32 static void devm_phy_release(struct device *dev, void *res) in devm_phy_release() 34 struct phy *phy = *(struct phy **)res; in devm_phy_release() local 36 phy_put(phy); in devm_phy_release() 39 static void devm_phy_provider_release(struct device *dev, void *res) in devm_phy_provider_release() 46 static void devm_phy_consume(struct device *dev, void *res) in devm_phy_consume() 48 struct phy *phy = *(struct phy **)res; in devm_phy_consume() local [all …]
|
| /kernel/linux/linux-5.10/Documentation/driver-api/phy/ |
| D | phy.rst | 2 PHY subsystem 7 This document explains the Generic PHY Framework along with the APIs provided, 8 and how-to-use. 13 *PHY* is the abbreviation for physical layer. It is used to connect a device 14 to the physical medium e.g., the USB controller has a PHY to provide functions 15 such as serialization, de-serialization, encoding, decoding and is responsible 17 controllers have PHY functionality embedded into it and others use an external 18 PHY. Other peripherals that use PHY include Wireless LAN, Ethernet, 21 The intention of creating this framework is to bring the PHY drivers spread 22 all over the Linux kernel to drivers/phy to increase code re-use and for [all …]
|
| /kernel/linux/linux-4.19/Documentation/ |
| D | phy.txt | 2 PHY subsystem 7 This document explains the Generic PHY Framework along with the APIs provided, 8 and how-to-use. 13 *PHY* is the abbreviation for physical layer. It is used to connect a device 14 to the physical medium e.g., the USB controller has a PHY to provide functions 15 such as serialization, de-serialization, encoding, decoding and is responsible 17 controllers have PHY functionality embedded into it and others use an external 18 PHY. Other peripherals that use PHY include Wireless LAN, Ethernet, 21 The intention of creating this framework is to bring the PHY drivers spread 22 all over the Linux kernel to drivers/phy to increase code re-use and for [all …]
|
| /kernel/linux/linux-5.10/drivers/net/mdio/ |
| D | of_mdio.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * OF helpers for the MDIO (Ethernet PHY) API 7 * This file provides helper functions for extracting PHY device information 8 * out of the OpenFirmware device tree and using it to populate an mii_bus. 12 #include <linux/device.h> 15 #include <linux/phy.h> 28 /* Extract the clause 22 phy ID from the compatible string of the form 29 * ethernet-phy-idAAAA.BBBB */ 30 static int of_get_phy_id(struct device_node *device, u32 *phy_id) in of_get_phy_id() argument 36 of_property_for_each_string(device, "compatible", prop, cp) { in of_get_phy_id() [all …]
|
| /kernel/linux/linux-4.19/drivers/of/ |
| D | of_mdio.c | 2 * OF helpers for the MDIO (Ethernet PHY) API 8 * This file provides helper functions for extracting PHY device information 9 * out of the OpenFirmware device tree and using it to populate an mii_bus. 13 #include <linux/device.h> 16 #include <linux/phy.h> 30 /* Extract the clause 22 phy ID from the compatible string of the form 31 * ethernet-phy-idAAAA.BBBB */ 32 static int of_get_phy_id(struct device_node *device, u32 *phy_id) in of_get_phy_id() argument 38 of_property_for_each_string(device, "compatible", prop, cp) { in of_get_phy_id() 39 if (sscanf(cp, "ethernet-phy-id%4x.%4x", &upper, &lower) == 2) { in of_get_phy_id() [all …]
|
| /kernel/linux/linux-4.19/Documentation/networking/ |
| D | phy.txt | 2 ------- 3 PHY Abstraction Layer 4 (Updated 2008-04-08) 10 PHY. The PHY concerns itself with negotiating link parameters with the link 17 the PHY management code with the network driver. This has resulted in large 23 accessed are, in fact, busses, the PHY Abstraction Layer treats them as such. 26 1) Increase code-reuse 27 2) Increase overall code-maintainability 30 Basically, this layer is meant to provide an interface to PHY devices which 36 Most network devices are connected to a PHY by means of a management bus. [all …]
|
| /kernel/linux/linux-4.19/drivers/usb/phy/ |
| D | phy.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * phy.c -- USB phy handling 5 * Copyright (C) 2004-2013 Texas Instruments 10 #include <linux/device.h> 15 #include <linux/usb/phy.h> 33 struct usb_phy *phy; member 40 struct usb_phy *phy = NULL; in __usb_find_phy() local 42 list_for_each_entry(phy, list, head) { in __usb_find_phy() 43 if (phy->type != type) in __usb_find_phy() 46 return phy; in __usb_find_phy() [all …]
|
| /kernel/linux/linux-5.10/drivers/usb/phy/ |
| D | phy.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * phy.c -- USB phy handling 5 * Copyright (C) 2004-2013 Texas Instruments 10 #include <linux/device.h> 15 #include <linux/usb/phy.h> 33 struct usb_phy *phy; member 48 struct usb_phy *phy = NULL; in __usb_find_phy() local 50 list_for_each_entry(phy, list, head) { in __usb_find_phy() 51 if (phy->type != type) in __usb_find_phy() 54 return phy; in __usb_find_phy() [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/phy/ |
| D | rcar-gen3-phy-usb2.txt | 1 * Renesas R-Car generation 3 USB 2.0 PHY 3 This file provides information on what the device node for the R-Car generation 4 3 USB 2.0 PHY contains. 7 - compatible: "renesas,usb2-phy-r8a7795" if the device is a part of an R8A7795 9 "renesas,usb2-phy-r8a7796" if the device is a part of an R8A7796 11 "renesas,usb2-phy-r8a77965" if the device is a part of an 13 "renesas,usb2-phy-r8a77990" if the device is a part of an 15 "renesas,usb2-phy-r8a77995" if the device is a part of an 17 "renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3 compatible device. 20 SoC-specific version corresponding to the platform first [all …]
|
| D | phy-hisi-inno-usb2.txt | 1 Device tree bindings for HiSilicon INNO USB2 PHY 4 - compatible: Should be one of the following strings: 5 "hisilicon,inno-usb2-phy", 6 "hisilicon,hi3798cv200-usb2-phy". 7 - reg: Should be the address space for PHY configuration register in peripheral 9 - clocks: The phandle and clock specifier pair for INNO USB2 PHY device 11 - resets: The phandle and reset specifier pair for INNO USB2 PHY device reset 13 - #address-cells: Must be 1. 14 - #size-cells: Must be 0. 16 The INNO USB2 PHY device should be a child node of peripheral controller that [all …]
|
| D | rcar-gen2-phy.txt | 1 * Renesas R-Car generation 2 USB PHY 3 This file provides information on what the device node for the R-Car generation 4 2 USB PHY contains. 7 - compatible: "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC. 8 "renesas,usb-phy-r8a7745" if the device is a part of R8A7745 SoC. 9 "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC. 10 "renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC. 11 "renesas,usb-phy-r8a7794" if the device is a part of R8A7794 SoC. 12 "renesas,rcar-gen2-usb-phy" for a generic R-Car Gen2 or 13 RZ/G1 compatible device. [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/phy/ |
| D | phy-hisi-inno-usb2.txt | 1 Device tree bindings for HiSilicon INNO USB2 PHY 4 - compatible: Should be one of the following strings: 5 "hisilicon,inno-usb2-phy", 6 "hisilicon,hi3798cv200-usb2-phy". 7 - reg: Should be the address space for PHY configuration register in peripheral 9 - clocks: The phandle and clock specifier pair for INNO USB2 PHY device 11 - resets: The phandle and reset specifier pair for INNO USB2 PHY device reset 13 - #address-cells: Must be 1. 14 - #size-cells: Must be 0. 16 The INNO USB2 PHY device should be a child node of peripheral controller that [all …]
|
| D | rcar-gen2-phy.txt | 1 * Renesas R-Car generation 2 USB PHY 3 This file provides information on what the device node for the R-Car generation 4 2 USB PHY contains. 7 - compatible: "renesas,usb-phy-r8a7742" if the device is a part of R8A7742 SoC. 8 "renesas,usb-phy-r8a7743" if the device is a part of R8A7743 SoC. 9 "renesas,usb-phy-r8a7744" if the device is a part of R8A7744 SoC. 10 "renesas,usb-phy-r8a7745" if the device is a part of R8A7745 SoC. 11 "renesas,usb-phy-r8a77470" if the device is a part of R8A77470 SoC. 12 "renesas,usb-phy-r8a7790" if the device is a part of R8A7790 SoC. 13 "renesas,usb-phy-r8a7791" if the device is a part of R8A7791 SoC. [all …]
|
| D | phy-bindings.txt | 1 This document explains only the device tree data binding. For general 2 information about PHY subsystem refer to Documentation/driver-api/phy/phy.rst 4 PHY device node 8 #phy-cells: Number of cells in a PHY specifier; The meaning of all those 9 cells is defined by the binding for the phy node. The PHY 11 PHY. 14 phy-supply: Phandle to a regulator that provides power to the PHY. This 15 regulator will be managed during the PHY power on/off sequence. 19 phys: phy { 24 #phy-cells = <1>; [all …]
|
| /kernel/linux/linux-4.19/drivers/scsi/ |
| D | scsi_transport_sas.c | 2 * Copyright (C) 2005-2006 Dell Inc. 13 * introduces two additional intermediate objects: The SAS PHY 14 * as represented by struct sas_phy defines an "outgoing" PHY on 15 * a SAS HBA or Expander, and the SAS remote PHY represented by 16 * struct sas_rphy defines an "incoming" PHY on a SAS Expander or 17 * end device. Note that this is purely a software concept, the 18 * underlying hardware for a PHY and a remote PHY is the exactly 52 #define to_sas_host_attrs(host) ((struct sas_host_attrs *)(host)->shost_data) 101 return -EINVAL; \ 127 { SAS_END_DEVICE, "end device" }, [all …]
|
| /kernel/linux/linux-5.10/drivers/scsi/ |
| D | scsi_transport_sas.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2005-2006 Dell Inc. 13 * introduces two additional intermediate objects: The SAS PHY 14 * as represented by struct sas_phy defines an "outgoing" PHY on 15 * a SAS HBA or Expander, and the SAS remote PHY represented by 16 * struct sas_rphy defines an "incoming" PHY on a SAS Expander or 17 * end device. Note that this is purely a software concept, the 18 * underlying hardware for a PHY and a remote PHY is the exactly 52 #define to_sas_host_attrs(host) ((struct sas_host_attrs *)(host)->shost_data) 101 return -EINVAL; \ [all …]
|
| /kernel/linux/linux-4.19/drivers/scsi/smartpqi/ |
| D | smartpqi_sas_transport.c | 2 * driver for Microsemi PQI-based storage controllers 3 * Copyright (c) 2016-2017 Microsemi Corporation 4 * Copyright (c) 2016 PMC-Sierra, Inc. 28 struct sas_phy *phy; in pqi_alloc_sas_phy() local 34 phy = sas_phy_alloc(pqi_sas_port->parent_node->parent_dev, in pqi_alloc_sas_phy() 35 pqi_sas_port->next_phy_index); in pqi_alloc_sas_phy() 36 if (!phy) { in pqi_alloc_sas_phy() 41 pqi_sas_port->next_phy_index++; in pqi_alloc_sas_phy() 42 pqi_sas_phy->phy = phy; in pqi_alloc_sas_phy() 43 pqi_sas_phy->parent_port = pqi_sas_port; in pqi_alloc_sas_phy() [all …]
|
| /kernel/linux/linux-5.10/Documentation/networking/ |
| D | phy.rst | 2 PHY Abstraction Layer 10 PHY. The PHY concerns itself with negotiating link parameters with the link 17 the PHY management code with the network driver. This has resulted in large 23 accessed are, in fact, busses, the PHY Abstraction Layer treats them as such. 26 #. Increase code-reuse 27 #. Increase overall code-maintainability 30 Basically, this layer is meant to provide an interface to PHY devices which 37 Most network devices are connected to a PHY by means of a management bus. 40 registered as a distinct device. 47 mii_id is the address on the bus for the PHY, and regnum is the register [all …]
|
| /kernel/linux/linux-5.10/drivers/staging/greybus/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 8 Select this option if you have a device that follows the 12 will be called gb-audio.ko 18 Select this option if you have a Toshiba APB device that has I2S 19 ports and acts as a Greybus "Dummy codec". This device is a 20 bridge from an APB-I2S port to a Unipro network. 23 will be called gb-audio-codec.ko 29 Select this option if you have a device that follows the 33 will be called gb-bootrom.ko 39 Select this option if you have a device that follows the [all …]
|
| /kernel/linux/linux-5.10/drivers/scsi/smartpqi/ |
| D | smartpqi_sas_transport.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * driver for Microsemi PQI-based storage controllers 4 * Copyright (c) 2019-2020 Microchip Technology Inc. and its subsidiaries 5 * Copyright (c) 2016-2018 Microsemi Corporation 6 * Copyright (c) 2016 PMC-Sierra, Inc. 13 #include <linux/bsg-lib.h> 23 struct sas_phy *phy; in pqi_alloc_sas_phy() local 29 phy = sas_phy_alloc(pqi_sas_port->parent_node->parent_dev, in pqi_alloc_sas_phy() 30 pqi_sas_port->next_phy_index); in pqi_alloc_sas_phy() 31 if (!phy) { in pqi_alloc_sas_phy() [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/msm/ |
| D | dsi.txt | 5 - compatible: 6 * "qcom,mdss-dsi-ctrl" 7 - reg: Physical base address and length of the registers of controller 8 - reg-names: The names of register regions. The following regions are required: 10 - interrupts: The interrupt signal from the DSI block. 11 - power-domains: Should be <&mmcc MDSS_GDSC>. 12 - clocks: Phandles to device clocks. 13 - clock-names: the following clocks are required: 25 - assigned-clocks: Parents of "byte" and "pixel" for the given platform. 26 - assigned-clock-parents: The Byte clock and Pixel clock PLL outputs provided [all …]
|
| /kernel/linux/linux-4.19/include/linux/ |
| D | phy.h | 53 * Set phydev->irq to PHY_POLL if interrupts are not supported, 54 * or not desired for this PHY. Set to PHY_IGNORE_INTERRUPT if 57 #define PHY_POLL -1 58 #define PHY_IGNORE_INTERRUPT -2 89 /* 10GBASE-KR, XFI, SFI - single lane 10G Serdes */ 95 * phy_supported_speeds - return all speeds currently supported by a phy device 96 * @phy: The phy device to return supported speeds of. 105 unsigned int phy_supported_speeds(struct phy_device *phy, 110 * It maps 'enum phy_interface_t' found in include/linux/phy.h 111 * into the device tree binding of 'phy-mode', so that Ethernet [all …]
|