Re: [PATCH 1/3] xhci: Allow more than 32 quirks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 17/05/18 14:28, Greg KH wrote:
> On Thu, May 17, 2018 at 01:58:34PM +0100, Marc Zyngier wrote:
>> We now have 32 different quirks, and the field that holds them
>> is full. Let's bump it up to the next stage so that we can handle
>> some more... The type is now an unsigned long long, which is 64bit
>> on most architectures.
>>
>> Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
>> ---
>>  drivers/usb/host/xhci.c | 6 +++---
>>  drivers/usb/host/xhci.h | 2 +-
>>  2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
>> index 711da3306b14..8dba26d3de07 100644
>> --- a/drivers/usb/host/xhci.c
>> +++ b/drivers/usb/host/xhci.c
>> @@ -33,8 +33,8 @@ static int link_quirk;
>>  module_param(link_quirk, int, S_IRUGO | S_IWUSR);
>>  MODULE_PARM_DESC(link_quirk, "Don't clear the chain bit on a link TRB");
>>  
>> -static unsigned int quirks;
>> -module_param(quirks, uint, S_IRUGO);
>> +static unsigned long long quirks;
>> +module_param(quirks, ullong, S_IRUGO);
>>  MODULE_PARM_DESC(quirks, "Bit flags for quirks to be enabled as default");
>>  
>>  /* TODO: copied from ehci-hcd.c - can this be refactored? */
>> @@ -4963,7 +4963,7 @@ int xhci_gen_setup(struct usb_hcd *hcd, xhci_get_quirks_t get_quirks)
>>  		return retval;
>>  	xhci_dbg(xhci, "Called HCD init\n");
>>  
>> -	xhci_info(xhci, "hcc params 0x%08x hci version 0x%x quirks 0x%08x\n",
>> +	xhci_info(xhci, "hcc params 0x%08x hci version 0x%x quirks 0x%016llx\n",
>>  		  xhci->hcc_params, xhci->hci_version, xhci->quirks);
>>  
>>  	return 0;
>> diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
>> index 6dfc4867dbcf..42848dfc3445 100644
>> --- a/drivers/usb/host/xhci.h
>> +++ b/drivers/usb/host/xhci.h
>> @@ -1787,7 +1787,7 @@ struct xhci_hcd {
>>  #define XHCI_STATE_DYING	(1 << 0)
>>  #define XHCI_STATE_HALTED	(1 << 1)
>>  #define XHCI_STATE_REMOVING	(1 << 2)
>> -	unsigned int		quirks;
>> +	unsigned long long	quirks;
> 
> u64?

Sure. That's just slightly odd with the "unsigned long long" imposed by
the module_param above.

> 
>>  #define	XHCI_LINK_TRB_QUIRK	(1 << 0)
>>  #define XHCI_RESET_EP_QUIRK	(1 << 1)
>>  #define XHCI_NEC_HOST		(1 << 2)
> 
> And these all can use BIT(), right?
If you're happy with the churn, I'll repaint them.

Thanks,

	M.
-- 
Jazz is not dead. It just smells funny...
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux