Second attempt to fix FTBFS on various architectures

[alpha] Do not use -Werror for arch/alpha
[arm/ixp4xx] Rename FREQ macro to avoid collisions (v2)
drm/nouveau: Only select ACPI_VIDEO if its dependencies are met
[mips] Change mips_sc_is_activated() to do what the comment says

svn path=/dists/trunk/linux-2.6/; revision=16695
This commit is contained in:
Ben Hutchings 2010-12-11 06:40:13 +00:00
parent e7880b2693
commit d9dae15123
6 changed files with 285 additions and 0 deletions

10
debian/changelog vendored
View File

@ -1,3 +1,13 @@
linux-2.6 (2.6.37~rc5-1~experimental.2) UNRELEASED; urgency=low
* Second attempt to fix FTBFS on various architectures:
- [alpha] Do not use -Werror for arch/alpha
- [arm/ixp4xx] Rename FREQ macro to avoid collisions (v2)
- drm/nouveau: Only select ACPI_VIDEO if its dependencies are met
- [mips] Change mips_sc_is_activated() to do what the comment says
-- Ben Hutchings <ben@decadent.org.uk> Sat, 11 Dec 2010 06:27:51 +0000
linux-2.6 (2.6.37~rc5-1~experimental.1) experimental; urgency=low
* New upstream release candidate

View File

@ -0,0 +1,71 @@
From 778b1b6b848d046ac1566b36c8b39c4cda9f8c35 Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sat, 11 Dec 2010 06:13:45 +0000
Subject: [PATCH 3/4] drm/nouveau: Only select ACPI_VIDEO if its dependencies are met
CONFIG_ACPI_VIDEO depends on more than just CONFIG_ACPI, so add those
dependencies to the Kconfig select condition and make the code
conditional on CONFIG_ACPI_VIDEO.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
drivers/gpu/drm/nouveau/Kconfig | 2 +-
drivers/gpu/drm/nouveau/Makefile | 2 +-
drivers/gpu/drm/nouveau/nouveau_backlight.c | 2 +-
drivers/gpu/drm/nouveau/nouveau_drv.h | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index 72730e9..21d6c29 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -10,7 +10,7 @@ config DRM_NOUVEAU
select FB
select FRAMEBUFFER_CONSOLE if !EMBEDDED
select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
- select ACPI_VIDEO if ACPI
+ select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL && INPUT
help
Choose this option for open-source nVidia support.
diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
index 23fa82d..101a0f6 100644
--- a/drivers/gpu/drm/nouveau/Makefile
+++ b/drivers/gpu/drm/nouveau/Makefile
@@ -30,6 +30,6 @@ nouveau-y := nouveau_drv.o nouveau_state.o nouveau_channel.o nouveau_mem.o \
nouveau-$(CONFIG_DRM_NOUVEAU_DEBUG) += nouveau_debugfs.o
nouveau-$(CONFIG_COMPAT) += nouveau_ioc32.o
nouveau-$(CONFIG_DRM_NOUVEAU_BACKLIGHT) += nouveau_backlight.o
-nouveau-$(CONFIG_ACPI) += nouveau_acpi.o
+nouveau-$(CONFIG_ACPI_VIDEO) += nouveau_acpi.o
obj-$(CONFIG_DRM_NOUVEAU)+= nouveau.o
diff --git a/drivers/gpu/drm/nouveau/nouveau_backlight.c b/drivers/gpu/drm/nouveau/nouveau_backlight.c
index b14c811..6f3f463 100644
--- a/drivers/gpu/drm/nouveau/nouveau_backlight.c
+++ b/drivers/gpu/drm/nouveau/nouveau_backlight.c
@@ -137,7 +137,7 @@ int nouveau_backlight_init(struct drm_device *dev)
{
struct drm_nouveau_private *dev_priv = dev->dev_private;
-#ifdef CONFIG_ACPI
+#ifdef CONFIG_ACPI_VIDEO
if (acpi_video_backlight_support()) {
NV_INFO(dev, "ACPI backlight interface available, "
"not registering our own\n");
diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
index 1c7db64..a18d0ed 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drv.h
+++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
@@ -894,7 +894,7 @@ extern int nouveau_dma_wait(struct nouveau_channel *, int slots, int size);
/* nouveau_acpi.c */
#define ROM_BIOS_PAGE 4096
-#if defined(CONFIG_ACPI)
+#if defined(CONFIG_ACPI_VIDEO)
void nouveau_register_dsm_handler(void);
void nouveau_unregister_dsm_handler(void);
int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len);
--
1.7.2.3

View File

@ -0,0 +1,72 @@
From 991f3c04fdbd9084935be1e16aef55f610f35b0c Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Fri, 10 Dec 2010 02:45:03 +0000
Subject: [PATCH 1/4] arm/ixp4xx: Rename FREQ macro to avoid collisions
FREQ is a ridiculously short name for a platform-specific macro in a
generic header, and it now conflicts with an enumeration in the
gspca/ov519 driver.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
arch/arm/mach-ixp4xx/common.c | 4 ++--
arch/arm/mach-ixp4xx/include/mach/timex.h | 5 +++--
drivers/input/misc/ixp4xx-beeper.c | 6 +-----
3 files changed, 6 insertions(+), 9 deletions(-)
diff --git a/arch/arm/mach-ixp4xx/common.c b/arch/arm/mach-ixp4xx/common.c
index 0bce097..f5c42fe 100644
--- a/arch/arm/mach-ixp4xx/common.c
+++ b/arch/arm/mach-ixp4xx/common.c
@@ -415,7 +415,7 @@ static struct clocksource clocksource_ixp4xx = {
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
};
-unsigned long ixp4xx_timer_freq = FREQ;
+unsigned long ixp4xx_timer_freq = IXP4XX_TIMER_FREQ;
EXPORT_SYMBOL(ixp4xx_timer_freq);
static void __init ixp4xx_clocksource_init(void)
{
@@ -491,7 +491,7 @@ static struct clock_event_device clockevent_ixp4xx = {
static void __init ixp4xx_clockevent_init(void)
{
- clockevent_ixp4xx.mult = div_sc(FREQ, NSEC_PER_SEC,
+ clockevent_ixp4xx.mult = div_sc(IXP4XX_TIMER_FREQ, NSEC_PER_SEC,
clockevent_ixp4xx.shift);
clockevent_ixp4xx.max_delta_ns =
clockevent_delta2ns(0xfffffffe, &clockevent_ixp4xx);
diff --git a/arch/arm/mach-ixp4xx/include/mach/timex.h b/arch/arm/mach-ixp4xx/include/mach/timex.h
index 2c3f93c..c9e930f 100644
--- a/arch/arm/mach-ixp4xx/include/mach/timex.h
+++ b/arch/arm/mach-ixp4xx/include/mach/timex.h
@@ -10,6 +10,7 @@
* 66.66... MHz. We do a convulted calculation of CLOCK_TICK_RATE b/c the
* timer register ignores the bottom 2 bits of the LATCH value.
*/
-#define FREQ 66666000
-#define CLOCK_TICK_RATE (((FREQ / HZ & ~IXP4XX_OST_RELOAD_MASK) + 1) * HZ)
+#define IXP4XX_TIMER_FREQ 66666000
+#define CLOCK_TICK_RATE \
+ (((IXP4XX_TIMER_FREQ / HZ & ~IXP4XX_OST_RELOAD_MASK) + 1) * HZ)
diff --git a/drivers/input/misc/ixp4xx-beeper.c b/drivers/input/misc/ixp4xx-beeper.c
index 9dfd6e5..1f38302 100644
--- a/drivers/input/misc/ixp4xx-beeper.c
+++ b/drivers/input/misc/ixp4xx-beeper.c
@@ -69,11 +69,7 @@ static int ixp4xx_spkr_event(struct input_dev *dev, unsigned int type, unsigned
}
if (value > 20 && value < 32767)
-#ifndef FREQ
- count = (ixp4xx_get_board_tick_rate() / (value * 4)) - 1;
-#else
- count = (FREQ / (value * 4)) - 1;
-#endif
+ count = (IXP4XX_TIMER_FREQ / (value * 4)) - 1;
ixp4xx_spkr_control(pin, count);
--
1.7.2.3

View File

@ -0,0 +1,57 @@
From 88f98365032251a826760b3ce8102bb9a7967c69 Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Fri, 10 Dec 2010 02:52:35 +0000
Subject: [PATCH 4/4] mips: Change mips_sc_is_activated() to do what the comment says
Add the necessary parameter for mips_sc_is_activated() to compile.
Move the cache.linesz initialisation up into mips_sc_probe().
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
arch/mips/mm/sc-mips.c | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/arch/mips/mm/sc-mips.c b/arch/mips/mm/sc-mips.c
index 505feca..6b513bf 100644
--- a/arch/mips/mm/sc-mips.c
+++ b/arch/mips/mm/sc-mips.c
@@ -66,7 +66,7 @@ static struct bcache_ops mips_sc_ops = {
* 12..15 as implementation defined so below function will eventually have
* to be replaced by a platform specific probe.
*/
-static inline int mips_sc_is_activated(struct cpuinfo_mips *c)
+static inline int mips_sc_is_activated(struct cpuinfo_mips *c, unsigned config2)
{
/* Check the bypass bit (L2B) */
switch (c->cputype) {
@@ -78,11 +78,7 @@ static inline int mips_sc_is_activated(struct cpuinfo_mips *c)
return 0;
}
- tmp = (config2 >> 4) & 0x0f;
- if (0 < tmp && tmp <= 7)
- c->scache.linesz = 2 << tmp;
- else
- return 0;
+ return 1;
}
static inline int __init mips_sc_probe(void)
@@ -108,7 +104,13 @@ static inline int __init mips_sc_probe(void)
config2 = read_c0_config2();
- if (!mips_sc_is_activated(c))
+ if (!mips_sc_is_activated(c, config2))
+ return 0;
+
+ tmp = (config2 >> 4) & 0x0f;
+ if (0 < tmp && tmp <= 7)
+ c->scache.linesz = 2 << tmp;
+ else
return 0;
tmp = (config2 >> 8) & 0x0f;
--
1.7.2.3

View File

@ -0,0 +1,68 @@
From 42663d4b49617c17c75c347b6927630cfd5a715e Mon Sep 17 00:00:00 2001
From: Ben Hutchings <ben@decadent.org.uk>
Date: Fri, 10 Dec 2010 02:34:49 +0000
Subject: [PATCH 2/4] alpha: Do not use -Werror for arch/alpha
The alpha headers for I/O currently have illegal combinations of
extern inline and static inline functions calling each other. Make
the warnings non-fatal for now.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
arch/alpha/kernel/Makefile | 2 +-
arch/alpha/lib/Makefile | 1 -
arch/alpha/mm/Makefile | 2 --
arch/alpha/oprofile/Makefile | 2 +-
4 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/arch/alpha/kernel/Makefile b/arch/alpha/kernel/Makefile
index 1ee9b5b..1c77b1c 100644
--- a/arch/alpha/kernel/Makefile
+++ b/arch/alpha/kernel/Makefile
@@ -4,7 +4,7 @@
extra-y := head.o vmlinux.lds
EXTRA_AFLAGS := $(KBUILD_CFLAGS)
-EXTRA_CFLAGS := -Werror -Wno-sign-compare
+EXTRA_CFLAGS := -Wno-sign-compare
obj-y := entry.o traps.o process.o init_task.o osf_sys.o irq.o \
irq_alpha.o signal.o setup.o ptrace.o time.o \
diff --git a/arch/alpha/lib/Makefile b/arch/alpha/lib/Makefile
index 9b72c59..a2723cb 100644
--- a/arch/alpha/lib/Makefile
+++ b/arch/alpha/lib/Makefile
@@ -3,7 +3,6 @@
#
EXTRA_AFLAGS := $(KBUILD_CFLAGS)
-EXTRA_CFLAGS := -Werror
# Many of these routines have implementations tuned for ev6.
# Choose them iff we're targeting ev6 specifically.
diff --git a/arch/alpha/mm/Makefile b/arch/alpha/mm/Makefile
index 09399c5..ec693be 100644
--- a/arch/alpha/mm/Makefile
+++ b/arch/alpha/mm/Makefile
@@ -2,8 +2,6 @@
# Makefile for the linux alpha-specific parts of the memory manager.
#
-EXTRA_CFLAGS := -Werror
-
obj-y := init.o fault.o extable.o
obj-$(CONFIG_DISCONTIGMEM) += numa.o
diff --git a/arch/alpha/oprofile/Makefile b/arch/alpha/oprofile/Makefile
index 4aa5624..74cb06e 100644
--- a/arch/alpha/oprofile/Makefile
+++ b/arch/alpha/oprofile/Makefile
@@ -1,4 +1,4 @@
-EXTRA_CFLAGS := -Werror -Wno-sign-compare
+EXTRA_CFLAGS := -Wno-sign-compare
obj-$(CONFIG_OPROFILE) += oprofile.o
--
1.7.2.3

View File

@ -0,0 +1,7 @@
- bugfix/mips/mips-Add-the-necessary-parameter-to-mips_sc_is_activ.patch
- bugfix/arm/arm-ixp4xx-Rename-FREQ-macro-to-avoid-collisions.patch
- debian/alpha-Do-not-use-Werror-for-arch-alpha-kernel.patch
+ bugfix/arm/arm-ixp4xx-Rename-FREQ-macro-to-avoid-collisions-2.patch
+ debian/alpha-Do-not-use-Werror-for-arch-alpha.patch
+ bugfix/all/drm-nouveau-Only-select-ACPI_VIDEO-if-its-dependenci.patch
+ bugfix/mips/mips-Change-mips_sc_is_activated-to-do-what-the-comm.patch