static int koneplus_init_koneplus_device_struct(struct usb_device *usb_dev, struct koneplus_device *koneplus) { int retval, i; static uint wait = 200; mutex_init(&koneplus->koneplus_lock); retval = koneplus_get_info(usb_dev, &koneplus->info); if (retval) return retval; for (i = 0; i < 5; ++i) { msleep(wait); retval = koneplus_get_profile_settings(usb_dev, &koneplus->profile_settings[i], i); if (retval) return retval; msleep(wait); retval = koneplus_get_profile_buttons(usb_dev, &koneplus->profile_buttons[i], i); if (retval) return retval; } msleep(wait); retval = koneplus_get_actual_profile(usb_dev); if (retval < 0) return retval; koneplus_profile_activated(koneplus, retval); return 0; }
static int koneplus_init_koneplus_device_struct(struct usb_device *usb_dev, struct koneplus_device *koneplus) { int retval; mutex_init(&koneplus->koneplus_lock); retval = koneplus_get_actual_profile(usb_dev); if (retval < 0) return retval; koneplus_profile_activated(koneplus, retval); return 0; }