aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/hid/hid-roccat-arvo.c5
-rw-r--r--drivers/hid/hid-roccat-kone.c3
-rw-r--r--drivers/hid/hid-roccat-koneplus.c8
-rw-r--r--drivers/hid/hid-roccat-kovaplus.c5
-rw-r--r--drivers/hid/hid-roccat-pyra.c3
5 files changed, 21 insertions, 3 deletions
diff --git a/drivers/hid/hid-roccat-arvo.c b/drivers/hid/hid-roccat-arvo.c
index 610536606195..093bfad00b02 100644
--- a/drivers/hid/hid-roccat-arvo.c
+++ b/drivers/hid/hid-roccat-arvo.c
@@ -163,6 +163,9 @@ static ssize_t arvo_sysfs_set_actual_profile(struct device *dev,
163 if (retval) 163 if (retval)
164 return retval; 164 return retval;
165 165
166 if (profile < 1 || profile > 5)
167 return -EINVAL;
168
166 temp_buf.command = ARVO_COMMAND_ACTUAL_PROFILE; 169 temp_buf.command = ARVO_COMMAND_ACTUAL_PROFILE;
167 temp_buf.actual_profile = profile; 170 temp_buf.actual_profile = profile;
168 171
@@ -399,7 +402,7 @@ static int arvo_raw_event(struct hid_device *hdev,
399 if (size != 3) 402 if (size != 3)
400 return 0; 403 return 0;
401 404
402 if (arvo->roccat_claimed) 405 if (arvo && arvo->roccat_claimed)
403 arvo_report_to_chrdev(arvo, data); 406 arvo_report_to_chrdev(arvo, data);
404 407
405 return 0; 408 return 0;
diff --git a/drivers/hid/hid-roccat-kone.c b/drivers/hid/hid-roccat-kone.c
index 7e29778fe7ab..2b8f3a31ffb3 100644
--- a/drivers/hid/hid-roccat-kone.c
+++ b/drivers/hid/hid-roccat-kone.c
@@ -832,6 +832,9 @@ static int kone_raw_event(struct hid_device *hdev, struct hid_report *report,
832 if (size != sizeof(struct kone_mouse_event)) 832 if (size != sizeof(struct kone_mouse_event))
833 return 0; 833 return 0;
834 834
835 if (kone == NULL)
836 return 0;
837
835 /* 838 /*
836 * Firmware 1.38 introduced new behaviour for tilt and special buttons. 839 * Firmware 1.38 introduced new behaviour for tilt and special buttons.
837 * Pressed button is reported in each movement event. 840 * Pressed button is reported in each movement event.
diff --git a/drivers/hid/hid-roccat-koneplus.c b/drivers/hid/hid-roccat-koneplus.c
index 33ecad50395b..59e47770fa10 100644
--- a/drivers/hid/hid-roccat-koneplus.c
+++ b/drivers/hid/hid-roccat-koneplus.c
@@ -431,6 +431,9 @@ static ssize_t koneplus_sysfs_set_actual_profile(struct device *dev,
431 if (retval) 431 if (retval)
432 return retval; 432 return retval;
433 433
434 if (profile > 4)
435 return -EINVAL;
436
434 mutex_lock(&koneplus->koneplus_lock); 437 mutex_lock(&koneplus->koneplus_lock);
435 438
436 retval = koneplus_set_actual_profile(usb_dev, profile); 439 retval = koneplus_set_actual_profile(usb_dev, profile);
@@ -439,7 +442,7 @@ static ssize_t koneplus_sysfs_set_actual_profile(struct device *dev,
439 return retval; 442 return retval;
440 } 443 }
441 444
442 koneplus->actual_profile = profile; 445 koneplus_profile_activated(koneplus, profile);
443 446
444 roccat_report.type = KONEPLUS_MOUSE_REPORT_BUTTON_TYPE_PROFILE; 447 roccat_report.type = KONEPLUS_MOUSE_REPORT_BUTTON_TYPE_PROFILE;
445 roccat_report.data1 = profile + 1; 448 roccat_report.data1 = profile + 1;
@@ -751,6 +754,9 @@ static int koneplus_raw_event(struct hid_device *hdev,
751 != USB_INTERFACE_PROTOCOL_MOUSE) 754 != USB_INTERFACE_PROTOCOL_MOUSE)
752 return 0; 755 return 0;
753 756
757 if (koneplus == NULL)
758 return 0;
759
754 koneplus_keep_values_up_to_date(koneplus, data); 760 koneplus_keep_values_up_to_date(koneplus, data);
755 761
756 if (koneplus->roccat_claimed) 762 if (koneplus->roccat_claimed)
diff --git a/drivers/hid/hid-roccat-kovaplus.c b/drivers/hid/hid-roccat-kovaplus.c
index 212e7921e942..1f8336e3f584 100644
--- a/drivers/hid/hid-roccat-kovaplus.c
+++ b/drivers/hid/hid-roccat-kovaplus.c
@@ -337,7 +337,7 @@ static ssize_t kovaplus_sysfs_set_actual_profile(struct device *dev,
337 337
338 mutex_lock(&kovaplus->kovaplus_lock); 338 mutex_lock(&kovaplus->kovaplus_lock);
339 retval = kovaplus_set_actual_profile(usb_dev, profile); 339 retval = kovaplus_set_actual_profile(usb_dev, profile);
340 kovaplus->actual_profile = profile; 340 kovaplus_profile_activated(kovaplus, profile);
341 mutex_unlock(&kovaplus->kovaplus_lock); 341 mutex_unlock(&kovaplus->kovaplus_lock);
342 if (retval) 342 if (retval)
343 return retval; 343 return retval;
@@ -662,6 +662,9 @@ static int kovaplus_raw_event(struct hid_device *hdev,
662 != USB_INTERFACE_PROTOCOL_MOUSE) 662 != USB_INTERFACE_PROTOCOL_MOUSE)
663 return 0; 663 return 0;
664 664
665 if (kovaplus == NULL)
666 return 0;
667
665 kovaplus_keep_values_up_to_date(kovaplus, data); 668 kovaplus_keep_values_up_to_date(kovaplus, data);
666 669
667 if (kovaplus->roccat_claimed) 670 if (kovaplus->roccat_claimed)
diff --git a/drivers/hid/hid-roccat-pyra.c b/drivers/hid/hid-roccat-pyra.c
index 75a092e0d1d8..8140776bd8c5 100644
--- a/drivers/hid/hid-roccat-pyra.c
+++ b/drivers/hid/hid-roccat-pyra.c
@@ -637,6 +637,9 @@ static int pyra_raw_event(struct hid_device *hdev, struct hid_report *report,
637 != USB_INTERFACE_PROTOCOL_MOUSE) 637 != USB_INTERFACE_PROTOCOL_MOUSE)
638 return 0; 638 return 0;
639 639
640 if (pyra == NULL)
641 return 0;
642
640 pyra_keep_values_up_to_date(pyra, data); 643 pyra_keep_values_up_to_date(pyra, data);
641 644
642 if (pyra->roccat_claimed) 645 if (pyra->roccat_claimed)