mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Kishon Vijay Abraham I <kishon@ti.com>
To: Manu Gautam <mgautam@codeaurora.org>
Cc: <linux-arm-msm@vger.kernel.org>, <linux-usb@vger.kernel.org>,
	"open list:GENERIC PHY FRAMEWORK" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 14/16] phy: Add notify_speed callback
Date: Thu, 28 Dec 2017 16:34:11 +0530	[thread overview]
Message-ID: <d81501ff-7116-8036-abab-372d4f0bcc60@ti.com> (raw)
In-Reply-To: <5b67c348-4ec9-58ca-05ed-8b93bed77efb@codeaurora.org>

Hi,

On Wednesday 20 December 2017 02:11 PM, Manu Gautam wrote:
> Hi
> 
> 
> On 12/20/2017 12:47 PM, Kishon Vijay Abraham I wrote:
>> Hi,
>>
> [snip]
>>>> Why not use a notification mechanism instead of adding new APIs in phy-core.
>>>> This will only bloat phy-core with APIs for a particular platform.
>>> Do you mean notifier_chains ?
>>> When we have multiple instances of USB PHYs then notifier chains are not
>>> of much help. For any platform glue or PHY driver it will be very difficult to
>>> figure out if notification received for speed was for same phy/bus or a
>>> different one.
>>> Using PHY callbacks looked more elegant to me. Additionally PHY drivers
>>> can also use this info decide power management policy e.g. if speed is
>>> INVALID then it means PHY is not in a session and it can enter deepest
>>> low power state.
>>> Additionally if you prefer set_speed name over notify_speed then I am
>>> ok with that as well so that it sounds more generic.
>> 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.

Thanks
Kishon

  reply	other threads:[~2017-12-28 11:04 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1511256206-1587-1-git-send-email-mgautam@codeaurora.org>
2017-11-21  9:23 ` [PATCH v3 01/16] phy: qcom-qmp: Fix phy pipe clock gating Manu Gautam
2017-11-21  9:23 ` [PATCH v3 02/16] phy: qcom-qmp: Adapt to clk_bulk_* APIs Manu Gautam
2017-12-20  2:37   ` Vivek Gautam
2017-12-20  5:03     ` Manu Gautam
2017-11-21  9:23 ` [PATCH v3 03/16] phy: qcom-qmp: Power-on PHY before initialization Manu Gautam
2017-11-22 18:03   ` Stephen Boyd
2017-11-23  3:59     ` Manu Gautam
2017-11-21  9:23 ` [PATCH v3 04/16] phy: qcom-qusb2: " Manu Gautam
2017-11-21  9:23 ` [PATCH v3 05/16] phy: qcom-qmp: Fix PHY block reset sequence Manu Gautam
2017-11-21  9:23 ` [PATCH v3 06/16] phy: qcom-qmp: Move SERDES/PCS START after PHY reset Manu Gautam
2017-11-21  9:23 ` [PATCH v3 07/16] phy: qcom-qusb2: Add support for different register layouts Manu Gautam
2017-12-05 10:23   ` Vivek Gautam
2017-12-12  8:51     ` Manu Gautam
2017-11-21  9:23 ` [PATCH v3 08/16] dt-bindings: phy-qcom-qusb2: Update binding for QUSB2 V2 version Manu Gautam
2017-11-21  9:23 ` [PATCH v3 09/16] phy: qcom-qusb2: Add support " Manu Gautam
2017-11-21  9:23 ` [PATCH v3 10/16] phy: qcom-qmp: Move register offsets to header file Manu Gautam
2017-11-22 17:26   ` Stephen Boyd
2017-11-23  4:02     ` Manu Gautam
2017-11-21  9:23 ` [PATCH v3 11/16] phy: qcom-qmp: Add register offsets for QMP V3 PHY Manu Gautam
2017-11-21  9:23 ` [PATCH v3 12/16] dt-bindings: phy-qcom-qmp: Update bindings for QMP V3 USB PHY Manu Gautam
2017-11-21  9:23 ` [PATCH v3 13/16] phy: qcom-qmp: Add support for QMP V3 USB3 PHY Manu Gautam
2017-11-21  9:23 ` [PATCH v3 14/16] phy: Add notify_speed callback Manu Gautam
2017-12-12 11:43   ` Kishon Vijay Abraham I
2017-12-12 15:24     ` Manu Gautam
2017-12-20  5:49       ` Kishon Vijay Abraham I
2017-12-20  6:29         ` Manu Gautam
2017-12-20  7:17           ` Kishon Vijay Abraham I
2017-12-20  8:41             ` Manu Gautam
2017-12-28 11:04               ` Kishon Vijay Abraham I [this message]
2017-12-29  4:24                 ` Manu Gautam
2017-12-29  6:28                   ` Kishon Vijay Abraham I
2018-01-02  5:42                     ` Manu Gautam
2017-11-21  9:23 ` [PATCH v3 15/16] phy: qcom-qusb2: Add support for runtime PM Manu Gautam
2017-11-21  9:23 ` [PATCH v3 16/16] phy: qcom-qmp: " Manu Gautam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d81501ff-7116-8036-abab-372d4f0bcc60@ti.com \
    --to=kishon@ti.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mgautam@codeaurora.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®