Re: [PATCH v2 1/4] usb: phy: phy-omap-control: Add API to powerand wakeup

From: Sebastian Andrzej Siewior
Date: Mon Jul 29 2013 - 10:25:25 EST


* George Cherian | 2013-07-19 18:04:34 [+0530]:

>diff --git a/drivers/usb/phy/phy-omap-control.c b/drivers/usb/phy/phy-omap-control.c
>index 1419ced..4f2502c 100644
>--- a/drivers/usb/phy/phy-omap-control.c
>+++ b/drivers/usb/phy/phy-omap-control.c
>@@ -46,6 +46,73 @@ struct device *omap_get_control_dev(void)
> EXPORT_SYMBOL_GPL(omap_get_control_dev);
>
> /**
>+ * omap_control_am335x_phy_wkup - PHY wakeup on/off using control
>+ * module
>+ * @dev: the control module device
>+ * @on: 0 to off and 1 to on PHY wakeup feature
>+ * @id: phy id 0 or 1 for phy instance 0 and 1 repectively
>+ *
>+ * AMXXXX PHY driver should call this API to enable or disable PHY wakeup.
>+ */
>+void omap_control_am335x_phy_wkup(struct device *dev, bool on, u8 id)
>+{
>+ u32 val;
>+ u32 *phy_wkup_reg;
>+ struct omap_control_usb *control_usb = dev_get_drvdata(dev);
>+
>+ if (control_usb->type != OMAP_CTRL_DEV_TYPE3 || id < 0 || id > 1)
>+ return;
>+
>+ phy_wkup_reg = control_usb->dev_conf + AM335X_USB_WKUP_OFFSET;
>+ val = readl(phy_wkup_reg);

Where do you get the memory from? In the DT patches I've made I export
one memory space of 8 bytes for each phy. This memory space applies
directly to the on/off register. I didn't export the register for wakeup
so far since I had no idea how this will be used.
So how do you get your re-mapped memory here?

>+
>+ if (on)
>+ val |= id ? AM335X_USB1_WKUP_CTRL_ENABLE :
>+ AM335X_USB0_WKUP_CTRL_ENABLE;
>+ else
>+ val &= id ? ~AM335X_USB1_WKUP_CTRL_ENABLE :
>+ ~AM335X_USB0_WKUP_CTRL_ENABLE;
>+
>+
>+ writel(val, phy_wkup_reg);
>+}
>+EXPORT_SYMBOL_GPL(omap_control_am335x_phy_wkup);

Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/