18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci#ifndef US122L_H 38c2ecf20Sopenharmony_ci#define US122L_H 48c2ecf20Sopenharmony_ci 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_cistruct us122l { 78c2ecf20Sopenharmony_ci struct usb_device *dev; 88c2ecf20Sopenharmony_ci int card_index; 98c2ecf20Sopenharmony_ci int stride; 108c2ecf20Sopenharmony_ci struct usb_stream_kernel sk; 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci struct mutex mutex; 138c2ecf20Sopenharmony_ci struct file *first; 148c2ecf20Sopenharmony_ci unsigned second_periods_polled; 158c2ecf20Sopenharmony_ci struct file *master; 168c2ecf20Sopenharmony_ci struct file *slave; 178c2ecf20Sopenharmony_ci struct list_head midi_list; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci atomic_t mmap_count; 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci bool is_us144; 228c2ecf20Sopenharmony_ci}; 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci#define US122L(c) ((struct us122l *)(c)->private_data) 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci#define NAME_ALLCAPS "US-122L" 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci#define USB_ID_US122L 0x800E 308c2ecf20Sopenharmony_ci#define USB_ID_US144 0x800F 318c2ecf20Sopenharmony_ci#define USB_ID_US122MKII 0x8021 328c2ecf20Sopenharmony_ci#define USB_ID_US144MKII 0x8020 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci#endif 35