Skip to contentSkip to conversation

linux-next: manual merge of the drivers-x86 tree with the hid tree

PATCH Mark Brown 3 participants 3 messages Jan 27 – Jan 28

Subsystems (2)
lore
Share & tools
lore

Mark Brown

author maintainer
#0 lore raw

Hi all,

Today's linux-next merge of the drivers-x86 tree got a conflict in:

drivers/hid/hid-asus.c

between commits:

f631011e36b87 ("HID: hid-asus: Implement fn lock for Asus ProArt P16") 06501b557faec ("HID: asus: Replace magic number with HID_UP_ASUSVENDOR constant")

from the hid tree and commits:

3415a1beb3d87 ("HID: asus: initialize additional endpoints only for certain devices") 8baca948f6aad ("HID: asus: move vendor initialization to probe")

from the drivers-x86 tree.

I fixed it up (see below) and can carry the fix as necessary. This is now fixed as far as linux-next is concerned, but any non trivial conflicts should be mentioned to your upstream maintainer when your tree is submitted for merging. You may also want to consider cooperating with the maintainer of the conflicting tree to minimise any particularly complex conflicts.

drivers/hid/hid-asus.c +0 -0
diff --cc drivers/hid/hid-asus.c
index df7c03dde67fa,f5c8df20b88bf..0000000000000
@@@ -101,7 -90,7 +101,8 @@@ MODULE_DESCRIPTION("Asus HID Keyboard a
  #define QUIRK_ROG_NKEY_KEYBOARD		BIT(11)
  #define QUIRK_ROG_CLAYMORE_II_KEYBOARD BIT(12)
  #define QUIRK_ROG_ALLY_XPAD		BIT(13)
 -#define QUIRK_ROG_NKEY_ID1ID2_INIT		BIT(14)
 +#define QUIRK_HID_FN_LOCK		BIT(14)
++#define QUIRK_ROG_NKEY_ID1ID2_INIT		BIT(15)
  
  #define I2C_KEYBOARD_QUIRKS			(QUIRK_FIX_NOTEBOOK_REPORT | \
  						 QUIRK_NO_INIT_REPORTS | \
@@@ -1490,10 -1372,10 +1464,10 @@@ static const struct hid_device_id asus_
  	  QUIRK_USE_KBD_BACKLIGHT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD),
- 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },
+ 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_ROG_NKEY_ID1ID2_INIT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2),
- 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_HID_FN_LOCK },
 -	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_ROG_NKEY_ID1ID2_INIT },
++	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_HID_FN_LOCK | QUIRK_ROG_NKEY_ID1ID2_INIT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_Z13_LIGHTBAR),
  	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },

index 876529df0d6ae..1b9793f7c07ed 100644

drivers/hid/hid-asus.c +6 -0
@@ -959,6 +959,12 @@ static int asus_input_configured(struct hid_device *hdev, struct hid_input *hi)
 		}
 	}
 
+	if (drvdata->quirks & QUIRK_HID_FN_LOCK) {
+		drvdata->fn_lock = true;
+		INIT_WORK(&drvdata->fn_lock_sync_work, asus_sync_fn_lock);
+		asus_kbd_set_fn_lock(hdev, true);
+	}
+
 	if (drvdata->tp) {
 		int ret;
 
Signature · 1 line
2.47.3
#1 lore raw
Quoted 1 line · Mark Brown

Hi all,

I don't know why Benjamin didn't appear as a receipient here.

Quoted 14 lines

Today's linux-next merge of the drivers-x86 tree got a conflict in:

drivers/hid/hid-asus.c

between commits:

f631011e36b87 ("HID: hid-asus: Implement fn lock for Asus ProArt P16") 06501b557faec ("HID: asus: Replace magic number with HID_UP_ASUSVENDOR constant")

from the hid tree and commits:

3415a1beb3d87 ("HID: asus: initialize additional endpoints only for certain devices") 8baca948f6aad ("HID: asus: move vendor initialization to probe")

Quoted 8 lines

from the drivers-x86 tree.

I fixed it up (see below) and can carry the fix as necessary. This is now fixed as far as linux-next is concerned, but any non trivial conflicts should be mentioned to your upstream maintainer when your tree is submitted for merging. You may also want to consider cooperating with the maintainer of the conflicting tree to minimise any particularly complex conflicts.

Thanks for the heads up.

I moved this asus kbd series into a separate branch and merged that into my for-next branch. I could create an IB PR for that branch if HID maintainers so prefer, though admittedly the conflict doesn't look particularly complex.

Quoted 46 lines
drivers/hid/hid-asus.c +3 -2
diff --cc drivers/hid/hid-asus.c
index df7c03dde67fa,f5c8df20b88bf..0000000000000
@@@ -101,7 -90,7 +101,8 @@@ MODULE_DESCRIPTION("Asus HID Keyboard a
  #define QUIRK_ROG_NKEY_KEYBOARD		BIT(11)
  #define QUIRK_ROG_CLAYMORE_II_KEYBOARD BIT(12)
  #define QUIRK_ROG_ALLY_XPAD		BIT(13)
 -#define QUIRK_ROG_NKEY_ID1ID2_INIT		BIT(14)
 +#define QUIRK_HID_FN_LOCK		BIT(14)
++#define QUIRK_ROG_NKEY_ID1ID2_INIT		BIT(15)
 
  #define I2C_KEYBOARD_QUIRKS			(QUIRK_FIX_NOTEBOOK_REPORT | \
  						 QUIRK_NO_INIT_REPORTS | \
@@@ -1490,10 -1372,10 +1464,10 @@@ static const struct hid_device_id asus_
  	  QUIRK_USE_KBD_BACKLIGHT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD),
- 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },
+ 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_ROG_NKEY_ID1ID2_INIT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_NKEY_KEYBOARD2),
- 	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_HID_FN_LOCK },
 -	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_ROG_NKEY_ID1ID2_INIT },
++	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD | QUIRK_HID_FN_LOCK | QUIRK_ROG_NKEY_ID1ID2_INIT },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_ASUSTEK,
  	    USB_DEVICE_ID_ASUSTEK_ROG_Z13_LIGHTBAR),
  	  QUIRK_USE_KBD_BACKLIGHT | QUIRK_ROG_NKEY_KEYBOARD },

index 876529df0d6ae..1b9793f7c07ed 100644

drivers/hid/hid-asus.c +6 -0
@@ -959,6 +959,12 @@ static int asus_input_configured(struct hid_device *hdev, struct hid_input *hi)
 		}
 	}
 
+	if (drvdata->quirks & QUIRK_HID_FN_LOCK) {
+		drvdata->fn_lock = true;
+		INIT_WORK(&drvdata->fn_lock_sync_work, asus_sync_fn_lock);
+		asus_kbd_set_fn_lock(hdev, true);
+	}
+
 	if (drvdata->tp) {
 		int ret;
 
Signature · 1 line
 i.
maintainer
#2 lore raw
Quoted 4 lines · Ilpo Järvinen

I moved this asus kbd series into a separate branch and merged that into my for-next branch. I could create an IB PR for that branch if HID maintainers so prefer, though admittedly the conflict doesn't look particularly complex.

Yeah, the conflict is trivial, and Linus likes to see conflicts between trees himself.

The one of us who sends pull request to Linus should just point it out in pull request.

Thanks,

Signature · 2 lines
Jiri Kosina
SUSE Labs