Message ID | 747e3240-bb3f-3a0c-e998-02f3b4826704@xenosoft.de |
---|---|
State | New |
Headers | show |
Series | [PASEMI] Nemo board doesn't reboot anymore after the commit "HID: usbhid: Add ALWAYS_POLL quirk for some mice" | expand |
[Note: this mail contains only information for Linux kernel regression tracking. Mails like these contain '#forregzbot' in the subject to make then easy to spot and filter out. The author also tried to remove most or all individuals from the list of recipients to spare them the hassle.] On 22.12.22 11:42, Christian Zigotzky wrote: > > The Nemo board [1] doesn't reboot anymore since the final kernel 6.1. > The reboot works with the RC8 of kernel 6.1. > Actually, a reboot works but the CFE firmware is not loaded. Maybe there > is still something in the memory after the reboot. > > I bisected today. [2] Thanks for the report. To be sure below issue doesn't fall through the cracks unnoticed, I'm adding it to regzbot, my Linux kernel regression tracking bot: #regzbot ^introduced f6d910a89a23 #regzbot title hid: PASEMI Nemo board doesn't reboot anymore #regzbot ignore-activity Ciao, Thorsten (wearing his 'the Linux kernel's regression tracker' hat) P.S.: As the Linux kernel's regression tracker I deal with a lot of reports and sometimes miss something important when writing mails like this. If that's the case here, don't hesitate to tell me in a public reply, it's in everyone's interest to set the public record straight.
Hello, The reboot issue is still present in the RC2 of kernel 6.2. We still need the usbhid.patch. [1] Please check the bad commit. [2] Thanks, Christian [1] https://forum.hyperion-entertainment.com/viewtopic.php?p=56303#p56303 [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v6.1&id=f6d910a89a2391e5ce1f275d205023880a33d3f8 On 22 December 2022 at 11:42 am, Christian Zigotzky wrote: > Hello, > > The Nemo board [1] doesn't reboot anymore since the final kernel 6.1. > The reboot works with the RC8 of kernel 6.1. > Actually, a reboot works but the CFE firmware is not loaded. Maybe > there is still something in the memory after the reboot. > > I bisected today. [2] > > The commit "HID: usbhid: Add ALWAYS_POLL quirk for some mice". [3] is > the problem. > > I was able to revert this commit and the reboot works without any > problems again. > > I created a patch for reverting the bad commit. [4] > > Then I compiled the kernel with this patch. After that, the X1000 > reboots without any problems. > > I use a Cherry USB mouse. [5] > > Please check the bad commit. > > Thanks, > Christian > > > [1] https://en.wikipedia.org/wiki/AmigaOne_X1000 > [2] https://forum.hyperion-entertainment.com/viewtopic.php?p=56303#p56303 > [3] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v6.1&id=f6d910a89a2391e5ce1f275d205023880a33d3f8 > [4] usbhid.patch: > > diff -rupN a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h > --- a/drivers/hid/hid-ids.h 2022-12-22 10:24:06.842881276 +0100 > +++ b/drivers/hid/hid-ids.h 2022-12-22 10:23:35.903328869 +0100 > @@ -274,7 +274,6 @@ > #define USB_DEVICE_ID_CH_AXIS_295 0x001c > > #define USB_VENDOR_ID_CHERRY 0x046a > -#define USB_DEVICE_ID_CHERRY_MOUSE_000C 0x000c > #define USB_DEVICE_ID_CHERRY_CYMOTION 0x0023 > #define USB_DEVICE_ID_CHERRY_CYMOTION_SOLAR 0x0027 > > @@ -919,7 +918,6 @@ > #define USB_DEVICE_ID_MS_XBOX_ONE_S_CONTROLLER 0x02fd > #define USB_DEVICE_ID_MS_PIXART_MOUSE 0x00cb > #define USB_DEVICE_ID_8BITDO_SN30_PRO_PLUS 0x02e0 > -#define USB_DEVICE_ID_MS_MOUSE_0783 0x0783 > > #define USB_VENDOR_ID_MOJO 0x8282 > #define USB_DEVICE_ID_RETRO_ADAPTER 0x3201 > @@ -1388,7 +1386,6 @@ > > #define USB_VENDOR_ID_PRIMAX 0x0461 > #define USB_DEVICE_ID_PRIMAX_MOUSE_4D22 0x4d22 > -#define USB_DEVICE_ID_PRIMAX_MOUSE_4E2A 0x4e2a > #define USB_DEVICE_ID_PRIMAX_KEYBOARD 0x4e05 > #define USB_DEVICE_ID_PRIMAX_REZEL 0x4e72 > #define USB_DEVICE_ID_PRIMAX_PIXART_MOUSE_4D0F 0x4d0f > diff -rupN a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c > --- a/drivers/hid/hid-quirks.c 2022-12-22 10:24:06.844881247 +0100 > +++ b/drivers/hid/hid-quirks.c 2022-12-22 10:23:35.904328855 +0100 > @@ -54,7 +54,6 @@ static const struct hid_device_id hid_qu > { HID_USB_DEVICE(USB_VENDOR_ID_CH, > USB_DEVICE_ID_CH_FLIGHT_SIM_YOKE), HID_QUIRK_NOGET }, > { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_PRO_PEDALS), > HID_QUIRK_NOGET }, > { HID_USB_DEVICE(USB_VENDOR_ID_CH, > USB_DEVICE_ID_CH_PRO_THROTTLE), HID_QUIRK_NOGET }, > - { HID_USB_DEVICE(USB_VENDOR_ID_CHERRY, > USB_DEVICE_ID_CHERRY_MOUSE_000C), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, > USB_DEVICE_ID_CORSAIR_K65RGB), HID_QUIRK_NO_INIT_REPORTS }, > { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, > USB_DEVICE_ID_CORSAIR_K65RGB_RAPIDFIRE), HID_QUIRK_NO_INIT_REPORTS | > HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, > USB_DEVICE_ID_CORSAIR_K70RGB), HID_QUIRK_NO_INIT_REPORTS }, > @@ -123,7 +122,6 @@ static const struct hid_device_id hid_qu > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, > USB_DEVICE_ID_LOGITECH_MOUSE_C05A), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, > USB_DEVICE_ID_LOGITECH_MOUSE_C06A), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_MCS, > USB_DEVICE_ID_MCS_GAMEPADBLOCK), HID_QUIRK_MULTI_INPUT }, > - { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, > USB_DEVICE_ID_MS_MOUSE_0783), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, > USB_DEVICE_ID_MS_PIXART_MOUSE), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, > USB_DEVICE_ID_MS_POWER_COVER), HID_QUIRK_NO_INIT_REPORTS }, > { HID_USB_DEVICE(USB_VENDOR_ID_MICROSOFT, > USB_DEVICE_ID_MS_SURFACE3_COVER), HID_QUIRK_NO_INIT_REPORTS }, > @@ -148,7 +146,6 @@ static const struct hid_device_id hid_qu > { HID_USB_DEVICE(USB_VENDOR_ID_PIXART, > USB_DEVICE_ID_PIXART_OPTICAL_TOUCH_SCREEN), HID_QUIRK_NO_INIT_REPORTS }, > { HID_USB_DEVICE(USB_VENDOR_ID_PIXART, > USB_DEVICE_ID_PIXART_USB_OPTICAL_MOUSE), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, > USB_DEVICE_ID_PRIMAX_MOUSE_4D22), HID_QUIRK_ALWAYS_POLL }, > - { HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, > USB_DEVICE_ID_PRIMAX_MOUSE_4E2A), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, > USB_DEVICE_ID_PRIMAX_PIXART_MOUSE_4D0F), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, > USB_DEVICE_ID_PRIMAX_PIXART_MOUSE_4D65), HID_QUIRK_ALWAYS_POLL }, > { HID_USB_DEVICE(USB_VENDOR_ID_PRIMAX, > USB_DEVICE_ID_PRIMAX_PIXART_MOUSE_4E22), HID_QUIRK_ALWAYS_POLL }, > > [5] > > Bus 003 Device 002: ID 046a:000c Cherry GmbH > Couldn't open device, some information will be missing > Device Descriptor: > bLength 18 > bDescriptorType 1 > bcdUSB 1.10 > bDeviceClass 0 > bDeviceSubClass 0 > bDeviceProtocol 0 > bMaxPacketSize0 8 > idVendor 0x046a Cherry GmbH > idProduct 0x000c > bcdDevice 8.10 > iManufacturer 0 > iProduct 0 > iSerial 0 > bNumConfigurations 1 > Configuration Descriptor: > bLength 9 > bDescriptorType 2 > wTotalLength 0x0022 > bNumInterfaces 1 > bConfigurationValue 1 > iConfiguration 0 > bmAttributes 0xa0 > (Bus Powered) > Remote Wakeup > MaxPower 100mA > Interface Descriptor: > bLength 9 > bDescriptorType 4 > bInterfaceNumber 0 > bAlternateSetting 0 > bNumEndpoints 1 > bInterfaceClass 3 Human Interface Device > bInterfaceSubClass 1 Boot Interface Subclass > bInterfaceProtocol 2 Mouse > iInterface 0 > HID Device Descriptor: > bLength 9 > bDescriptorType 33 > bcdHID 1.00 > bCountryCode 0 Not supported > bNumDescriptors 1 > bDescriptorType 34 Report > wDescriptorLength 52 > Report Descriptors: > ** UNAVAILABLE ** > Endpoint Descriptor: > bLength 7 > bDescriptorType 5 > bEndpointAddress 0x81 EP 1 IN > bmAttributes 3 > Transfer Type Interrupt > Synch Type None > Usage Type Data > wMaxPacketSize 0x0004 1x 4 bytes > bInterval 10 >
On Fri, 6 Jan 2023, Christian Zigotzky wrote: > Hello, > > The reboot issue is still present in the RC2 of kernel 6.2. We still need the > usbhid.patch. [1] > > Please check the bad commit. [2] Ankit, have you tested with all the devices that you added the quirk for in your original patch? Unless I hear otherwise, I will just drop the quirk for USB_DEVICE_ID_CHERRY_MOUSE_000C before this gets clarified. Thanks,
On 06 January 2023 at 03:41 pm, Jiri Kosina wrote: > On Fri, 6 Jan 2023, Christian Zigotzky wrote: > >> Hello, >> >> The reboot issue is still present in the RC2 of kernel 6.2. We still need the >> usbhid.patch. [1] >> >> Please check the bad commit. [2] > Ankit, > > have you tested with all the devices that you added the quirk for in your > original patch? > > Unless I hear otherwise, I will just drop > the quirk for USB_DEVICE_ID_CHERRY_MOUSE_000C before this gets clarified. > > Thanks, > The issue also affects the RC4. -- Christian
On Tue, 17 Jan 2023, Christian Zigotzky wrote: > >> The reboot issue is still present in the RC2 of kernel 6.2. We still need > >> the > >> usbhid.patch. [1] > >> > >> Please check the bad commit. [2] > > Ankit, > > > > have you tested with all the devices that you added the quirk for in your > > original patch? > > > > Unless I hear otherwise, I will just drop > > the quirk for USB_DEVICE_ID_CHERRY_MOUSE_000C before this gets clarified. > > > > Thanks, > > > The issue also affects the RC4. Given the lack of input from Ankit, I have just queued the patch below in for-6.2/upstream-fixes. From: Jiri Kosina <jkosina@suse.cz> Subject: [PATCH] HID: revert CHERRY_MOUSE_000C quirk This partially reverts commit f6d910a89a2391 ("HID: usbhid: Add ALWAYS_POLL quirk for some mice"), as it turns out to break reboot on some platforms for reason yet to be understood. Fixes: f6d910a89a2391 ("HID: usbhid: Add ALWAYS_POLL quirk for some mice") Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz> --- drivers/hid/hid-ids.h | 1 - drivers/hid/hid-quirks.c | 1 - 2 files changed, 2 deletions(-) diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 82713ef3aaa6..c3735848ed5d 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h @@ -274,7 +274,6 @@ #define USB_DEVICE_ID_CH_AXIS_295 0x001c #define USB_VENDOR_ID_CHERRY 0x046a -#define USB_DEVICE_ID_CHERRY_MOUSE_000C 0x000c #define USB_DEVICE_ID_CHERRY_CYMOTION 0x0023 #define USB_DEVICE_ID_CHERRY_CYMOTION_SOLAR 0x0027 diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c index 0e9702c7f7d6..be3ad02573de 100644 --- a/drivers/hid/hid-quirks.c +++ b/drivers/hid/hid-quirks.c @@ -54,7 +54,6 @@ static const struct hid_device_id hid_quirks[] = { { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FLIGHT_SIM_YOKE), HID_QUIRK_NOGET }, { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_PRO_PEDALS), HID_QUIRK_NOGET }, { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_PRO_THROTTLE), HID_QUIRK_NOGET }, - { HID_USB_DEVICE(USB_VENDOR_ID_CHERRY, USB_DEVICE_ID_CHERRY_MOUSE_000C), HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, USB_DEVICE_ID_CORSAIR_K65RGB), HID_QUIRK_NO_INIT_REPORTS }, { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, USB_DEVICE_ID_CORSAIR_K65RGB_RAPIDFIRE), HID_QUIRK_NO_INIT_REPORTS | HID_QUIRK_ALWAYS_POLL }, { HID_USB_DEVICE(USB_VENDOR_ID_CORSAIR, USB_DEVICE_ID_CORSAIR_K70RGB), HID_QUIRK_NO_INIT_REPORTS },
diff -rupN a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h --- a/drivers/hid/hid-ids.h 2022-12-22 10:24:06.842881276 +0100 +++ b/drivers/hid/hid-ids.h 2022-12-22 10:23:35.903328869 +0100 @@ -274,7 +274,6 @@ #define USB_DEVICE_ID_CH_AXIS_295 0x001c #define USB_VENDOR_ID_CHERRY 0x046a -#define USB_DEVICE_ID_CHERRY_MOUSE_000C 0x000c #define USB_DEVICE_ID_CHERRY_CYMOTION 0x0023 #define USB_DEVICE_ID_CHERRY_CYMOTION_SOLAR 0x0027 @@ -919,7 +918,6 @@ #define USB_DEVICE_ID_MS_XBOX_ONE_S_CONTROLLER 0x02fd #define USB_DEVICE_ID_MS_PIXART_MOUSE 0x00cb #define USB_DEVICE_ID_8BITDO_SN30_PRO_PLUS 0x02e0 -#define USB_DEVICE_ID_MS_MOUSE_0783 0x0783 #define USB_VENDOR_ID_MOJO 0x8282 #define USB_DEVICE_ID_RETRO_ADAPTER 0x3201 @@ -1388,7 +1386,6 @@ #define USB_VENDOR_ID_PRIMAX 0x0461 #define USB_DEVICE_ID_PRIMAX_MOUSE_4D22 0x4d22 -#define USB_DEVICE_ID_PRIMAX_MOUSE_4E2A 0x4e2a #define USB_DEVICE_ID_PRIMAX_KEYBOARD 0x4e05 #define USB_DEVICE_ID_PRIMAX_REZEL 0x4e72 #define USB_DEVICE_ID_PRIMAX_PIXART_MOUSE_4D0F 0x4d0f diff -rupN a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c --- a/drivers/hid/hid-quirks.c 2022-12-22 10:24:06.844881247 +0100 +++ b/drivers/hid/hid-quirks.c 2022-12-22 10:23:35.904328855 +0100 @@ -54,7 +54,6 @@ static const struct hid_device_id hid_qu { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_FLIGHT_SIM_YOKE), HID_QUIRK_NOGET }, { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_PRO_PEDALS), HID_QUIRK_NOGET }, { HID_USB_DEVICE(USB_VENDOR_ID_CH, USB_DEVICE_ID_CH_PRO_THROTTLE), HID_QUIRK_NOGET }, - { HID_USB_DEVICE(USB_VENDOR_ID_CHERRY,