| /kernel/linux/linux-6.6/drivers/phy/marvell/ |
| D | phy-mvebu-cp110-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Antoine Tenart <antoine.tenart@free-electrons.com> 8 #include <linux/arm-smccc.h> 20 /* Relative to priv->base */ 22 #define MVEBU_COMPHY_SERDES_CFG0_PU_PLL BIT(1) 52 #define MVEBU_COMPHY_GEN1_S0_TX_AMP(n) ((n) << 1) 65 #define MVEBU_COMPHY_LOOPBACK_DBUS_WIDTH(n) ((n) << 1) 108 /* Relative to priv->regmap */ 110 #define MVEBU_COMPHY_CONF1_PWRUP BIT(1) 129 * A lane is described by the following bitfields: [all …]
|
| D | phy-mvebu-a3700-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 11 * Structure inspired from phy-mvebu-cp110-comphy.c written by Antoine Tenart. 40 * When accessing common PHY lane registers directly, we need to shift by 1, 41 * since the registers are 16-bit. 43 #define COMPHY_LANE_REG_DIRECT(reg) (((reg) & 0x7FF) << 1) 129 #define PRD_TXMARGIN_MASK GENMASK(3, 1) 149 #define PIPE_REG_RESET BIT(1) 160 #define BUNDLE_PERIOD_SEL BIT(1) 175 * This register is not from PHY lane register space. It only exists in the 176 * indirect register space, before the actual PHY lane 2 registers. So the [all …]
|
| D | phy-armada38x-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 47 struct a38x_comphy_lane lane[MAX_A38X_COMPHY]; member 59 static void a38x_set_conf(struct a38x_comphy_lane *lane, bool enable) in a38x_set_conf() argument 61 struct a38x_comphy *priv = lane->priv; in a38x_set_conf() 64 if (priv->conf) { in a38x_set_conf() 65 conf = readl_relaxed(priv->conf); in a38x_set_conf() 67 conf |= BIT(lane->port); in a38x_set_conf() 69 conf &= ~BIT(lane->port); in a38x_set_conf() 70 writel(conf, priv->conf); in a38x_set_conf() 74 static void a38x_comphy_set_reg(struct a38x_comphy_lane *lane, in a38x_comphy_set_reg() argument [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/marvell/ |
| D | phy-mvebu-cp110-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Antoine Tenart <antoine.tenart@free-electrons.com> 8 #include <linux/arm-smccc.h> 19 /* Relative to priv->base */ 21 #define MVEBU_COMPHY_SERDES_CFG0_PU_PLL BIT(1) 51 #define MVEBU_COMPHY_GEN1_S0_TX_AMP(n) ((n) << 1) 64 #define MVEBU_COMPHY_LOOPBACK_DBUS_WIDTH(n) ((n) << 1) 107 /* Relative to priv->regmap */ 109 #define MVEBU_COMPHY_CONF1_PWRUP BIT(1) 128 * A lane is described by the following bitfields: [all …]
|
| D | phy-mvebu-a3700-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 9 * Structure inspired from phy-mvebu-cp110-comphy.c written by Antoine Tenart. 13 #include <linux/arm-smccc.h> 41 #define COMPHY_FW_SPEED_1_25G 0 /* SGMII 1G */ 42 #define COMPHY_FW_SPEED_2_5G 1 58 unsigned int lane; member 67 .lane = _lane, \ 81 /* lane 0 */ 84 MVEBU_A3700_COMPHY_CONF_ETH(0, PHY_INTERFACE_MODE_SGMII, 1, 86 MVEBU_A3700_COMPHY_CONF_ETH(0, PHY_INTERFACE_MODE_2500BASEX, 1, [all …]
|
| D | phy-armada38x-comphy.c | 1 // SPDX-License-Identifier: GPL-2.0 46 struct a38x_comphy_lane lane[MAX_A38X_COMPHY]; member 58 static void a38x_set_conf(struct a38x_comphy_lane *lane, bool enable) in a38x_set_conf() argument 60 struct a38x_comphy *priv = lane->priv; in a38x_set_conf() 63 if (priv->conf) { in a38x_set_conf() 64 conf = readl_relaxed(priv->conf); in a38x_set_conf() 66 conf |= BIT(lane->port); in a38x_set_conf() 68 conf &= ~BIT(lane->port); in a38x_set_conf() 69 writel(conf, priv->conf); in a38x_set_conf() 73 static void a38x_comphy_set_reg(struct a38x_comphy_lane *lane, in a38x_comphy_set_reg() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/net/dsa/b53/ |
| D | b53_serdes.c | 1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 42 static void b53_serdes_set_lane(struct b53_device *dev, u8 lane) in b53_serdes_set_lane() argument 44 if (dev->serdes_lane == lane) in b53_serdes_set_lane() 47 WARN_ON(lane > 1); in b53_serdes_set_lane() 50 SERDES_XGXSBLK0_BLOCKADDRESS, lane); in b53_serdes_set_lane() 51 dev->serdes_lane = lane; in b53_serdes_set_lane() 54 static void b53_serdes_write(struct b53_device *dev, u8 lane, in b53_serdes_write() argument 57 b53_serdes_set_lane(dev, lane); in b53_serdes_write() 61 static u16 b53_serdes_read(struct b53_device *dev, u8 lane, in b53_serdes_read() argument 64 b53_serdes_set_lane(dev, lane); in b53_serdes_read() [all …]
|
| /kernel/linux/linux-5.10/drivers/net/dsa/b53/ |
| D | b53_serdes.c | 1 // SPDX-License-Identifier: GPL-2.0 or BSD-3-Clause 37 static void b53_serdes_set_lane(struct b53_device *dev, u8 lane) in b53_serdes_set_lane() argument 39 if (dev->serdes_lane == lane) in b53_serdes_set_lane() 42 WARN_ON(lane > 1); in b53_serdes_set_lane() 45 SERDES_XGXSBLK0_BLOCKADDRESS, lane); in b53_serdes_set_lane() 46 dev->serdes_lane = lane; in b53_serdes_set_lane() 49 static void b53_serdes_write(struct b53_device *dev, u8 lane, in b53_serdes_write() argument 52 b53_serdes_set_lane(dev, lane); in b53_serdes_write() 56 static u16 b53_serdes_read(struct b53_device *dev, u8 lane, in b53_serdes_read() argument 59 b53_serdes_set_lane(dev, lane); in b53_serdes_read() [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/amd/display/dc/link/protocols/ |
| D | link_dp_training_fixed_vs_pe_retimer.c | 42 link->ctx->logger 52 uint8_t lane; in dp_fixed_vs_pe_read_lane_adjust() local 54 /* W/A to read lane settings requested by DPRX */ in dp_fixed_vs_pe_read_lane_adjust() 55 link_configure_fixed_vs_pe_retimer(link->ddc, in dp_fixed_vs_pe_read_lane_adjust() 58 link_query_fixed_vs_pe_retimer(link->ddc, &dprx_vs, 1); in dp_fixed_vs_pe_read_lane_adjust() 60 link_configure_fixed_vs_pe_retimer(link->ddc, in dp_fixed_vs_pe_read_lane_adjust() 63 link_query_fixed_vs_pe_retimer(link->ddc, &dprx_pe, 1); in dp_fixed_vs_pe_read_lane_adjust() 65 for (lane = 0; lane < LANE_COUNT_DP_MAX; lane++) { in dp_fixed_vs_pe_read_lane_adjust() 66 dpcd_lane_adjust[lane].bits.VOLTAGE_SWING_SET = (dprx_vs >> (2 * lane)) & 0x3; in dp_fixed_vs_pe_read_lane_adjust() 67 dpcd_lane_adjust[lane].bits.PRE_EMPHASIS_SET = (dprx_pe >> (2 * lane)) & 0x3; in dp_fixed_vs_pe_read_lane_adjust() [all …]
|
| D | link_dp_training.c | 52 link->ctx->logger 67 switch (lt_settings->link_settings.link_rate) { in dp_log_training_result() 152 switch (lt_settings->link_settings.link_spread) { in dp_log_training_result() 168 /* TODO - DP2.0 Log: add connectivity log for FFE PRESET */ in dp_log_training_result() 172 lt_settings->link_settings.lane_count, in dp_log_training_result() 174 lt_settings->hw_lane_settings[0].VOLTAGE_SWING, in dp_log_training_result() 175 lt_settings->hw_lane_settings[0].PRE_EMPHASIS, in dp_log_training_result() 189 disable_scrabled_data_symbols = 1; in dp_initialize_scrambling_data_symbols() 305 uint32_t lane; in maximize_lane_settings() local 313 for (lane = 1; lane < lt_settings->link_settings.lane_count; lane++) { in maximize_lane_settings() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/usb/ |
| D | onnn,nb7vpq904m.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: ON Semiconductor Type-C DisplayPort ALT Mode Linear Redriver 10 - Neil Armstrong <neil.armstrong@linaro.org> 15 - onnn,nb7vpq904m 18 maxItems: 1 20 vcc-supply: 23 enable-gpios: true 25 retimer-switch: [all …]
|
| /kernel/linux/linux-6.6/drivers/phy/tegra/ |
| D | xusb-tegra124.c | 1 // SPDX-License-Identifier: GPL-2.0-only 39 #define XUSB_PADCTL_SS_PORT_MAP_PORTX_INTERNAL(x) (1 << (((x) * 4) + 3)) 46 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_VCORE_DOWN (1 << 26) 47 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_CLAMP_EN_EARLY (1 << 25) 48 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_CLAMP_EN (1 << 24) 49 #define XUSB_PADCTL_ELPG_PROGRAM_SSPX_ELPG_VCORE_DOWN(x) (1 << (18 + (x) * 4)) 51 (1 << (17 + (x) * 4)) 52 #define XUSB_PADCTL_ELPG_PROGRAM_SSPX_ELPG_CLAMP_EN(x) (1 << (16 + (x) * 4)) 55 #define XUSB_PADCTL_IOPHY_PLL_P0_CTL1_PLL0_LOCKDET (1 << 19) 57 #define XUSB_PADCTL_IOPHY_PLL_P0_CTL1_PLL_RST (1 << 1) [all …]
|
| D | xusb-tegra210.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (c) 2014-2020, NVIDIA CORPORATION. All rights reserved. 27 ((x) ? (11 + ((x) - 1) * 6) : 0) 51 #define XUSB_PADCTL_SS_PORT_MAP_PORTX_INTERNAL(x) (1 << (((x) * 5) + 4)) 65 USB2_PORT_WAKEUP_EVENT(0) | USB2_PORT_WAKEUP_EVENT(1) | \ 67 SS_PORT_WAKEUP_EVENT(0) | SS_PORT_WAKEUP_EVENT(1) | \ 72 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_VCORE_DOWN (1 << 31) 73 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_CLAMP_EN_EARLY (1 << 30) 74 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_CLAMP_EN (1 << 29) 75 #define XUSB_PADCTL_ELPG_PROGRAM1_SSPX_ELPG_VCORE_DOWN(x) (1 << (2 + (x) * 3)) [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/tegra/ |
| D | xusb-tegra124.c | 1 // SPDX-License-Identifier: GPL-2.0-only 39 #define XUSB_PADCTL_SS_PORT_MAP_PORTX_INTERNAL(x) (1 << (((x) * 4) + 3)) 46 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_VCORE_DOWN (1 << 26) 47 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_CLAMP_EN_EARLY (1 << 25) 48 #define XUSB_PADCTL_ELPG_PROGRAM_AUX_MUX_LP0_CLAMP_EN (1 << 24) 49 #define XUSB_PADCTL_ELPG_PROGRAM_SSPX_ELPG_VCORE_DOWN(x) (1 << (18 + (x) * 4)) 51 (1 << (17 + (x) * 4)) 52 #define XUSB_PADCTL_ELPG_PROGRAM_SSPX_ELPG_CLAMP_EN(x) (1 << (16 + (x) * 4)) 55 #define XUSB_PADCTL_IOPHY_PLL_P0_CTL1_PLL0_LOCKDET (1 << 19) 57 #define XUSB_PADCTL_IOPHY_PLL_P0_CTL1_PLL_RST (1 << 1) [all …]
|
| D | xusb-tegra210.c | 1 // SPDX-License-Identifier: GPL-2.0-only 25 ((x) ? (11 + ((x) - 1) * 6) : 0) 49 #define XUSB_PADCTL_SS_PORT_MAP_PORTX_INTERNAL(x) (1 << (((x) * 5) + 4)) 56 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_VCORE_DOWN (1 << 31) 57 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_CLAMP_EN_EARLY (1 << 30) 58 #define XUSB_PADCTL_ELPG_PROGRAM1_AUX_MUX_LP0_CLAMP_EN (1 << 29) 59 #define XUSB_PADCTL_ELPG_PROGRAM1_SSPX_ELPG_VCORE_DOWN(x) (1 << (2 + (x) * 3)) 61 (1 << (1 + (x) * 3)) 62 #define XUSB_PADCTL_ELPG_PROGRAM1_SSPX_ELPG_CLAMP_EN(x) (1 << ((x) * 3)) 65 #define XUSB_PADCTL_USB3_PAD_MUX_PCIE_IDDQ_DISABLE(x) (1 << (1 + (x))) [all …]
|
| /kernel/linux/linux-6.6/drivers/gpu/drm/i915/display/ |
| D | intel_cx0_phy_regs.h | 1 /* SPDX-License-Identifier: MIT 15 #define XELPDP_PORT_M2P_MSGBUS_CTL(port, lane) _MMIO(_PICK_EVEN_2RANGES(port, PORT_TC1, \ argument 19 _XELPDP_PORT_M2P_MSGBUS_CTL_LN0_USBC2) + (lane) * 4) 30 #define XELPDP_PORT_P2M_MSGBUS_STATUS(port, lane) _MMIO(_PICK_EVEN_2RANGES(port, PORT_TC1, \ argument 34 _XELPDP_PORT_M2P_MSGBUS_CTL_LN0_USBC2) + (lane) * 4 + 8) 43 #define XELPDP_MSGBUS_TIMEOUT_SLOW 1 51 #define XELPDP_REFCLK_ENABLE_TIMEOUT_US 1 67 #define XELPDP_PORT_BUF_PORT_DATA_20BIT REG_FIELD_PREP(XELPDP_PORT_BUF_PORT_DATA_WIDTH_MASK, 1) 75 #define XELPDP_PORT_WIDTH_MASK REG_GENMASK(3, 1) 84 #define XELPDP_LANE_PIPE_RESET(lane) _PICK(lane, REG_BIT(31), REG_BIT(30)) argument [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/ |
| D | video-interfaces.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/media/video-interfaces.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Sakari Ailus <sakari.ailus@linux.intel.com> 11 - Laurent Pinchart <laurent.pinchart@ideasonboard.com> 29 #address-cells = <1>; 30 #size-cells = <0>; 35 endpoint@1 { ... }; 37 port@1 { ... }; [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/ |
| D | phy-xgene.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AppliedMicro X-Gene Multi-purpose PHY driver 10 * The APM X-Gene PHY consists of two PLL clock macro's (CMU) and lanes. 19 * ----------------- 20 * | Internal | |------| 21 * | Ref PLL CMU |----| | ------------- --------- 22 * ------------ ---- | MUX |-----|PHY PLL CMU|----| Serdes| 23 * | | | | --------- 24 * External Clock ------| | ------------- 25 * |------| [all …]
|
| /kernel/linux/linux-6.6/drivers/phy/ |
| D | phy-xgene.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * AppliedMicro X-Gene Multi-purpose PHY driver 10 * The APM X-Gene PHY consists of two PLL clock macro's (CMU) and lanes. 19 * ----------------- 20 * | Internal | |------| 21 * | Ref PLL CMU |----| | ------------- --------- 22 * ------------ ---- | MUX |-----|PHY PLL CMU|----| Serdes| 23 * | | | | --------- 24 * External Clock ------| | ------------- 25 * |------| [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/i2c/ |
| D | st,st-mipid02.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/media/i2c/st,st-mipid02.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics MIPID02 CSI-2 to PARALLEL bridge 10 - Benjamin Mugnier <benjamin.mugnier@foss.st.com> 11 - Sylvain Petinot <sylvain.petinot@foss.st.com> 14 MIPID02 has two CSI-2 input ports, only one of those ports can be 15 active at a time. Active port input stream will be de-serialized 17 CSI-2 first input port is a dual lane 800Mbps per lane whereas CSI-2 [all …]
|
| /kernel/linux/linux-6.6/sound/soc/tegra/ |
| D | tegra186_asrc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // tegra186_asrc.c - Tegra186 ASRC driver 32 (((id) + 1) << 4) }, \ 46 ASRC_STREAM_REG_DEFAULTS(1), 74 regmap_write(asrc->regmap, in tegra186_asrc_lock_stream() 77 1); in tegra186_asrc_lock_stream() 84 regcache_cache_only(asrc->regmap, true); in tegra186_asrc_runtime_suspend() 85 regcache_mark_dirty(asrc->regmap); in tegra186_asrc_runtime_suspend() 95 regcache_cache_only(asrc->regmap, false); in tegra186_asrc_runtime_resume() 102 regmap_write(asrc->regmap, TEGRA186_ASRC_GLOBAL_SCRATCH_ADDR, in tegra186_asrc_runtime_resume() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/amd/display/dc/core/ |
| D | dc_link_dp.c | 19 link->ctx->logger 38 /* to avoid infinite loop where-in the receiver 78 if (link->dpcd_caps.dpcd_rev.raw >= DPCD_REV_12) { in get_eq_training_aux_rd_interval() 79 /* DP 1.2 or later - retrieve delay through in get_eq_training_aux_rd_interval() 113 1); in dpcd_set_training_pattern() 133 struct encoder_feature_support *features = &link->link_enc->features; in decide_eq_training_pattern() 134 struct dpcd_caps *dpcd_caps = &link->dpcd_caps; in decide_eq_training_pattern() 136 if (features->flags.bits.IS_TPS3_CAPABLE) in decide_eq_training_pattern() 139 if (features->flags.bits.IS_TPS4_CAPABLE) in decide_eq_training_pattern() 142 if (dpcd_caps->max_down_spread.bits.TPS4_SUPPORTED && in decide_eq_training_pattern() [all …]
|
| /kernel/linux/linux-6.6/drivers/thunderbolt/ |
| D | lc.c | 1 // SPDX-License-Identifier: GPL-2.0 14 * tb_lc_read_uuid() - Read switch UUID from link controller common register 20 if (!sw->cap_lc) in tb_lc_read_uuid() 21 return -EINVAL; in tb_lc_read_uuid() 22 return tb_sw_read(sw, uuid, TB_CFG_SWITCH, sw->cap_lc + TB_LC_FUSE, 4); in tb_lc_read_uuid() 27 if (!sw->cap_lc) in read_lc_desc() 28 return -EINVAL; in read_lc_desc() 29 return tb_sw_read(sw, desc, TB_CFG_SWITCH, sw->cap_lc + TB_LC_DESC, 1); in read_lc_desc() 34 struct tb_switch *sw = port->sw; in find_port_lc_cap() 45 phys = tb_phy_port_from_link(port->port); in find_port_lc_cap() [all …]
|
| /kernel/linux/linux-5.10/drivers/phy/xilinx/ |
| D | phy-zynqmp.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * phy-zynqmp.c - PHY driver for Xilinx ZynqMP GT. 5 * Copyright (C) 2018-2020 Xilinx Inc. 26 #include <dt-bindings/phy/phy.h> 29 * Lane Registers 32 /* TX De-emphasis parameters */ 45 #define L0_TXPMD_TM_45_ENABLE_DP_MAIN BIT(1) 138 #define PROT_BUS_WIDTH_MASK(n) GENMASK((n) * 2 + 1, (n) * 2) 151 #define XPSGTR_TYPE_USB1 1 /* USB controller 1 */ 152 #define XPSGTR_TYPE_SATA_0 2 /* SATA controller lane 0 */ [all …]
|
| /kernel/linux/linux-6.6/drivers/phy/xilinx/ |
| D | phy-zynqmp.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * phy-zynqmp.c - PHY driver for Xilinx ZynqMP GT. 5 * Copyright (C) 2018-2020 Xilinx Inc. 26 #include <dt-bindings/phy/phy.h> 29 * Lane Registers 32 /* TX De-emphasis parameters */ 45 #define L0_TXPMD_TM_45_ENABLE_DP_MAIN BIT(1) 139 #define PROT_BUS_WIDTH_MASK(n) GENMASK((n) * 2 + 1, (n) * 2) 152 #define XPSGTR_TYPE_USB1 1 /* USB controller 1 */ 153 #define XPSGTR_TYPE_SATA_0 2 /* SATA controller lane 0 */ [all …]
|