^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #ifndef USB__GADGET__CONFIGFS__H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define USB__GADGET__CONFIGFS__H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #include <linux/configfs.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) void unregister_gadget_item(struct config_item *item);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) struct config_group *usb_os_desc_prepare_interf_dir(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) struct config_group *parent,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) int n_interf,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) struct usb_os_desc **desc,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) char **names,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) struct module *owner);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) static inline struct usb_os_desc *to_usb_os_desc(struct config_item *item)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) return container_of(to_config_group(item), struct usb_os_desc, group);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) #endif /* USB__GADGET__CONFIGFS__H */