linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] hid: hid-chicony: fix switch case indentation
@ 2021-05-29  7:18 Navin Sankar Velliangiri
  2021-05-29  7:57 ` Joe Perches
  0 siblings, 1 reply; 2+ messages in thread
From: Navin Sankar Velliangiri @ 2021-05-29  7:18 UTC (permalink / raw)
  To: linux-input, linux-kernel; +Cc: jikos, benjamin.tissoires, navin

fixed switch case indentation.
Block comments should not use a trailing */ on a separate line.
Reported by checkpatch.

Signed-off-by: Navin Sankar Velliangiri <navin@linumiz.com>
---
 drivers/hid/hid-chicony.c | 74 +++++++++++++++++++++++++++++----------
 1 file changed, 55 insertions(+), 19 deletions(-)

diff --git a/drivers/hid/hid-chicony.c b/drivers/hid/hid-chicony.c
index ca556d39da2a..7dd4cfd256d9 100644
--- a/drivers/hid/hid-chicony.c
+++ b/drivers/hid/hid-chicony.c
@@ -65,26 +65,61 @@ static int ch_input_mapping(struct hid_device *hdev, struct hid_input *hi,
 
 	set_bit(EV_REP, hi->input->evbit);
 	switch (usage->hid & HID_USAGE) {
-	case 0xff01: ch_map_key_clear(BTN_1);	break;
-	case 0xff02: ch_map_key_clear(BTN_2);	break;
-	case 0xff03: ch_map_key_clear(BTN_3);	break;
-	case 0xff04: ch_map_key_clear(BTN_4);	break;
-	case 0xff05: ch_map_key_clear(BTN_5);	break;
-	case 0xff06: ch_map_key_clear(BTN_6);	break;
-	case 0xff07: ch_map_key_clear(BTN_7);	break;
-	case 0xff08: ch_map_key_clear(BTN_8);	break;
-	case 0xff09: ch_map_key_clear(BTN_9);	break;
-	case 0xff0a: ch_map_key_clear(BTN_A);	break;
-	case 0xff0b: ch_map_key_clear(BTN_B);	break;
-	case 0x00f1: ch_map_key_clear(KEY_WLAN);	break;
-	case 0x00f2: ch_map_key_clear(KEY_BRIGHTNESSDOWN);	break;
-	case 0x00f3: ch_map_key_clear(KEY_BRIGHTNESSUP);	break;
-	case 0x00f4: ch_map_key_clear(KEY_DISPLAY_OFF);	break;
-	case 0x00f7: ch_map_key_clear(KEY_CAMERA);	break;
-	case 0x00f8: ch_map_key_clear(KEY_PROG1);	break;
+	case 0xff01:
+		ch_map_key_clear(BTN_1);
+		break;
+	case 0xff02:
+		ch_map_key_clear(BTN_2);
+		break;
+	case 0xff03:
+		ch_map_key_clear(BTN_3);
+		break;
+	case 0xff04:
+		ch_map_key_clear(BTN_4);
+		break;
+	case 0xff05:
+		ch_map_key_clear(BTN_5);
+		break;
+	case 0xff06:
+		ch_map_key_clear(BTN_6);
+		break;
+	case 0xff07:
+		ch_map_key_clear(BTN_7);
+		break;
+	case 0xff08:
+		ch_map_key_clear(BTN_8);
+		break;
+	case 0xff09:
+		ch_map_key_clear(BTN_9);
+		break;
+	case 0xff0a:
+		ch_map_key_clear(BTN_A);
+		break;
+	case 0xff0b:
+		ch_map_key_clear(BTN_B);
+		break;
+	case 0x00f1:
+		ch_map_key_clear(KEY_WLAN);
+		break;
+	case 0x00f2:
+		ch_map_key_clear(KEY_BRIGHTNESSDOWN);
+		break;
+	case 0x00f3:
+		ch_map_key_clear(KEY_BRIGHTNESSUP);
+		break;
+	case 0x00f4:
+		ch_map_key_clear(KEY_DISPLAY_OFF);
+		break;
+	case 0x00f7:
+		ch_map_key_clear(KEY_CAMERA);
+		break;
+	case 0x00f8:
+		ch_map_key_clear(KEY_PROG1);
+		break;
 	default:
 		return 0;
 	}
+
 	return 1;
 }
 
@@ -92,10 +127,11 @@ static __u8 *ch_switch12_report_fixup(struct hid_device *hdev, __u8 *rdesc,
 		unsigned int *rsize)
 {
 	struct usb_interface *intf = to_usb_interface(hdev->dev.parent);
-	
+
 	if (intf->cur_altsetting->desc.bInterfaceNumber == 1) {
 		/* Change usage maximum and logical maximum from 0x7fff to
-		 * 0x2fff, so they don't exceed HID_MAX_USAGES */
+		 * 0x2fff, so they don't exceed HID_MAX_USAGES
+		 */
 		switch (hdev->product) {
 		case USB_DEVICE_ID_CHICONY_ACER_SWITCH12:
 			if (*rsize >= 128 && rdesc[64] == 0xff && rdesc[65] == 0x7f
-- 
2.31.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] hid: hid-chicony: fix switch case indentation
  2021-05-29  7:18 [PATCH] hid: hid-chicony: fix switch case indentation Navin Sankar Velliangiri
@ 2021-05-29  7:57 ` Joe Perches
  0 siblings, 0 replies; 2+ messages in thread
From: Joe Perches @ 2021-05-29  7:57 UTC (permalink / raw)
  To: Navin Sankar Velliangiri, linux-input, linux-kernel
  Cc: jikos, benjamin.tissoires

On Sat, 2021-05-29 at 12:48 +0530, Navin Sankar Velliangiri wrote:
> fixed switch case indentation.

Please try not to merely fix checkpatch warnings.
Instead try to improve the code.

And there's nothing _really_ wrong with the existing code but:

> diff --git a/drivers/hid/hid-chicony.c b/drivers/hid/hid-chicony.c
[]
> @@ -65,26 +65,61 @@ static int ch_input_mapping(struct hid_device *hdev, struct hid_input *hi,
>  
> 
>  	set_bit(EV_REP, hi->input->evbit);
>  	switch (usage->hid & HID_USAGE) {
> -	case 0xff01: ch_map_key_clear(BTN_1);	break;
> -	case 0xff02: ch_map_key_clear(BTN_2);	break;
[...]
> +	case 0xff01:
> +		ch_map_key_clear(BTN_1);
> +		break;
> +	case 0xff02:
> +		ch_map_key_clear(BTN_2);
> +		break;
[...]
>  	default:
>  		return 0;
>  	}
> +
>  	return 1;

IMO:

This might be (umm) clearer with a separate function.
A lot smaller code too.

$ size drivers/hid/hid-chicony.o*
   text	   data	    bss	    dec	    hex	filename
   1886	    392	      0	   2278	    8e6	drivers/hid/hid-chicony.o.new
   3329	    392	      0	   3721	    e89	drivers/hid/hid-chicony.o.old

Something like:
---
 drivers/hid/hid-chicony.c | 52 +++++++++++++++++++++++++++--------------------
 1 file changed, 30 insertions(+), 22 deletions(-)

diff --git a/drivers/hid/hid-chicony.c b/drivers/hid/hid-chicony.c
index ca556d39da2ae..03e9a1d943d96 100644
--- a/drivers/hid/hid-chicony.c
+++ b/drivers/hid/hid-chicony.c
@@ -54,37 +54,45 @@ static int ch_raw_event(struct hid_device *hdev,
 	return 0;
 }
 
-#define ch_map_key_clear(c)	hid_map_usage_clear(hi, usage, bit, max, \
-					EV_KEY, (c))
+static int map_use_to_btn(int use)
+{
+	switch (use) {
+	case 0xff01: return BTN_1;
+	case 0xff02: return BTN_2;
+	case 0xff03: return BTN_3;
+	case 0xff04: return BTN_4;
+	case 0xff05: return BTN_5;
+	case 0xff06: return BTN_6;
+	case 0xff07: return BTN_7;
+	case 0xff08: return BTN_8;
+	case 0xff09: return BTN_9;
+	case 0xff0a: return BTN_A;
+	case 0xff0b: return BTN_B;
+	case 0x00f1: return KEY_WLAN;
+	case 0x00f2: return KEY_BRIGHTNESSDOWN;
+	case 0x00f3: return KEY_BRIGHTNESSUP;
+	case 0x00f4: return KEY_DISPLAY_OFF;
+	case 0x00f7: return KEY_CAMERA;
+	case 0x00f8: return KEY_PROG1;
+	}
+	return 0;
+}
+
 static int ch_input_mapping(struct hid_device *hdev, struct hid_input *hi,
 		struct hid_field *field, struct hid_usage *usage,
 		unsigned long **bit, int *max)
 {
+	int btn;
+
 	if ((usage->hid & HID_USAGE_PAGE) != HID_UP_MSVENDOR)
 		return 0;
 
 	set_bit(EV_REP, hi->input->evbit);
-	switch (usage->hid & HID_USAGE) {
-	case 0xff01: ch_map_key_clear(BTN_1);	break;
-	case 0xff02: ch_map_key_clear(BTN_2);	break;
-	case 0xff03: ch_map_key_clear(BTN_3);	break;
-	case 0xff04: ch_map_key_clear(BTN_4);	break;
-	case 0xff05: ch_map_key_clear(BTN_5);	break;
-	case 0xff06: ch_map_key_clear(BTN_6);	break;
-	case 0xff07: ch_map_key_clear(BTN_7);	break;
-	case 0xff08: ch_map_key_clear(BTN_8);	break;
-	case 0xff09: ch_map_key_clear(BTN_9);	break;
-	case 0xff0a: ch_map_key_clear(BTN_A);	break;
-	case 0xff0b: ch_map_key_clear(BTN_B);	break;
-	case 0x00f1: ch_map_key_clear(KEY_WLAN);	break;
-	case 0x00f2: ch_map_key_clear(KEY_BRIGHTNESSDOWN);	break;
-	case 0x00f3: ch_map_key_clear(KEY_BRIGHTNESSUP);	break;
-	case 0x00f4: ch_map_key_clear(KEY_DISPLAY_OFF);	break;
-	case 0x00f7: ch_map_key_clear(KEY_CAMERA);	break;
-	case 0x00f8: ch_map_key_clear(KEY_PROG1);	break;
-	default:
+	btn = map_use_to_btn(usage->hid & HID_USAGE);
+	if (!btn)
 		return 0;
-	}
+
+	hid_map_usage_clear(hi, usage, bit, max, EV_KEY, btn);
 	return 1;
 }
 


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-05-29  7:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-29  7:18 [PATCH] hid: hid-chicony: fix switch case indentation Navin Sankar Velliangiri
2021-05-29  7:57 ` Joe Perches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).