Home
last modified time | relevance | path

Searched +full:retimer +full:- +full:switch (Results 1 – 25 of 35) sorted by relevance

12

/openbmc/linux/drivers/platform/chrome/
H A Dcros_typec_switch.c1 // SPDX-License-Identifier: GPL-2.0-only
5 * This driver provides the ability to configure Type-C muxes and retimers which are controlled by
25 struct typec_retimer *retimer; member
29 /* Driver-specific data. */
48 return cros_ec_cmd(sdata->ec, 0, EC_CMD_TYPEC_CONTROL, &req, sizeof(req), NULL, 0); in cros_typec_cmd_mux_set()
53 int ret = -EOPNOTSUPP; in cros_typec_get_mux_state()
60 } else if (alt && alt->svid == USB_TYPEC_DP_SID) { in cros_typec_get_mux_state()
62 pin_assign = mode - TYPEC_STATE_MODAL; in cros_typec_get_mux_state()
79 return cros_ec_cmd(sdata->ec, 0, EC_CMD_TYPEC_CONTROL, &req, sizeof(req), NULL, 0); in cros_typec_send_clear_event()
90 ret = cros_ec_cmd(sdata->ec, 0, EC_CMD_TYPEC_STATUS, &req, sizeof(req), in cros_typec_check_event()
[all …]
H A Dcros_ec_typec.c1 // SPDX-License-Identifier: GPL-2.0-only
22 #define DRV_NAME "cros-ec-typec"
35 ret = fwnode_property_read_string(fwnode, "power-role", &buf); in cros_typec_parse_port_props()
37 dev_err(dev, "power-role not found: %d\n", ret); in cros_typec_parse_port_props()
44 cap->type = ret; in cros_typec_parse_port_props()
46 ret = fwnode_property_read_string(fwnode, "data-role", &buf); in cros_typec_parse_port_props()
48 dev_err(dev, "data-role not found: %d\n", ret); in cros_typec_parse_port_props()
55 cap->data = ret; in cros_typec_parse_port_props()
57 /* Try-power-role is optional. */ in cros_typec_parse_port_props()
58 ret = fwnode_property_read_string(fwnode, "try-power-role", &buf); in cros_typec_parse_port_props()
[all …]
H A Dcros_ec_typec.h1 /* SPDX-License-Identifier: GPL-2.0-only */
30 /* Platform-specific data for the Chrome OS EC Type C controller. */
60 struct typec_retimer *retimer; member
63 /* Variables keeping track of switch state. */
77 /* PDO-related structs */
/openbmc/linux/drivers/usb/typec/
H A Dretimer.c1 // SPDX-License-Identifier: GPL-2.0
5 * USB Type-C Retimer support.
18 #include "retimer.h"
35 return dev ? to_typec_retimer(dev) : ERR_PTR(-EPROBE_DEFER); in typec_retimer_match()
39 * fwnode_typec_retimer_get - Find USB Type-C retimer.
42 * Finds a retimer linked to the caller. This function is primarily meant for the
43 * Type-C drivers. Returns a reference to the retimer on success, NULL if no
44 * matching connection was found, or ERR_PTR(-EPROBE_DEFER) when a connection
45 * was found but the retimer has not been enumerated yet.
49 struct typec_retimer *retimer; in fwnode_typec_retimer_get() local
[all …]
H A Dclass.c1 // SPDX-License-Identifier: GPL-2.0
3 * USB Type-C Connector Class
27 /* ------------------------------------------------------------------------- */
64 return partner->identity; in get_pd_identity()
68 return cable->identity; in get_pd_identity()
75 struct typec_port *port = to_typec_port(dev->parent); in get_pd_product_type()
83 if (port->data_role == TYPEC_HOST) in get_pd_product_type()
84 ptype = product_type_ufp[PD_IDH_PTYPE(id->id_header)]; in get_pd_product_type()
86 ptype = product_type_dfp[PD_IDH_DFP_PTYPE(id->id_header)]; in get_pd_product_type()
89 ptype = product_type_cable[PD_IDH_PTYPE(id->id_header)]; in get_pd_product_type()
[all …]
/openbmc/linux/drivers/usb/typec/mux/
H A Dnb7vpq904m.c1 // SPDX-License-Identifier: GPL-2.0+
3 * OnSemi NB7VPQ904M Type-C driver
68 struct typec_retimer *retimer; member
75 struct mutex lock; /* protect non-concurrent retimer & switch */
98 regmap_update_bits(nb7->regmap, EQ_SETTING_REG(channel), in nb7vpq904m_set_channel()
100 regmap_update_bits(nb7->regmap, OUTPUT_COMPRESSION_AND_POL_REG(channel), in nb7vpq904m_set_channel()
102 regmap_update_bits(nb7->regmap, FLAT_GAIN_REG(channel), in nb7vpq904m_set_channel()
104 regmap_update_bits(nb7->regmap, LOSS_MATCH_REG(channel), in nb7vpq904m_set_channel()
110 bool reverse = (nb7->orientation == TYPEC_ORIENTATION_REVERSE); in nb7vpq904m_set()
112 switch (nb7->mode) { in nb7vpq904m_set()
[all …]
/openbmc/linux/drivers/thunderbolt/
H A Dusb4.c1 // SPDX-License-Identifier: GPL-2.0
89 return -EOPNOTSUPP; in usb4_native_switch_op()
114 const struct tb_cm_ops *cm_ops = sw->tb->cm_ops; in __usb4_switch_op()
117 return -EINVAL; in __usb4_switch_op()
124 if (cm_ops->usb4_switch_op) { in __usb4_switch_op()
127 ret = cm_ops->usb4_switch_op(sw, opcode, metadata, status, in __usb4_switch_op()
130 if (ret != -EOPNOTSUPP) in __usb4_switch_op()
159 * usb4_switch_check_wakes() - Check for wakes and notify PM core about them
188 if (!port->cap_usb4) in usb4_switch_check_wakes()
192 port->cap_usb4 + PORT_CS_18, 1)) in usb4_switch_check_wakes()
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0-only
2 obj-${CONFIG_USB4} := thunderbolt.o
3 thunderbolt-objs := nhi.o nhi_ops.o ctl.o tb.o switch.o cap.o path.o tunnel.o eeprom.o
4 thunderbolt-objs += domain.o dma_port.o icm.o property.o xdomain.o lc.o tmu.o usb4.o
5 thunderbolt-objs += usb4_port.o nvm.o retimer.o quirks.o clx.o
7 thunderbolt-${CONFIG_ACPI} += acpi.o
8 thunderbolt-$(CONFIG_DEBUG_FS) += debugfs.o
9 thunderbolt-${CONFIG_USB4_KUNIT_TEST} += test.o
12 thunderbolt_dma_test-${CONFIG_USB4_DMA_TEST} += dma_test.o
13 obj-$(CONFIG_USB4_DMA_TEST) += thunderbolt_dma_test.o
H A Dtb.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Thunderbolt driver - bus logic (NHI independent)
12 #include <linux/nvmem-provider.h>
30 * struct tb_nvm - Structure holding NVM information
37 * @non_active: Non-active portion NVMem device
78 * enum tb_switch_tmu_mode - TMU mode
80 * @TB_SWITCH_TMU_MODE_LOWRES: Uni-directional, normal mode
81 * @TB_SWITCH_TMU_MODE_HIFI_UNI: Uni-directional, HiFi mode
82 * @TB_SWITCH_TMU_MODE_HIFI_BI: Bi-directional, HiFi mode
83 * @TB_SWITCH_TMU_MODE_MEDRES_ENHANCED_UNI: Enhanced Uni-directional, MedRes mode
[all …]
H A Dnvm.c1 // SPDX-License-Identifier: GPL-2.0
32 * struct tb_nvm_vendor_ops - Vendor specific NVM operations
44 * struct tb_nvm_vendor - Vendor to &struct tb_nvm_vendor_ops mapping
58 struct tb_switch *sw = tb_to_switch(nvm->dev); in intel_switch_nvm_version()
63 * If the switch is in safe-mode the only accessible portion of in intel_switch_nvm_version()
64 * the NVM is the non-active one where userspace is expected to in intel_switch_nvm_version()
67 if (sw->safe_mode) in intel_switch_nvm_version()
74 hdr_size = sw->generation < 3 ? SZ_8K : SZ_16K; in intel_switch_nvm_version()
76 nvm_size = (nvm_size - hdr_size) / 2; in intel_switch_nvm_version()
82 nvm->major = (val >> 16) & 0xff; in intel_switch_nvm_version()
[all …]
/openbmc/linux/Documentation/devicetree/bindings/usb/
H A Donnn,nb7vpq904m.yaml1 # 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
20 vcc-supply:
23 enable-gpios: true
25 retimer-switch:
29 orientation-switch:
[all …]
/openbmc/linux/drivers/soc/qcom/
H A Dpmic_glink_altmode.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
117 mutex_lock(&altmode->lock); in pmic_glink_altmode_request()
119 req.hdr.owner = cpu_to_le32(altmode->owner_id); in pmic_glink_altmode_request()
125 ret = pmic_glink_send(altmode->client, &req, sizeof(req)); in pmic_glink_altmode_request()
127 dev_err(altmode->dev, "failed to send altmode request: %#x (%d)\n", cmd, ret); in pmic_glink_altmode_request()
131 left = wait_for_completion_timeout(&altmode->pan_ack, 5 * HZ); in pmic_glink_altmode_request()
133 dev_err(altmode->dev, "timeout waiting for altmode request ack for: %#x\n", cmd); in pmic_glink_altmode_request()
134 ret = -ETIMEDOUT; in pmic_glink_altmode_request()
138 mutex_unlock(&altmode->lock); in pmic_glink_altmode_request()
[all …]
/openbmc/u-boot/board/freescale/ls1088a/
H A Dls1088a.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Copyright 2017-2018 NXP
16 #include <fsl-mc/fsl_mc.h>
18 #include <asm/arch-fsl-layerscape/soc.h>
137 regs_info->regs = ifc_cfg_qspi_nor_boot; in ifc_cfg_boot_info()
139 regs_info->regs = ifc_cfg_ifc_nor_boot; in ifc_cfg_boot_info()
141 regs_info->cs_size = CONFIG_SYS_FSL_IFC_BANK_COUNT; in ifc_cfg_boot_info()
160 if (gd->flags & GD_FLG_RELOC) in get_qixis_addr()
198 fdt_setprop_string(fdt, 0, "model", "LS1088ARDB-PB Board"); in fixup_ls1088ardb_pb_banner()
216 printf("Board: LS1088A-QDS, "); in checkboard()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/display/dc/link/
H A Dlink_dpms.c31 * TODO - The reason link owns stream's dpms programming sequence is
80 for (i = 0; i < dc->link_count; i++) { in link_blank_all_dp_displays()
81 if ((dc->links[i]->connector_signal != SIGNAL_TYPE_DISPLAY_PORT) || in link_blank_all_dp_displays()
82 (dc->links[i]->priv == NULL) || (dc->links[i]->local_sink == NULL)) in link_blank_all_dp_displays()
86 dp_retrieve_lttpr_cap(dc->links[i]); in link_blank_all_dp_displays()
88 status = core_link_read_dpcd(dc->links[i], DP_SET_POWER, in link_blank_all_dp_displays()
92 link_blank_dp_stream(dc->links[i], true); in link_blank_all_dp_displays()
103 for (i = 0; i < dc->link_count; i++) { in link_blank_all_edp_displays()
104 if ((dc->links[i]->connector_signal != SIGNAL_TYPE_EDP) || in link_blank_all_edp_displays()
105 (!dc->links[i]->edp_sink_present)) in link_blank_all_edp_displays()
[all …]
/openbmc/u-boot/board/freescale/t102xqds/
H A Dt102xqds.c1 // SPDX-License-Identifier: GPL-2.0+
30 struct cpu_type *cpu = gd->arch.cpu; in checkboard()
35 printf("Board: %sQDS, ", cpu->name); in checkboard()
37 printf("Board Version: %c, boot from ", (sw & 0xf) + 'A' - 1); in checkboard()
94 srds_prtcl_s1 = in_be32(&gur->rcwsr[4]) & in board_mux_lane_to_slot()
102 switch (srds_prtcl_s1) { in board_mux_lane_to_slot()
148 return -1; in board_mux_lane_to_slot()
191 /* Retimer DS125DF111 is connected to I2C1_CH7_CH5 */ in board_retimer_ds125df111_init()
203 debug("Retimer version id = 0x%x\n", reg); in board_retimer_ds125df111_init()
224 /* Select active PFD MUX input as re-timed data (001) */ in board_retimer_ds125df111_init()
[all …]
/openbmc/u-boot/board/freescale/ls1043aqds/
H A Dls1043aqds.c1 // SPDX-License-Identifier: GPL-2.0+
18 #include <asm/arch-fsl-layerscape/fsl_icid.h>
167 regs_info->regs = ifc_cfg_nand_boot; in ifc_cfg_boot_info()
169 regs_info->regs = ifc_cfg_nor_boot; in ifc_cfg_boot_info()
170 regs_info->cs_size = CONFIG_SYS_FSL_IFC_BANK_COUNT; in ifc_cfg_boot_info()
234 switch (sysclk_conf & 0x0f) { in get_board_sys_clk()
262 switch ((ddrclk_conf & 0x30) >> 4) { in get_board_ddr_clk()
291 * in the default channel. So, switch to the default channel in dram_init()
298 /* This will break-before-make MMU for DDR */ in dram_init()
314 /* Retimer is connected to I2C1_CH7_CH5 */ in board_retimer_init()
[all …]
/openbmc/bmcweb/redfish-core/schema/dmtf/json-schema/
H A DPCIeDevice.v1_16_0.json
/openbmc/bmcweb/redfish-core/schema/dmtf/json-schema-installed/
H A DPCIeDevice.v1_16_0.json
/openbmc/openbmc/meta-facebook/meta-bletchley/recipes-bletchley/plat-tools/files/
H A Dbletchley-net-util3 declare -a PORT_NUM_MAP=(10 3 2 1 7 6 5)
4 declare -a PORT_NAME_MAP=(BMC SLED1 SLED2 SLED3 SLED4 SLED5 SLED6)
5 SWITCH_MDIO_BUS="1e650000.mdio-1"
9 RETIMER_MDIO_BUS="1e650018.mdio-1"
17 if [ "$((16#$PORT_ST_VAL & 16#0800))" -eq "0" ]; then
34 if [ "$((16#$PORT_ST_VAL & 16#0004))" -eq "0" ]; then
50 printf "Switch:\n"
56 printf "Retimer:\n"
83 echo " --link-st"
86 echo " --port-reg-dump"
[all …]
/openbmc/linux/drivers/hwmon/
H A Dintel-m10-bmc-hwmon.c1 // SPDX-License-Identifier: GPL-2.0
5 * Copyright (C) 2018-2020 Intel Corporation. All rights reserved.
10 #include <linux/mfd/intel-m10-bmc.h>
43 { 0x168, 0x0, 0x0, 0x0, 0x0, 500, "Retimer A Temperature" },
44 { 0x16c, 0x0, 0x0, 0x0, 0x0, 500, "Retimer A SerDes Temperature" },
45 { 0x170, 0x0, 0x0, 0x0, 0x0, 500, "Retimer B Temperature" },
46 { 0x174, 0x0, 0x0, 0x0, 0x0, 500, "Retimer B SerDes Temperature" },
243 { 0x1a8, 0x0, 0x0, 0x0, 0x0, 1000, "QSFP28-1 Temperature" },
244 { 0x1ac, 0x0, 0x0, 0x0, 0x0, 1000, "QSFP28-2 Temperature" },
245 { 0x1b0, 0x0, 0x0, 0x0, 0x0, 1000, "QSFP28-3 Temperature" },
[all …]
H A Dpt5161l.c1 // SPDX-License-Identifier: GPL-2.0-or-later
46 #define ARIES_MAIN_MICRO_FW_INFO (96 * 1024 - 128)
83 struct i2c_client *client = data->client; in pt5161l_write_block_data()
94 remain_len -= 4; in pt5161l_write_block_data()
100 buf[0] = config | (curr_len - 1) << 1 | ((address >> 16) & 0x1); in pt5161l_write_block_data()
123 struct i2c_client *client = data->client; in pt5161l_read_block_data()
134 remain_len -= 16; in pt5161l_read_block_data()
140 wbuf[0] = config | (curr_len - 1) << 1 | in pt5161l_read_block_data()
179 if (data->mm_wide_reg_access) { in pt5161l_read_wide_reg()
190 switch (width) { in pt5161l_read_wide_reg()
[all …]
/openbmc/linux/arch/arm64/boot/dts/qcom/
H A Dsm8550-qrd.dts1 // SPDX-License-Identifier: BSD-3-Clause
6 /dts-v1/;
8 #include <dt-bindings/leds/common.h>
9 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
21 compatible = "qcom,sm8550-qrd", "qcom,sm8550";
22 chassis-type = "handset";
28 wcd938x: audio-codec {
29 compatible = "qcom,wcd9385-codec";
31 pinctrl-names = "default";
32 pinctrl-0 = <&wcd_default>;
[all …]
/openbmc/linux/Documentation/devicetree/bindings/
H A Dtrivial-devices.yaml1 # SPDX-License-Identifier: GPL-2.0
3 ---
4 $id: http://devicetree.org/schemas/trivial-devices.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Rob Herring <robh@kernel.org>
27 spi-max-frequency: true
31 - enum:
33 - acbel,fsg032
34 … # SMBus/I2C Digital Temperature Sensor in 6-Pin SOT with SMBus Alert and Over Temperature Pin
35 - ad,ad7414
[all …]
/openbmc/bmcweb/redfish-core/schema/dmtf/csdl/
H A DPCIeDevice_v1.xml1 <?xml version="1.0" encoding="UTF-8"?>
2 <!---->
3 <!--################################################################################ -->
4 <!-
[all...]
/openbmc/bmcweb/redfish-core/schema/dmtf/installed/
H A DPCIeDevice_v1.xml1 <?xml version="1.0" encoding="UTF-8"?>
2 <!---->
3 <!--################################################################################ -->
4 <!-
[all...]

12