diff options
Diffstat (limited to 'meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0025-nop-usb-xceiv-behave-when-linked-as-a-module.patch')
-rw-r--r-- | meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0025-nop-usb-xceiv-behave-when-linked-as-a-module.patch | 90 |
1 files changed, 0 insertions, 90 deletions
diff --git a/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0025-nop-usb-xceiv-behave-when-linked-as-a-module.patch b/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0025-nop-usb-xceiv-behave-when-linked-as-a-module.patch deleted file mode 100644 index 21fe7bea1..000000000 --- a/meta/recipes-kernel/linux/linux-omap-2.6.29/musb/0025-nop-usb-xceiv-behave-when-linked-as-a-module.patch +++ /dev/null @@ -1,90 +0,0 @@ -From ae4f027580168814f734cf3c41a662a7f10c744c Mon Sep 17 00:00:00 2001 -From: David Brownell <dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org> -Date: Tue, 31 Mar 2009 12:28:31 -0700 -Subject: [PATCH] nop-usb-xceiv: behave when linked as a module - -The NOP OTG transceiver driver needs to be usable from modules. -Make sure its symbols are always accessible at both compile and -link time, and make sure the device instance is allocated from -the heap so that device lifetime rules are obeyed. - -Signed-off-by: David Brownell <dbrownell-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org> ---- - drivers/usb/otg/nop-usb-xceiv.c | 25 ++++++++++--------------- - include/linux/usb/otg.h | 4 ++-- - 2 files changed, 12 insertions(+), 17 deletions(-) - -diff --git a/drivers/usb/otg/nop-usb-xceiv.c b/drivers/usb/otg/nop-usb-xceiv.c -index 4b933f6..9ed5ea5 100644 ---- a/drivers/usb/otg/nop-usb-xceiv.c -+++ b/drivers/usb/otg/nop-usb-xceiv.c -@@ -22,8 +22,8 @@ - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * Current status: -- * this is to add "nop" transceiver for all those phy which is -- * autonomous such as isp1504 etc. -+ * This provides a "nop" transceiver for PHYs which are -+ * autonomous such as isp1504, isp1707, etc. - */ - - #include <linux/module.h> -@@ -36,30 +36,25 @@ struct nop_usb_xceiv { - struct device *dev; - }; - --static u64 nop_xceiv_dmamask = DMA_32BIT_MASK; -- --static struct platform_device nop_xceiv_device = { -- .name = "nop_usb_xceiv", -- .id = -1, -- .dev = { -- .dma_mask = &nop_xceiv_dmamask, -- .coherent_dma_mask = DMA_32BIT_MASK, -- .platform_data = NULL, -- }, --}; -+static struct platform_device *pd; - - void usb_nop_xceiv_register(void) - { -- if (platform_device_register(&nop_xceiv_device) < 0) { -+ if (pd) -+ return; -+ pd = platform_device_register_simple("nop_usb_xceiv", -1, NULL, 0); -+ if (!pd) { - printk(KERN_ERR "Unable to register usb nop transceiver\n"); - return; - } - } -+EXPORT_SYMBOL(usb_nop_xceiv_register); - - void usb_nop_xceiv_unregister(void) - { -- platform_device_unregister(&nop_xceiv_device); -+ platform_device_unregister(pd); - } -+EXPORT_SYMBOL(usb_nop_xceiv_unregister); - - static inline struct nop_usb_xceiv *xceiv_to_nop(struct otg_transceiver *x) - { -diff --git a/include/linux/usb/otg.h b/include/linux/usb/otg.h -index 54f2424..7df8bae 100644 ---- a/include/linux/usb/otg.h -+++ b/include/linux/usb/otg.h -@@ -80,10 +80,10 @@ struct otg_transceiver { - - /* for board-specific init logic */ - extern int otg_set_transceiver(struct otg_transceiver *); --#ifdef CONFIG_NOP_USB_XCEIV -+ -+/* sometimes transceivers are accessed only through e.g. ULPI */ - extern void usb_nop_xceiv_register(void); - extern void usb_nop_xceiv_unregister(void); --#endif - - - /* for usb host and peripheral controller drivers */ --- -1.6.0.4 - |