Home
last modified time | relevance | path

Searched full:altmode (Results 1 – 24 of 24) sorted by relevance

/openbmc/linux/drivers/soc/qcom/
H A Dpmic_glink_altmode.c67 struct pmic_glink_altmode *altmode; member
107 static int pmic_glink_altmode_request(struct pmic_glink_altmode *altmode, u32 cmd, u32 arg) in pmic_glink_altmode_request() argument
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()
138 mutex_unlock(&altmode->lock); in pmic_glink_altmode_request()
142 static void pmic_glink_altmode_enable_dp(struct pmic_glink_altmode *altmode, in pmic_glink_altmode_enable_dp() argument
[all …]
H A Dpmic_glink.c306 ret = pmic_glink_add_aux_device(pg, &pg->altmode_aux, "altmode"); in pmic_glink_probe()
/openbmc/linux/include/linux/usb/
H A Dtypec_altmode.h37 static inline void typec_altmode_set_drvdata(struct typec_altmode *altmode, in typec_altmode_set_drvdata() argument
40 dev_set_drvdata(&altmode->dev, data); in typec_altmode_set_drvdata()
43 static inline void *typec_altmode_get_drvdata(struct typec_altmode *altmode) in typec_altmode_get_drvdata() argument
45 return dev_get_drvdata(&altmode->dev); in typec_altmode_get_drvdata()
58 int (*enter)(struct typec_altmode *altmode, u32 *vdo);
59 int (*exit)(struct typec_altmode *altmode);
60 void (*attention)(struct typec_altmode *altmode, u32 vdo);
61 int (*vdm)(struct typec_altmode *altmode, const u32 hdr,
63 int (*notify)(struct typec_altmode *altmode, unsigned long conf,
65 int (*activate)(struct typec_altmode *altmode, int activate);
[all …]
H A Dtypec.h160 void typec_unregister_altmode(struct typec_altmode *altmode);
/openbmc/linux/drivers/usb/typec/
H A Dbus.c17 typec_altmode_set_retimer(struct altmode *alt, unsigned long conf, void *data) in typec_altmode_set_retimer()
32 typec_altmode_set_mux(struct altmode *alt, unsigned long conf, void *data) in typec_altmode_set_mux()
48 typec_altmode_set_switches(struct altmode *alt, unsigned long conf, void *data) in typec_altmode_set_switches()
63 struct altmode *port_altmode; in typec_altmode_set_state()
90 struct altmode *altmode; in typec_altmode_notify() local
91 struct altmode *partner; in typec_altmode_notify()
97 altmode = to_altmode(adev); in typec_altmode_notify()
99 if (!altmode->partner) in typec_altmode_notify()
103 partner = altmode->partner; in typec_altmode_notify()
105 ret = typec_altmode_set_switches(is_port ? altmode : partner, conf, data); in typec_altmode_notify()
[all …]
H A Dbus.h12 struct altmode { struct
25 struct altmode *partner; argument
26 struct altmode *plug[2]; argument
29 #define to_altmode(d) container_of(d, struct altmode, adev)
H A Dclass.c235 static void typec_altmode_set_partner(struct altmode *altmode) in typec_altmode_set_partner() argument
237 struct typec_altmode *adev = &altmode->adev; in typec_altmode_set_partner()
240 struct altmode *partner; in typec_altmode_set_partner()
249 altmode->partner = partner; in typec_altmode_set_partner()
255 partner->plug[plug->index] = altmode; in typec_altmode_set_partner()
257 partner->partner = altmode; in typec_altmode_set_partner()
261 static void typec_altmode_put_partner(struct altmode *altmode) in typec_altmode_put_partner() argument
263 struct altmode *partner = altmode->partner; in typec_altmode_put_partner()
270 adev = &altmode->adev; in typec_altmode_put_partner()
363 struct altmode *altmode = to_altmode(adev); in active_store() local
[all …]
H A Danx7411.c568 dev_err(dev, "no altmode space for registering\n"); in anx7411_typec_register_altmode()
575 dev_err(dev, "failed to register altmode\n"); in anx7411_typec_register_altmode()
679 /* Update DP altmode */ in anx7411_parse_cmd()
691 /* Register DP Altmode */ in anx7411_parse_cmd()
695 /* Register other altmode */ in anx7411_parse_cmd()
1045 dev_err(dev, "dp altmode not register\n"); in anx7411_usb_mux_set()
/openbmc/linux/drivers/platform/chrome/
H A Dcros_typec_vdm.c17 * Retrieves pending VDM attention messages from the EC and forwards them to the altmode driver
47 "Received VDM for unregistered altmode (SVID:%x), port: %d\n", in cros_typec_handle_vdm_attention()
57 * Retrieves a VDM response from the EC and forwards it to the altmode driver based on SVID.
84 dev_err(typec->dev, "Received VDM for unregistered altmode (SVID:%x), port: %d\n", in cros_typec_handle_vdm_response()
91 dev_err(typec->dev, "Failed to forward VDM to altmode (SVID:%x), port: %d\n", in cros_typec_handle_vdm_response()
H A Dcros_ec_typec.h24 /* Container for altmode pointer nodes. */
H A Dcros_ec_typec.c273 /* All PD capable CrOS devices are assumed to support DP altmode. */ in cros_typec_register_port_altmodes()
/openbmc/linux/Documentation/devicetree/bindings/usb/
H A Dgpio-sbu-mux.yaml14 and swapped depending on the altmode and orientation. This binding describes
36 description: Flag the port as possible handle of altmode switching
47 handling altmode muxing and orientation switching.
H A Dfcs,fsa4480.yaml27 description: Flag the port as possible handle of altmode switching
38 handling altmode muxing and orientation switching.
H A Donnn,nb7vpq904m.yaml92 handling altmode muxing and orientation switching.
/openbmc/linux/drivers/usb/typec/ucsi/
H A Ducsi_ccg.c133 /* Altmode offset for NVIDIA Function Test Board (FTB) */
390 /* Found Non DP altmode */ in ucsi_ccg_update_altmodes()
419 /* Didn't find any duplicate DP altmode */ in ucsi_ccg_update_altmodes()
451 * If CAM is UCSI_MULTI_DP_INDEX then this is DP altmode in ucsi_ccg_update_set_new_cam_cmd()
493 * (Function Test Board) which reports altmode list with vdo=0x3
495 * based on order in altmode list and it causes a mismatch of CON
H A Ducsi.c278 const struct typec_altmode *altmode = NULL; in ucsi_altmode_update_active() local
296 altmode = typec_altmode_get_partner(con->port_altmode[cur]); in ucsi_altmode_update_active()
300 con->partner_altmode[i] == altmode); in ucsi_altmode_update_active()
473 * Update the original altmode table as some ppms may report in ucsi_register_altmodes_nvidia()
H A Ducsi.h432 * NVIDIA VirtualLink (svid 0x955) has two altmode. VirtualLink
/openbmc/linux/drivers/usb/typec/tcpm/
H A Dtcpm.c1577 struct typec_altmode *altmode; in tcpm_register_partner_altmodes() local
1584 altmode = typec_partner_register_altmode(port->partner, in tcpm_register_partner_altmodes()
1586 if (IS_ERR(altmode)) { in tcpm_register_partner_altmodes()
1589 altmode = NULL; in tcpm_register_partner_altmodes()
1591 port->partner_altmode[i] = altmode; in tcpm_register_partner_altmodes()
1888 tcpm_log(port, "typec_altmode_attention no port partner altmode"); in tcpm_handle_vdm_request()
2225 static int tcpm_altmode_enter(struct typec_altmode *altmode, u32 *vdo) in tcpm_altmode_enter() argument
2227 struct tcpm_port *port = typec_altmode_get_drvdata(altmode); in tcpm_altmode_enter()
2235 header = VDO(altmode->svid, vdo ? 2 : 1, svdm_version, CMD_ENTER_MODE); in tcpm_altmode_enter()
2236 header |= VDO_OPOS(altmode->mode); in tcpm_altmode_enter()
[all …]
/openbmc/linux/drivers/platform/x86/intel/
H A Dchtwc_int33fe.c145 .name = "displayport-altmode",
/openbmc/linux/drivers/usb/typec/mux/
H A Dnb7vpq904m.c175 /* DP Altmode Setup */ in nb7vpq904m_set()
/openbmc/linux/drivers/scsi/aic94xx/
H A Daic94xx_dump.c277 PRINT_CREG_8bit(asd_ha, ALTMODE); in asd_dump_cseq_state()
485 PRINT_LREG_8bit(asd_ha, lseq, ALTMODE); in asd_dump_lseq_state()
H A Daic94xx_reg_def.h361 #define ALTMODE 0x01 macro
508 #define CALTMODE (CSEQ_CIO_REG_BASE_ADR + ALTMODE)
843 #define LmALTMODE(LinkNum) LmSEQ_PHY_REG(0, LinkNum, ALTMODE)
/openbmc/linux/include/trace/events/
H A Ddlm.h48 { DLM_SBF_ALTMODE, "ALTMODE" })
/openbmc/linux/drivers/gpu/drm/
H A Ddrm_connector.c3058 * muxes the DisplayPort data and aux-lines but does not pass the altmode HPD