diff options
| author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-04-05 15:18:00 -0700 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-04-05 15:18:00 -0700 | 
| commit | 64dc9e2e7320f079b97c46b106133b58b8e18d40 (patch) | |
| tree | ab010dc1337d44e29c2b32b7f11788620a91fe4f /drivers/usb/musb/musb_dsps.c | |
| parent | 01a60e76b6392547ad3dca3ac05b9c886fa5da45 (diff) | |
| parent | 9b192de60b5a584ee4ed967fb6758773c75e4643 (diff) | |
| download | olio-linux-3.10-64dc9e2e7320f079b97c46b106133b58b8e18d40.tar.xz olio-linux-3.10-64dc9e2e7320f079b97c46b106133b58b8e18d40.zip  | |
Merge tag 'usb-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next
Felipe writes:
usb: patches for v3.10 merge window
Here is the big Gadget & PHY pull request. Many of us have
been really busy lately getting multiple drivers to a better
position.
Since this pull request is so large, I will divide it in sections
so it's easier to grasp what's included.
- cleanups:
	. UDC drivers no longer touch gadget->dev, that's now udc-core
		responsibility
	. Many more UDC drivers converted to usb_gadget_map/unmap_request()
	. UDC drivers no longer initialize DMA-related fields from gadget's
		device structure
	. UDC drivers don't touch gadget.dev.driver directly
	. UDC drivers don't assign gadget.dev.release directly
	. Removal of some unused DMA_ADDR_INVALID
	. Introduction of CONFIG_USB_PHY
	. All phy drivers have been moved to drivers/usb/phy and renamed to
		a common naming scheme
	. Fix PHY layer so it never returns a NULL pointer, also fix all
		callers to avoid using IS_ERR_OR_NULL()
	. Sparse fixes all over the place
	. drivers/usb/otg/ has been deleted
	. Marvel drivers (mv_udc, ehci-mv, mv_otg and mv_u3d) improved clock
		usage
- new features:
	. UDC core now provides a generic way for tracking and reporting
		UDC's state (not attached, resuming, suspended, addressed,
		default, etc)
	. twl4030-usb learned that it shouldn't be enabled during init
	. Full DT support for DWC3 has been implemented
	. ab8500-usb learned about pinctrl framework
	. nop PHY learned about DeviceTree and regulators
	. DWC3 learned about suspend/resume
	. DWC3 can now be compiled in host-only and gadget-only (as well as
		DRD) configurations
	. UVC now enables streaming endpoint based on negotiated speed
	. isp1301 now implements the PHY API properly
	. configfs-based interface for gadget drivers which will lead to
		the removal of all code which just combines functions together
		to build functional gadget drivers.
	. f_serial and f_obex were converted to new configfs interface while
		maintaining old interface around.
- non-critical fixes:
	. UVC gadget driver got fixes for Endpoint usage and stream calculation
	. ab8500-usb fixed unbalanced clock and regulator API usage
	. twl4030-usb got a fix for when OMAP3 is booted with cable connected
	. fusb300_udc got a fix for DMA usage
	. UVC got fixes for two assertions of the USB Video Class Compliance
		specification revision 1.1
	. build warning issues caused by recent addition of __must_check to
		regulator API
These are all changes which deserve a mention, all other changes are related
to these one or minor spelling fixes and other similar tasks.
Signed-of-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/musb/musb_dsps.c')
| -rw-r--r-- | drivers/usb/musb/musb_dsps.c | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c index 6bb89715b63..3a18e44e939 100644 --- a/drivers/usb/musb/musb_dsps.c +++ b/drivers/usb/musb/musb_dsps.c @@ -38,6 +38,7 @@  #include <linux/module.h>  #include <linux/usb/nop-usb-xceiv.h>  #include <linux/platform_data/usb-omap.h> +#include <linux/sizes.h>  #include <linux/of.h>  #include <linux/of_device.h> @@ -224,7 +225,7 @@ static void otg_timer(unsigned long _musb)  	 */  	devctl = dsps_readb(mregs, MUSB_DEVCTL);  	dev_dbg(musb->controller, "Poll devctl %02x (%s)\n", devctl, -				otg_state_string(musb->xceiv->state)); +				usb_otg_state_string(musb->xceiv->state));  	spin_lock_irqsave(&musb->lock, flags);  	switch (musb->xceiv->state) { @@ -273,7 +274,7 @@ static void dsps_musb_try_idle(struct musb *musb, unsigned long timeout)  	if (musb->is_active || (musb->a_wait_bcon == 0 &&  				musb->xceiv->state == OTG_STATE_A_WAIT_BCON)) {  		dev_dbg(musb->controller, "%s active, deleting timer\n", -				otg_state_string(musb->xceiv->state)); +				usb_otg_state_string(musb->xceiv->state));  		del_timer(&glue->timer[pdev->id]);  		glue->last_timer[pdev->id] = jiffies;  		return; @@ -288,7 +289,7 @@ static void dsps_musb_try_idle(struct musb *musb, unsigned long timeout)  	glue->last_timer[pdev->id] = timeout;  	dev_dbg(musb->controller, "%s inactive, starting idle timer for %u ms\n", -		otg_state_string(musb->xceiv->state), +		usb_otg_state_string(musb->xceiv->state),  			jiffies_to_msecs(timeout - jiffies));  	mod_timer(&glue->timer[pdev->id], timeout);  } @@ -334,7 +335,7 @@ static irqreturn_t dsps_interrupt(int irq, void *hci)  	 * value but DEVCTL.BDEVICE is invalid without DEVCTL.SESSION set.  	 * Also, DRVVBUS pulses for SRP (but not at 5V) ...  	 */ -	if (usbintr & MUSB_INTR_BABBLE) +	if (is_host_active(musb) && usbintr & MUSB_INTR_BABBLE)  		pr_info("CAUTION: musb: Babble Interrupt Occurred\n");  	if (usbintr & ((1 << wrp->drvvbus) << wrp->usb_shift)) { @@ -377,7 +378,7 @@ static irqreturn_t dsps_interrupt(int irq, void *hci)  		/* NOTE: this must complete power-on within 100 ms. */  		dev_dbg(musb->controller, "VBUS %s (%s)%s, devctl %02x\n",  				drvvbus ? "on" : "off", -				otg_state_string(musb->xceiv->state), +				usb_otg_state_string(musb->xceiv->state),  				err ? " ERROR" : "",  				devctl);  		ret = IRQ_HANDLED; @@ -596,14 +597,13 @@ err0:  static int dsps_probe(struct platform_device *pdev)  { -	struct device_node *np = pdev->dev.of_node;  	const struct of_device_id *match;  	const struct dsps_musb_wrapper *wrp;  	struct dsps_glue *glue;  	struct resource *iomem;  	int ret, i; -	match = of_match_node(musb_dsps_of_match, np); +	match = of_match_node(musb_dsps_of_match, pdev->dev.of_node);  	if (!match) {  		dev_err(&pdev->dev, "fail to get matching of_match struct\n");  		ret = -EINVAL;  |