Re: [PATCH v2 01/10] usb: phy: Add APIs for runtime power management

From: Felipe Balbi
Date: Mon Mar 04 2013 - 10:29:45 EST


Hi,

On Sat, Mar 02, 2013 at 06:53:02PM +0530, Vivek Gautam wrote:
> Adding APIs to handle runtime power management on PHY
> devices. PHY consumers may need to wake-up/suspend PHYs
> when they work across autosuspend.
>
> Signed-off-by: Vivek Gautam <gautam.vivek@xxxxxxxxxxx>
> ---
> include/linux/usb/phy.h | 26 ++++++++++++++++++++++++++
> 1 files changed, 26 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/usb/phy.h b/include/linux/usb/phy.h
> index 15847cb..0fe7cac 100644
> --- a/include/linux/usb/phy.h
> +++ b/include/linux/usb/phy.h
> @@ -276,4 +276,30 @@ static inline const char *usb_phy_type_string(enum usb_phy_type type)
> return "UNKNOWN PHY TYPE";
> }
> }
> +
> +#define USB_PHY_AUTOPM(function) \
> +static inline int usb_phy_autopm_##function(struct usb_phy *x) \
> +{ \
> + if (!x || !x->dev) { \
> + dev_err(x->dev, "no PHY or attached device available\n"); \
> + return -ENODEV; \
> + } \
> + \
> + pm_runtime_##function(x->dev); \

please make the definitions explicit (not using a macro) and use:

return pm_runtime_foo();

where applicable. We don't want to return 0 if pm_runtime_get_sync()
fails.

--
balbi

Attachment: signature.asc
Description: Digital signature