Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755014AbdL2EYe (ORCPT ); Thu, 28 Dec 2017 23:24:34 -0500 Received: from smtp.codeaurora.org ([198.145.29.96]:59806 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753861AbdL2EYc (ORCPT ); Thu, 28 Dec 2017 23:24:32 -0500 DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org CB6CC60274 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=mgautam@codeaurora.org Subject: Re: [PATCH v3 14/16] phy: Add notify_speed callback To: Kishon Vijay Abraham I Cc: linux-arm-msm@vger.kernel.org, linux-usb@vger.kernel.org, "open list:GENERIC PHY FRAMEWORK" References: <1511256206-1587-1-git-send-email-mgautam@codeaurora.org> <1511256206-1587-15-git-send-email-mgautam@codeaurora.org> <082d2ca8-21dc-878f-c668-a76872a7ea92@ti.com> <5b67c348-4ec9-58ca-05ed-8b93bed77efb@codeaurora.org> From: Manu Gautam Message-ID: Date: Fri, 29 Dec 2017 09:54:28 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Content-Language: en-US Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1642 Lines: 59 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@vger.kernel.org > 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