[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20131203081556.GA26423@xps8300>
Date: Tue, 3 Dec 2013 10:15:56 +0200
From: Heikki Krogerus <heikki.krogerus@...ux.intel.com>
To: Chris Ruehl <chris.ruehl@...ys.com.hk>
Cc: balbi@...com, gregkh@...uxfoundation.org,
linux-usb@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/3] usb: phy-generic: Add ULPI VBUS support
On Mon, Dec 02, 2013 at 03:05:19PM +0800, Chris Ruehl wrote:
> @@ -154,6 +164,27 @@ int usb_phy_gen_create_phy(struct device *dev, struct usb_phy_gen_xceiv *nop,
> {
> int err;
>
> + if (nop->ulpi_vbus > 0) {
> + unsigned int flags = 0;
> +
> + if (nop->ulpi_vbus & 0x1)
> + flags |= ULPI_OTG_DRVVBUS;
> + if (nop->ulpi_vbus & 0x2)
> + flags |= ULPI_OTG_DRVVBUS_EXT;
> + if (nop->ulpi_vbus & 0x4)
> + flags |= ULPI_OTG_EXTVBUSIND;
> + if (nop->ulpi_vbus & 0x8)
> + flags |= ULPI_OTG_CHRGVBUS;
> +
> + nop->ulpi = otg_ulpi_create(&ulpi_viewport_access_ops, flags);
> + if (!nop->ulpi) {
> + dev_err(dev, "Failed create ULPI Phy\n");
> + return -ENOMEM;
> + }
> + dev_dbg(dev, "Create ULPI Phy\n");
> + nop->ulpi->io_priv = nop->viewport;
> + }
This is so wrong. You are registering one kind of usb phy driver from
an other. Change drivers/usb/phy/ulpi.c to be a platform device. The
whole flag system in it is pretty horrid. While you are at it, change
that so it sets the values based on boolean flags from OF properties
or platform data.
NAK for the whole set.
--
heikki
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists