Home
last modified time | relevance | path

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

12

/linux-6.14.4/drivers/soc/qcom/
Dpmic_glink_altmode.c68 struct pmic_glink_altmode *altmode; member
108 static int pmic_glink_altmode_request(struct pmic_glink_altmode *altmode, u32 cmd, u32 arg) in pmic_glink_altmode_request() argument
118 guard(mutex)(&altmode->lock); in pmic_glink_altmode_request()
120 req.hdr.owner = cpu_to_le32(altmode->owner_id); in pmic_glink_altmode_request()
126 ret = pmic_glink_send(altmode->client, &req, sizeof(req)); in pmic_glink_altmode_request()
128 dev_err(altmode->dev, "failed to send altmode request: %#x (%d)\n", cmd, ret); in pmic_glink_altmode_request()
132 left = wait_for_completion_timeout(&altmode->pan_ack, 5 * HZ); in pmic_glink_altmode_request()
134 dev_err(altmode->dev, "timeout waiting for altmode request ack for: %#x\n", cmd); in pmic_glink_altmode_request()
141 static void pmic_glink_altmode_enable_dp(struct pmic_glink_altmode *altmode, in pmic_glink_altmode_enable_dp() argument
162 dev_err(altmode->dev, "failed to switch mux to DP: %d\n", ret); in pmic_glink_altmode_enable_dp()
[all …]
Dpmic_glink.c319 ret = pmic_glink_add_aux_device(pg, &pg->altmode_aux, "altmode"); in pmic_glink_probe()
/linux-6.14.4/include/linux/usb/
Dtypec_altmode.h39 static inline void typec_altmode_set_drvdata(struct typec_altmode *altmode, in typec_altmode_set_drvdata() argument
42 dev_set_drvdata(&altmode->dev, data); in typec_altmode_set_drvdata()
45 static inline void *typec_altmode_get_drvdata(struct typec_altmode *altmode) in typec_altmode_get_drvdata() argument
47 return dev_get_drvdata(&altmode->dev); in typec_altmode_get_drvdata()
60 int (*enter)(struct typec_altmode *altmode, u32 *vdo);
61 int (*exit)(struct typec_altmode *altmode);
62 void (*attention)(struct typec_altmode *altmode, u32 vdo);
63 int (*vdm)(struct typec_altmode *altmode, const u32 hdr,
65 int (*notify)(struct typec_altmode *altmode, unsigned long conf,
67 int (*activate)(struct typec_altmode *altmode, int activate);
[all …]
/linux-6.14.4/drivers/usb/typec/
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 …]
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)
Dclass.c244 static void typec_altmode_set_partner(struct altmode *altmode) in typec_altmode_set_partner() argument
246 struct typec_altmode *adev = &altmode->adev; in typec_altmode_set_partner()
249 struct altmode *partner; in typec_altmode_set_partner()
258 altmode->partner = partner; in typec_altmode_set_partner()
264 partner->plug[plug->index] = altmode; in typec_altmode_set_partner()
266 partner->partner = altmode; in typec_altmode_set_partner()
270 static void typec_altmode_put_partner(struct altmode *altmode) in typec_altmode_put_partner() argument
272 struct altmode *partner = altmode->partner; in typec_altmode_put_partner()
279 adev = &altmode->adev; in typec_altmode_put_partner()
372 struct altmode *altmode = to_altmode(adev); in active_store() local
[all …]
Danx7411.c569 dev_err(dev, "no altmode space for registering\n"); in anx7411_typec_register_altmode()
576 dev_err(dev, "failed to register altmode\n"); in anx7411_typec_register_altmode()
680 /* Update DP altmode */ in anx7411_parse_cmd()
692 /* Register DP Altmode */ in anx7411_parse_cmd()
696 /* Register other altmode */ in anx7411_parse_cmd()
1046 dev_err(dev, "dp altmode not register\n"); in anx7411_usb_mux_set()
/linux-6.14.4/Documentation/devicetree/bindings/usb/
Dqcom,wcd939x-usbss.yaml7 title: Qualcomm WCD9380/WCD9385 USB SubSystem Altmode/Analog Audio Switch
14 functionally separate USB SubSystem for Altmode/Analog Audio Switch
18 graph description to handle USB-C altmode & orientation switching for Audio
48 purpose of handling altmode muxing and orientation switching.
Dite,it5205.yaml24 description: Flag the port as possible handle of altmode switching
39 handling altmode muxing and orientation switching.
Dusb-switch.yaml17 description: Possible handler of altmode switching
32 handling altmode muxing and orientation switching.
Dgpio-sbu-mux.yaml14 and swapped depending on the altmode and orientation. This binding describes
45 handling altmode muxing and orientation switching.
Dnxp,ptn36502.yaml41 handling altmode muxing and orientation switching.
Dfcs,fsa4480.yaml37 handling altmode muxing and orientation switching.
Donnn,nb7vpq904m.yaml86 handling altmode muxing and orientation switching.
/linux-6.14.4/drivers/platform/chrome/
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()
Dcros_typec_altmode.h20 int cros_typec_displayport_status_update(struct typec_altmode *altmode,
31 static inline int cros_typec_displayport_status_update(struct typec_altmode *altmode, in cros_typec_displayport_status_update() argument
Dcros_typec_altmode.c276 int cros_typec_displayport_status_update(struct typec_altmode *altmode, in cros_typec_displayport_status_update() argument
280 typec_altmode_get_drvdata(altmode); in cros_typec_displayport_status_update()
284 dev_dbg(&altmode->dev, in cros_typec_displayport_status_update()
290 dev_dbg(&altmode->dev, in cros_typec_displayport_status_update()
Dcros_ec_typec.h24 /* Container for altmode pointer nodes. */
/linux-6.14.4/Documentation/devicetree/bindings/sound/
Dqcom,wcd939x.yaml19 to handle USB-C altmode & orientation switching for Audio Accessory Mode.
34 description: Flag the port as possible handler of altmode switching
45 purpose of handling altmode muxing and orientation switching to detect and
/linux-6.14.4/drivers/usb/typec/altmodes/
Dthunderbolt.c130 * stop attempting to enter either cable altmode (probably not supported) and
131 * directly enter the port altmode.
227 /* Port altmode is last to enter and first to exit. */ in tbt_altmode_vdm()
349 /* We accept systems without SOP' or SOP''. This means the port altmode in tbt_ready()
/linux-6.14.4/drivers/usb/typec/tcpm/
Dtcpm.c1794 struct typec_altmode *altmode; in tcpm_register_partner_altmodes() local
1801 altmode = typec_partner_register_altmode(port->partner, in tcpm_register_partner_altmodes()
1803 if (IS_ERR(altmode)) { in tcpm_register_partner_altmodes()
1806 altmode = NULL; in tcpm_register_partner_altmodes()
1808 port->partner_altmode[i] = altmode; in tcpm_register_partner_altmodes()
1815 struct typec_altmode *altmode; in tcpm_register_plug_altmodes() local
1821 altmode = typec_plug_register_altmode(port->plug_prime, in tcpm_register_plug_altmodes()
1823 if (IS_ERR(altmode)) { in tcpm_register_plug_altmodes()
1826 altmode = NULL; in tcpm_register_plug_altmodes()
1828 port->plug_prime_altmode[i] = altmode; in tcpm_register_plug_altmodes()
[all …]
/linux-6.14.4/drivers/usb/typec/ucsi/
Ducsi_ccg.c133 /* Altmode offset for NVIDIA Function Test Board (FTB) */
431 /* Found Non DP altmode */ in ucsi_ccg_update_altmodes()
460 /* Didn't find any duplicate DP altmode */ in ucsi_ccg_update_altmodes()
492 * If CAM is UCSI_MULTI_DP_INDEX then this is DP altmode in ucsi_ccg_update_set_new_cam_cmd()
534 * (Function Test Board) which reports altmode list with vdo=0x3
536 * based on order in altmode list and it causes a mismatch of CON
Ducsi.c312 const struct typec_altmode *altmode = NULL; in ucsi_altmode_update_active() local
330 altmode = typec_altmode_get_partner(con->port_altmode[cur]); in ucsi_altmode_update_active()
334 con->partner_altmode[i] == altmode); in ucsi_altmode_update_active()
528 * Update the original altmode table as some ppms may report in ucsi_register_altmodes_nvidia()
/linux-6.14.4/Documentation/devicetree/bindings/phy/
Dphy-rockchip-usbdp.yaml105 description: Flag the port as possible handler of altmode switching
/linux-6.14.4/drivers/usb/typec/mux/
Dptn36502.c125 /* DP Altmode Setup */ in ptn36502_set()

12