1 /* SPDX-License-Identifier: GPL-2.0 */
3 #ifndef __USB_TYPEC_ALTMODE_H__
4 #define __USB_TYPEC_ALTMODE_H__
6 #include <linux/usb/typec_altmode.h>
14 struct typec_altmode adev;
15 struct typec_mux *mux;
16 struct typec_retimer *retimer;
18 enum typec_port_data roles;
20 struct attribute *attrs[5];
22 struct attribute_group group;
23 const struct attribute_group *groups[2];
25 struct altmode *partner;
26 struct altmode *plug[2];
29 #define to_altmode(d) container_of(d, struct altmode, adev)
31 extern const struct bus_type typec_bus;
32 extern const struct device_type typec_altmode_dev_type;
34 #define is_typec_altmode(_dev_) (_dev_->type == &typec_altmode_dev_type)
36 #endif /* __USB_TYPEC_ALTMODE_H__ */