Re: [PATCH v3 14/16] phy: Add notify_speed callback

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

 



Hi,


On 12/28/2017 4:34 PM, Kishon Vijay Abraham I wrote:
> Hi,
>
[snip]
>
>>> I'd prefer adding modes in enum phy_mode according to speed and using phy_set_mode.
>> yeah, that also seems good idea. How about something like this:
>>
>> --- a/include/linux/phy/phy.h
>> +++ b/include/linux/phy/phy.h
>> @@ -23,12 +23,16 @@
>>  struct phy;
>>  
>>  enum phy_mode {
>> -	PHY_MODE_INVALID,
>> -	PHY_MODE_USB_HOST,
>> -	PHY_MODE_USB_DEVICE,
>> -	PHY_MODE_USB_OTG,
>> -	PHY_MODE_SGMII,
>> -	PHY_MODE_10GKR,
>> +	PHY_MODE_INVALID	= 0,
>> +	PHY_MODE_USB_HOST	= BIT(0),
>> +	PHY_MODE_USB_DEVICE	= BIT(1),
>> +	PHY_MODE_USB_OTG,	= BIT(2),
>> +	PHY_MODE_SGMII		= BIT(3),
>> +	PHY_MODE_10GKR		= BIT(4),
>> +	PHY_MODE_USB_LS		= BIT(5),
>> +	PHY_MODE_USB_FS		= BIT(6),
>> +	PHY_MODE_USB_HS		= BIT(7),
>> +	PHY_MODE_USB_SS		= BIT(8),
>>  };
>>
>>
>> This way I don't need to duplicate USB speed enums for host/device or otg modes.
> no.. let's keep enum. It's lot more cleaner IMO.

In that case all PHY drivers would need to consider these speed enums. E.g.

if (mode == HOST) check in PHY driver would need to be changed to:
if (mode == HOST || mode == HOST_LS || mode == HOST_FS || mode == HOST_HS ||
    mode == HOST_SS

This looks clumsy.
Where as if bits to used then there is no need for such changes.

>
> Thanks
> Kishon
> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project

--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux