typec_set_data_role(9)
π typec_set_data_role β the manual page, but make it make sense β¨
okay so bestie, you found typec_set_data_role(9) β it's a Linux kernel API manual page, and honestly? it's short and sweet. no cap. let's get into it π«Ά
πΈ NAME πΈ
typec_set_data_role β report a data role change, periodt π
β¨ SYNOPSIS β¨
void typec_set_data_role (struct typec_port *port , enum typec_data_role
role );
that's the whole signature, character for character, don't come for me π β yes there's a space before the comma, it's in the original, leave her alone π
π ARGUMENTS π
portβ the USB Type-C Port where the role got changed π like, this is the port that's going through itroleβ the new data role, the fresh identity, the main character energy β¨
π¦ DESCRIPTION π¦
so this routine is the one port drivers use to report data role changes. that's it. that's the whole vibe. it's giving "messenger, not decision-maker" β you're just telling the kernel "hey bestie, the data role changed" π§
no extra lore, no hidden options, no gotchas. the manpage is literally one sentence and honestly? iconic for that π
π₯ SEE ALSO π₯
the kernel file lives at ./drivers/usb/typec/class.c β and here's the full squad of related calls, all of them, zero skipped, because we don't do that here π
typec_altmode_update_active(9)typec_altmode2port(9)typec_altmode_set_ops(9)typec_unregister_altmode(9)typec_partner_set_usb_mode(9)typec_partner_set_identity(9)typec_partner_set_pd_revision(9)typec_partner_set_usb_power_delivery(9)typec_partner_set_num_altmodes(9)typec_partner_register_altmode(9)typec_partner_set_svdm_version(9)typec_partner_usb_power_delivery_register(9)typec_register_partner(9)typec_unregister_partner(9)typec_plug_set_num_altmodes(9)typec_plug_register_altmode(9)typec_register_plug(9)typec_unregister_plug(9)typec_cable_get(9)typec_cable_put(9)typec_cable_is_active(9)typec_cable_altmode_unsupported(9)typec_cable_set_identity(9)typec_register_cable(9)typec_unregister_cable(9)typec_port_set_usb_mode(9)typec_port_set_usb_power_delivery(9)typec_get_data_role(9)typec_set_pwr_role(9)typec_set_vconn_role(9)typec_set_pwr_opmode(9)typec_find_pwr_opmode(9)typec_find_orientation(9)typec_find_port_power_role(9)typec_find_power_role(9)typec_find_port_data_role(9)typec_set_orientation(9)typec_get_orientation(9)typec_set_mode(9)typec_get_negotiated_svdm_version(9)typec_get_cable_svdm_version(9)typec_cable_set_svdm_version(9)typec_get_drvdata(9)typec_port_register_altmode(9)typec_port_register_cable_ops(9)typec_register_port(9)typec_unregister_port(9)
like, that's a lot of friends. she's well-connected πβ¨
ngl there are no warnings, no exit statuses, no env vars, no bugs listed on this one β it's just a clean little reporting function. savour it π
and that's the tea β this page comes out of ./drivers/usb/typec and it's dated October 2026 β so yeah, future vibes, we stay ahead of the curve π bye bestie, go report those data role changes responsibly π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms