Re: [PATCH 4.12 47/65] usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume

From: Sandeep Singh
Date: Mon Aug 21 2017 - 05:56:04 EST



>>> From: Sandeep Singh <sandeep.singh@xxxxxxx>
>>>
>>> commit e788787ef4f9c24aafefc480a8da5f92b914e5e6 upstream.
>> [...]
>>> --- a/drivers/usb/host/pci-quirks.c
>>> +++ b/drivers/usb/host/pci-quirks.c
>>> @@ -98,6 +98,7 @@ enum amd_chipset_gen {
>>> AMD_CHIPSET_HUDSON2,
>>> AMD_CHIPSET_BOLTON,
>>> AMD_CHIPSET_YANGTZE,
>>> + AMD_CHIPSET_TAISHAN,
>>> AMD_CHIPSET_UNKNOWN,
>>> };
>>>
>>> @@ -141,6 +142,11 @@ static int amd_chipset_sb_type_init(stru
>>> pinfo->sb_type.gen = AMD_CHIPSET_SB700;
>>> else if (rev >= 0x40 && rev <= 0x4f)
>>> pinfo->sb_type.gen = AMD_CHIPSET_SB800;
>>> + }
>>> + pinfo->smbus_dev = pci_get_device(PCI_VENDOR_ID_AMD,
>>> + 0x145c, NULL);
>>> + if (pinfo->smbus_dev) {
>>> + pinfo->sb_type.gen = AMD_CHIPSET_TAISHAN;
>>> } else {
>>> pinfo->smbus_dev = pci_get_device(PCI_VENDOR_ID_AMD,
>>> PCI_DEVICE_ID_AMD_HUDSON2_SMBUS, NULL);
>> [...]
>>
>> This causes pinfo->smbus_dev to be wrongly set to NULL on systems with
>> the ATI chipset that this function checks for first.
>
> Ugh, for such a "simple" quirk, this has gone through so many different
> iterations, all of which seem broken :(
>
> Sandeep, can you fix this up and send a follow-on patch to us and the
> linux-usb mailing list so we can get it fixed up properly?
>

Greg, :-( We will send follow-on patch shortly.