[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091012074221.GA19198@elte.hu>
Date: Mon, 12 Oct 2009 09:42:21 +0200
From: Ingo Molnar <mingo@...e.hu>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Greg KH <gregkh@...e.de>, Mike Frysinger <vapier@...too.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: [origin tree build failure] [PATCH] Revert "USB: musb: make
HAVE_CLK support optional"
* Linus Torvalds <torvalds@...ux-foundation.org> wrote:
> As usual, please test this for regressions, both new and old.
> USB: musb: make HAVE_CLK support optional
This USB/Blackfin commit broke the x86 build with these config options:
CONFIG_USB_MUSB_HDRC=y
CONFIG_USB_MUSB_HOST=y
# CONFIG_USB_MUSB_PERIPHERAL is not set
# CONFIG_USB_MUSB_OTG is not set
# CONFIG_USB_GADGET_MUSB_HDRC is not set
CONFIG_USB_MUSB_HDRC_HCD=y
CONFIG_MUSB_PIO_ONLY=y
CONFIG_USB_MUSB_DEBUG=y
Because a side-effect of the patch was that it enabled the driver on x86
too which doesnt have HAVE_CLK. So this formerly embedded-only driver
got exposed on the more widely tested x86 platform.
The changelog does not mention this side-effect so i suspect it was
unintended - so below is the revert of the commit.
Ingo
-------------------->
>From 64f59376a1259cbce3da07f7e7d4c9d5830b68e4 Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo@...e.hu>
Date: Mon, 12 Oct 2009 09:31:32 +0200
Subject: [PATCH] Revert "USB: musb: make HAVE_CLK support optional"
This reverts commit b20cf90650badaa5e6ec1bdbe61a63528818e8ce.
It breaks the x86 build:
drivers/built-in.o: In function `musb_stop':
(.text+0x417427): undefined reference to `musb_platform_disable'
drivers/built-in.o: In function `musb_shutdown':
musb_core.c:(.text+0x4174c6): undefined reference to `musb_platform_disable'
drivers/built-in.o: In function `musb_mode_store':
musb_core.c:(.text+0x417729): undefined reference to `musb_platform_set_mode'
drivers/built-in.o: In function `musb_free':
musb_core.c:(.text+0x4177cc): undefined reference to `dma_controller_destroy'
musb_core.c:(.text+0x4177e0): undefined reference to `musb_platform_exit'
drivers/built-in.o: In function `musb_start':
(.text+0x418097): undefined reference to `musb_platform_enable'
drivers/built-in.o: In function `musb_probe':
musb_core.c:(.init.text+0x18db5): undefined reference to `musb_platform_init'
musb_core.c:(.init.text+0x18df3): undefined reference to `dma_controller_create'
musb_core.c:(.init.text+0x18e21): undefined reference to `musb_platform_disable'
musb_core.c:(.init.text+0x1970c): undefined reference to `musb_platform_exit'
make: *** [.tmp_vmlinux1] Error 1
Signed-off-by: Ingo Molnar <mingo@...e.hu>
---
drivers/usb/musb/Kconfig | 2 +-
drivers/usb/musb/blackfin.c | 1 +
drivers/usb/musb/musb_core.h | 7 -------
drivers/usb/musb/musb_regs.h | 9 +++++++++
4 files changed, 11 insertions(+), 8 deletions(-)
diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig
index 760e727..803adcb 100644
--- a/drivers/usb/musb/Kconfig
+++ b/drivers/usb/musb/Kconfig
@@ -8,7 +8,7 @@ comment "Enable Host or Gadget support to see Inventra options"
# (M)HDRC = (Multipoint) Highspeed Dual-Role Controller
config USB_MUSB_HDRC
- depends on (USB || USB_GADGET)
+ depends on (USB || USB_GADGET) && HAVE_CLK
depends on !SUPERH
select NOP_USB_XCEIV if ARCH_DAVINCI
select TWL4030_USB if MACH_OMAP_3430SDP
diff --git a/drivers/usb/musb/blackfin.c b/drivers/usb/musb/blackfin.c
index fcec87e..f2f66eb 100644
--- a/drivers/usb/musb/blackfin.c
+++ b/drivers/usb/musb/blackfin.c
@@ -14,6 +14,7 @@
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/list.h>
+#include <linux/clk.h>
#include <linux/gpio.h>
#include <linux/io.h>
diff --git a/drivers/usb/musb/musb_core.h b/drivers/usb/musb/musb_core.h
index 6aa5f22..381d648 100644
--- a/drivers/usb/musb/musb_core.h
+++ b/drivers/usb/musb/musb_core.h
@@ -95,13 +95,6 @@ struct musb_ep;
#endif
#endif /* need MUSB gadget selection */
-#ifndef CONFIG_HAVE_CLK
-/* Dummy stub for clk framework */
-#define clk_get(dev, id) NULL
-#define clk_put(clock) do {} while (0)
-#define clk_enable(clock) do {} while (0)
-#define clk_disable(clock) do {} while (0)
-#endif
#ifdef CONFIG_PROC_FS
#include <linux/fs.h>
diff --git a/drivers/usb/musb/musb_regs.h b/drivers/usb/musb/musb_regs.h
index cc1d71b..fbfd3fd 100644
--- a/drivers/usb/musb/musb_regs.h
+++ b/drivers/usb/musb/musb_regs.h
@@ -439,6 +439,15 @@ static inline void musb_write_txhubport(void __iomem *mbase, u8 epnum,
/* Not implemented - HW has seperate Tx/Rx FIFO */
#define MUSB_TXCSR_MODE 0x0000
+/*
+ * Dummy stub for clk framework, it will be removed
+ * until Blackfin supports clk framework
+ */
+#define clk_get(dev, id) NULL
+#define clk_put(clock) do {} while (0)
+#define clk_enable(clock) do {} while (0)
+#define clk_disable(clock) do {} while (0)
+
static inline void musb_write_txfifosz(void __iomem *mbase, u8 c_size)
{
}
--
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