| /kernel/linux/linux-6.6/drivers/soc/qcom/ |
| D | pmic_glink_altmode.c | 67 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 …]
|
| D | pmic_glink.c | 306 ret = pmic_glink_add_aux_device(pg, &pg->altmode_aux, "altmode"); in pmic_glink_probe()
|
| /kernel/linux/linux-6.6/include/linux/usb/ |
| D | typec_altmode.h | 37 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 …]
|
| D | typec.h | 160 void typec_unregister_altmode(struct typec_altmode *altmode);
|
| /kernel/linux/linux-5.10/include/linux/usb/ |
| D | typec_altmode.h | 37 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 …]
|
| D | typec.h | 138 void typec_unregister_altmode(struct typec_altmode *altmode);
|
| /kernel/linux/linux-5.10/drivers/usb/typec/ |
| D | bus.c | 14 typec_altmode_set_mux(struct altmode *alt, unsigned long conf, void *data) in typec_altmode_set_mux() 32 struct altmode *port_altmode; in typec_altmode_set_state() 59 struct altmode *altmode; in typec_altmode_notify() local 60 struct altmode *partner; in typec_altmode_notify() 66 altmode = to_altmode(adev); in typec_altmode_notify() 68 if (!altmode->partner) in typec_altmode_notify() 72 partner = altmode->partner; in typec_altmode_notify() 74 ret = typec_altmode_set_mux(is_port ? altmode : partner, conf, data); in typec_altmode_notify() 97 struct altmode *partner = to_altmode(adev)->partner; in typec_altmode_enter() 128 struct altmode *partner = to_altmode(adev)->partner; in typec_altmode_exit() [all …]
|
| D | bus.h | 11 struct altmode { struct 23 struct altmode *partner; argument 24 struct altmode *plug[2]; argument 27 #define to_altmode(d) container_of(d, struct altmode, adev)
|
| D | class.c | 163 static void typec_altmode_set_partner(struct altmode *altmode) in typec_altmode_set_partner() argument 165 struct typec_altmode *adev = &altmode->adev; in typec_altmode_set_partner() 168 struct altmode *partner; in typec_altmode_set_partner() 177 altmode->partner = partner; in typec_altmode_set_partner() 183 partner->plug[plug->index] = altmode; in typec_altmode_set_partner() 185 partner->partner = altmode; in typec_altmode_set_partner() 189 static void typec_altmode_put_partner(struct altmode *altmode) in typec_altmode_put_partner() argument 191 struct altmode *partner = altmode->partner; in typec_altmode_put_partner() 198 adev = &altmode->adev; in typec_altmode_put_partner() 291 struct altmode *altmode = to_altmode(adev); in active_store() local [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/typec/ |
| D | bus.c | 17 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 …]
|
| D | bus.h | 12 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)
|
| D | class.c | 235 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 …]
|
| D | anx7411.c | 568 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()
|
| /kernel/linux/linux-6.6/drivers/platform/chrome/ |
| D | cros_typec_vdm.c | 17 * 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()
|
| D | cros_ec_typec.h | 24 /* Container for altmode pointer nodes. */
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/usb/ |
| D | gpio-sbu-mux.yaml | 14 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.
|
| D | fcs,fsa4480.yaml | 27 description: Flag the port as possible handle of altmode switching 38 handling altmode muxing and orientation switching.
|
| D | onnn,nb7vpq904m.yaml | 92 handling altmode muxing and orientation switching.
|
| /kernel/linux/linux-5.10/drivers/usb/typec/ucsi/ |
| D | ucsi_ccg.c | 128 /* Altmode offset for NVIDIA Function Test Board (FTB) */ 385 /* Found Non DP altmode */ in ucsi_ccg_update_altmodes() 414 /* Didn't find any duplicate DP altmode */ in ucsi_ccg_update_altmodes() 446 * If CAM is UCSI_MULTI_DP_INDEX then this is DP altmode in ucsi_ccg_update_set_new_cam_cmd() 488 * (Function Test Board) which reports altmode list with vdo=0x3 490 * based on order in altmode list and it causes a mismatch of CON
|
| D | ucsi.c | 198 const struct typec_altmode *altmode = NULL; in ucsi_altmode_update_active() local 216 altmode = typec_altmode_get_partner(con->port_altmode[cur]); in ucsi_altmode_update_active() 220 con->partner_altmode[i] == altmode); in ucsi_altmode_update_active() 382 * Update the original altmode table as some ppms may report in ucsi_register_altmodes_nvidia()
|
| /kernel/linux/linux-6.6/drivers/usb/typec/ucsi/ |
| D | ucsi_ccg.c | 133 /* 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
|
| D | ucsi.c | 278 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()
|
| /kernel/linux/linux-5.10/drivers/usb/typec/tcpm/ |
| D | tcpm.c | 1179 struct typec_altmode *altmode; in tcpm_register_partner_altmodes() local 1183 altmode = typec_partner_register_altmode(port->partner, in tcpm_register_partner_altmodes() 1185 if (IS_ERR(altmode)) { in tcpm_register_partner_altmodes() 1188 altmode = NULL; in tcpm_register_partner_altmodes() 1190 port->partner_altmode[i] = altmode; in tcpm_register_partner_altmodes() 1399 tcpm_log(port, "typec_altmode_attention no port partner altmode"); in tcpm_handle_vdm_request() 1664 static int tcpm_altmode_enter(struct typec_altmode *altmode, u32 *vdo) in tcpm_altmode_enter() argument 1666 struct tcpm_port *port = typec_altmode_get_drvdata(altmode); in tcpm_altmode_enter() 1669 header = VDO(altmode->svid, vdo ? 2 : 1, CMD_ENTER_MODE); in tcpm_altmode_enter() 1670 header |= VDO_OPOS(altmode->mode); in tcpm_altmode_enter() [all …]
|
| /kernel/linux/linux-6.6/drivers/usb/typec/tcpm/ |
| D | tcpm.c | 1577 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 …]
|
| /kernel/linux/linux-6.6/drivers/platform/x86/intel/ |
| D | chtwc_int33fe.c | 145 .name = "displayport-altmode",
|