Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ea5301aa authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'fixes-for-v3.9-rc2' of...

Merge tag 'fixes-for-v3.9-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-linus

Felipe writes:

"usb: fixes for v3.9-rc2

A few drivers got their gadget->dev registration problems
exposed by the removal of ->start()/->stop() functions from
udc-core.c. All of such instances are now fixed.

We're also fixing chipidea's mistake of registering private
debugging sysfs files under the gadget's device. This is
in preparation to complete removal of gadget->dev handling
from all UDC drivers which will happen for v3.10 merge window.

MUSB's Kconfig got a fix to avoid a non-buildable selection
of its Kconfig choices.

Some extra devm_ioremap_resource() are added here because they
missed the merge window.

Finally, we have a temporary fix linking function drivers
before gadget drivers so they work fine when they're statically
linked to the kernel. We've done it so since the real fix wouldn't
fit the -rc cycle."
parents 6dbe51c2 29240e23
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1767,7 +1767,7 @@ static int udc_start(struct ci13xxx *ci)
		goto put_transceiver;
	}

	retval = dbg_create_files(&ci->gadget.dev);
	retval = dbg_create_files(ci->dev);
	if (retval)
		goto unreg_device;

@@ -1796,7 +1796,7 @@ static int udc_start(struct ci13xxx *ci)

	dev_err(dev, "error = %i\n", retval);
remove_dbg:
	dbg_remove_files(&ci->gadget.dev);
	dbg_remove_files(ci->dev);
unreg_device:
	device_unregister(&ci->gadget.dev);
put_transceiver:
@@ -1836,7 +1836,7 @@ static void udc_stop(struct ci13xxx *ci)
		if (ci->global_phy)
			usb_put_phy(ci->transceiver);
	}
	dbg_remove_files(&ci->gadget.dev);
	dbg_remove_files(ci->dev);
	device_unregister(&ci->gadget.dev);
	/* my kobject is dynamic, I swear! */
	memset(&ci->gadget, 0, sizeof(ci->gadget));
+1 −0
Original line number Diff line number Diff line
@@ -583,6 +583,7 @@ static int dwc3_remove(struct platform_device *pdev)
		break;
	}

	dwc3_free_event_buffers(dwc);
	dwc3_core_exit(dwc);

	return 0;
+0 −2
Original line number Diff line number Diff line
@@ -23,8 +23,6 @@
#include <linux/usb/nop-usb-xceiv.h>
#include <linux/of.h>

#include "core.h"

struct dwc3_exynos {
	struct platform_device	*dwc3;
	struct platform_device	*usb2_phy;
+3 −5
Original line number Diff line number Diff line
@@ -54,8 +54,6 @@
#include <linux/usb/otg.h>
#include <linux/usb/nop-usb-xceiv.h>

#include "core.h"

/*
 * All these registers belong to OMAP's Wrapper around the
 * DesignWare USB3 Core.
@@ -465,20 +463,20 @@ static int dwc3_omap_remove(struct platform_device *pdev)
	return 0;
}

static const struct of_device_id of_dwc3_matach[] = {
static const struct of_device_id of_dwc3_match[] = {
	{
		"ti,dwc3",
	},
	{ },
};
MODULE_DEVICE_TABLE(of, of_dwc3_matach);
MODULE_DEVICE_TABLE(of, of_dwc3_match);

static struct platform_driver dwc3_omap_driver = {
	.probe		= dwc3_omap_probe,
	.remove		= dwc3_omap_remove,
	.driver		= {
		.name	= "omap-dwc3",
		.of_match_table	= of_dwc3_matach,
		.of_match_table	= of_dwc3_match,
	},
};

+0 −2
Original line number Diff line number Diff line
@@ -45,8 +45,6 @@
#include <linux/usb/otg.h>
#include <linux/usb/nop-usb-xceiv.h>

#include "core.h"

/* FIXME define these in <linux/pci_ids.h> */
#define PCI_VENDOR_ID_SYNOPSYS		0x16c3
#define PCI_DEVICE_ID_SYNOPSYS_HAPSUSB3	0xabcd
Loading