1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-25 02:19:20 +02:00

refresh patch

This commit is contained in:
Xiangfu Liu 2009-09-22 00:17:14 +08:00
parent 9e02463e3e
commit 7c9aa25b12
17 changed files with 314 additions and 445 deletions

View File

@ -1,32 +1,8 @@
From ac50b482e2278cdff65e67c8a31079bf9c5ae289 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:47:08 +0200
Subject: [PATCH] core
---
arch/mips/Kconfig | 48 +++++
arch/mips/Makefile | 18 ++
arch/mips/boot/Makefile | 23 ++-
arch/mips/include/asm/bootinfo.h | 6 +
arch/mips/include/asm/cpu.h | 13 ++-
arch/mips/include/asm/mach-generic/irq.h | 2 +-
arch/mips/include/asm/r4kcache.h | 231 ++++++++++++++++++++++
arch/mips/include/asm/suspend.h | 3 +
arch/mips/kernel/cpu-probe.c | 21 ++
arch/mips/kernel/signal.c | 6 +
arch/mips/kernel/unaligned.c | 5 +
arch/mips/mm/c-r4k.c | 30 +++
arch/mips/mm/cache.c | 2 +
arch/mips/mm/tlbex.c | 5 +
include/linux/suspend.h | 315 ------------------------------
15 files changed, 409 insertions(+), 319 deletions(-)
delete mode 100644 include/linux/suspend.h
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 3ca0fe1..e8f8027 100644
index f19dff6..b1c0b9f 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -158,6 +158,9 @@
@@ -158,6 +158,9 @@ config MACH_JAZZ
Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
Olivetti M700-10 workstations.
@ -36,7 +12,7 @@ index 3ca0fe1..e8f8027 100644
config LASAT
bool "LASAT Networks platforms"
select CEVT_R4K
@@ -661,6 +664,7 @@
@@ -661,6 +664,7 @@ endchoice
source "arch/mips/alchemy/Kconfig"
source "arch/mips/basler/excite/Kconfig"
source "arch/mips/jazz/Kconfig"
@ -44,7 +20,7 @@ index 3ca0fe1..e8f8027 100644
source "arch/mips/lasat/Kconfig"
source "arch/mips/pmc-sierra/Kconfig"
source "arch/mips/sgi-ip27/Kconfig"
@@ -1893,6 +1919,14 @@ config NR_CPUS
@@ -1911,6 +1915,14 @@ config NR_CPUS
source "kernel/time/Kconfig"
@ -59,7 +35,7 @@ index 3ca0fe1..e8f8027 100644
#
# Timer Interrupt Frequency Configuration
#
@@ -2164,6 +2198,23 @@ config BINFMT_ELF32
@@ -2182,6 +2194,23 @@ config BINFMT_ELF32
endmenu
@ -84,7 +60,7 @@ index 3ca0fe1..e8f8027 100644
config ARCH_HIBERNATION_POSSIBLE
diff --git a/arch/mips/Makefile b/arch/mips/Makefile
index 861da51..14a6f9a 100644
index 791f1db..0f1129d 100644
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -180,6 +180,14 @@ cflags-$(CONFIG_AR7) += -I$(srctree)/arch/mips/include/asm/mach-ar7
@ -102,7 +78,7 @@ index 861da51..14a6f9a 100644
# Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
#
core-$(CONFIG_MACH_JAZZ) += arch/mips/jazz/
@@ -711,6 +719,12 @@ makeboot =$(Q)$(MAKE) $(build)=arch/mips/boot VMLINUX=$(vmlinux-32) $(1)
@@ -714,6 +722,12 @@ makeboot =$(Q)$(MAKE) $(build)=arch/mips/boot VMLINUX=$(vmlinux-32) $(1)
all: $(all-y)
@ -115,7 +91,7 @@ index 861da51..14a6f9a 100644
vmlinux.bin: $(vmlinux-32)
+@$(call makeboot,$@)
@@ -740,6 +754,7 @@ install:
@@ -743,6 +757,7 @@ install:
archclean:
@$(MAKE) $(clean)=arch/mips/boot
@ -123,7 +99,7 @@ index 861da51..14a6f9a 100644
@$(MAKE) $(clean)=arch/mips/lasat
define archhelp
@@ -747,6 +762,9 @@ define archhelp
@@ -750,6 +765,9 @@ define archhelp
echo ' vmlinux.ecoff - ECOFF boot image'
echo ' vmlinux.bin - Raw binary boot image'
echo ' vmlinux.srec - SREC boot image'
@ -592,7 +568,7 @@ index 294cdb6..94dc597 100644
/* References to section boundaries */
extern const void __nosave_begin, __nosave_end;
diff --git a/arch/mips/kernel/cpu-probe.c b/arch/mips/kernel/cpu-probe.c
index 1abe990..4535ae7 100644
index 1abe990..1315cff 100644
--- a/arch/mips/kernel/cpu-probe.c
+++ b/arch/mips/kernel/cpu-probe.c
@@ -160,6 +160,7 @@ void __init check_wait(void)
@ -637,8 +613,6 @@ index 1abe990..4535ae7 100644
}
BUG_ON(!__cpu_name[cpu]);
diff --git a/arch/mips/kernel/unaligned.c b/arch/mips/kernel/unaligned.c
index 67bd626..e26ebe0 100644
diff --git a/arch/mips/mm/c-r4k.c b/arch/mips/mm/c-r4k.c
index 6721ee2..dd4b70b 100644
--- a/arch/mips/mm/c-r4k.c
@ -709,6 +683,3 @@ index 9a17bf8..9b80053 100644
default:
panic("No TLB refill handler yet (CPU type: %d)",
current_cpu_data.cputype);
--
1.5.6.5

View File

@ -1,6 +1,8 @@
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 3b54b39..2b08352 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -2261,6 +2261,15 @@ config FB_BROADSHEET
@@ -2148,6 +2148,15 @@ config FB_BROADSHEET
and could also have been called by other names when coupled with
a bridge adapter.
@ -16,9 +18,11 @@
source "drivers/video/omap/Kconfig"
source "drivers/video/backlight/Kconfig"
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 01a819f..5af158f 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -129,6 +129,7 @@ obj-$(CONFIG_FB_OMAP) += omap/
@@ -126,6 +126,7 @@ obj-$(CONFIG_FB_OMAP) += omap/
obj-$(CONFIG_XEN_FBDEV_FRONTEND) += xen-fbfront.o
obj-$(CONFIG_FB_CARMINE) += carminefb.o
obj-$(CONFIG_FB_MB862XX) += mb862xx/

View File

@ -1,6 +1,8 @@
--- a/drivers/rtc/Kconfig 2009-09-02 16:48:11.000000000 +0200
+++ b/drivers/rtc//Kconfig 2009-09-20 03:21:58.000000000 +0200
@@ -460,6 +460,17 @@
diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
index 1b5ea99..2a6a267 100644
--- a/drivers/rtc/Kconfig
+++ b/drivers/rtc/Kconfig
@@ -460,6 +460,17 @@ config RTC_DRV_EFI
This driver can also be built as a module. If so, the module
will be called rtc-efi.
@ -18,9 +20,11 @@
config RTC_DRV_STK17TA8
tristate "Simtek STK17TA8"
depends on RTC_CLASS
--- a/drivers/rtc/Makefile 2009-09-02 16:48:11.000000000 +0200
+++ b/drivers/rtc/Makefile 2009-09-20 03:16:44.000000000 +0200
@@ -40,6 +40,7 @@
diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile
index 828cb64..013a6d2 100644
--- a/drivers/rtc/Makefile
+++ b/drivers/rtc/Makefile
@@ -40,6 +40,7 @@ obj-$(CONFIG_RTC_DRV_EFI) += rtc-efi.o
obj-$(CONFIG_RTC_DRV_EP93XX) += rtc-ep93xx.o
obj-$(CONFIG_RTC_DRV_FM3130) += rtc-fm3130.o
obj-$(CONFIG_RTC_DRV_ISL1208) += rtc-isl1208.o

View File

@ -1,13 +1,3 @@
From e8e05da0df412b041b9bb7d7d0dc30931a3e1344 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:47:33 +0200
Subject: [PATCH] battery
---
drivers/power/Kconfig | 5 +++++
drivers/power/Makefile | 1 +
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/drivers/power/Kconfig b/drivers/power/Kconfig
index bdbc4f7..3942136 100644
--- a/drivers/power/Kconfig
@ -31,6 +21,3 @@ index 380d17c..4eebbf5 100644
obj-$(CONFIG_BATTERY_MAX17040) += max17040_battery.o
obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o
+obj-$(CONFIG_BATTERY_JZ) += jz_battery.o
--
1.5.6.5

View File

@ -1,15 +1,5 @@
From 18cd35fce85884d15b1c600dd6e132ed25d6954b Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:47:20 +0200
Subject: [PATCH] mmc
---
drivers/mmc/host/Kconfig | 9 +++++++++
drivers/mmc/host/Makefile | 1 +
2 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 891ef18..11e35bd 100644
index b4e1c22..a2e6ac1 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -66,6 +66,15 @@ config MMC_RICOH_MMC
@ -29,7 +19,7 @@ index 891ef18..11e35bd 100644
To compile this driver as a module, choose M here:
the module will be called ricoh_mmc.
diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
index cf153f6..5396cd6 100644
index 4cce976..a3d336a 100644
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
@@ -6,6 +6,7 @@ ifeq ($(CONFIG_MMC_DEBUG),y)
@ -40,6 +30,3 @@ index cf153f6..5396cd6 100644
obj-$(CONFIG_MMC_ARMMMCI) += mmci.o
obj-$(CONFIG_MMC_PXA) += pxamci.o
obj-$(CONFIG_MMC_IMX) += imxmmc.o
--
1.5.6.5

View File

@ -1,15 +1,5 @@
From 2623194f73c9d272245263c8a54c7b1a63766e8e Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:49:48 +0200
Subject: [PATCH] video
---
drivers/video/Kconfig | 113 ++++++++++++++++++++++++++++++++++++++++++++++++
drivers/video/Makefile | 3 +
2 files changed, 116 insertions(+), 0 deletions(-)
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 3b54b39..3d5d623 100644
index 2b08352..d25c6f6 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -237,6 +237,119 @@ config FB_TILEBLITTING
@ -133,7 +123,7 @@ index 3b54b39..3d5d623 100644
tristate "Cirrus Logic support"
depends on FB && (ZORRO || PCI)
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 01a819f..289b6e9 100644
index 5af158f..c037677 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -28,6 +28,9 @@ obj-$(CONFIG_FB_DDC) += fb_ddc.o
@ -146,6 +136,3 @@ index 01a819f..289b6e9 100644
obj-$(CONFIG_FB_AMIGA) += amifb.o c2p_planar.o
obj-$(CONFIG_FB_ARC) += arcfb.o
obj-$(CONFIG_FB_CLPS711X) += clps711xfb.o
--
1.5.6.5

View File

@ -1,14 +1,5 @@
From 35d6fcb8cc04d368abef00b00e6af04b8c71ba46 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:54:02 +0200
Subject: [PATCH] serial
---
drivers/serial/8250.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 103 insertions(+), 1 deletions(-)
diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c
index fb867a9..d8784c3 100644
index fb867a9..2ecd7f4 100644
--- a/drivers/serial/8250.c
+++ b/drivers/serial/8250.c
@@ -194,7 +194,7 @@ static const struct serial8250_config uart_config[] = {
@ -173,6 +164,3 @@ index fb867a9..d8784c3 100644
/*
* LCR DLAB must be set to enable 64-byte FIFO mode. If the FCR
--
1.5.6.5

View File

@ -1,16 +1,3 @@
From d6e1e759473e3b62bb2a7b906bbb27f1f1f2aff2 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:54:18 +0200
Subject: [PATCH] usb
---
drivers/usb/Kconfig | 1 +
drivers/usb/core/hub.c | 43 +++++++++++++++++++++++++++++++++++++
drivers/usb/gadget/Kconfig | 18 ++++++++++++++-
drivers/usb/gadget/Makefile | 3 ++
drivers/usb/gadget/gadget_chips.h | 9 +++++++
5 files changed, 73 insertions(+), 1 deletions(-)
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
index dcd49f1..a520bed 100644
--- a/drivers/usb/Kconfig
@ -90,7 +77,7 @@ index 71f86c6..d3f9344 100644
set_port_led(hub, port1, HUB_LED_AUTO);
hub->indicator[port1-1] = INDICATOR_AUTO;
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 7f8e83a..a973ce7 100644
index 7f8e83a..1c99cd2 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -121,11 +121,25 @@ choice
@ -119,7 +106,7 @@ index 7f8e83a..a973ce7 100644
help
Many Atmel AT91 processors (such as the AT91RM2000) have a
full speed USB Device Port with support for five configurable
@@ -534,6 +547,10 @@ config USB_DUMMY_HCD
@@ -534,6 +548,10 @@ config USB_DUMMY_HCD
endchoice
@ -130,7 +117,7 @@ index 7f8e83a..a973ce7 100644
config USB_GADGET_DUALSPEED
bool
depends on USB_GADGET
@@ -541,7 +558,6 @@ config USB_GADGET_DUALSPEED
@@ -541,7 +559,6 @@ config USB_GADGET_DUALSPEED
help
Means that gadget drivers should include extra descriptors
and code to handle dual-speed controllers.
@ -179,6 +166,3 @@ index 8e0e9a0..d9c0990 100644
return -ENOENT;
}
--
1.5.6.5

View File

@ -1,18 +1,3 @@
From 1a6fa6adbd597171648c7cb308cc9e3efe488668 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Wed, 19 Aug 2009 14:54:29 +0200
Subject: [PATCH] sound
---
include/sound/pcm.h | 26 ++++++------
sound/core/pcm_lib.c | 94 +++++++++++++++++++++++++++++++++++++++++++++
sound/core/pcm_native.c | 15 ++++++-
sound/soc/Kconfig | 1 +
sound/soc/Makefile | 1 +
sound/soc/codecs/Kconfig | 12 ++++++
sound/soc/codecs/Makefile | 2 +
7 files changed, 135 insertions(+), 16 deletions(-)
diff --git a/include/sound/pcm.h b/include/sound/pcm.h
index 2389352..24dcb18 100644
--- a/include/sound/pcm.h
@ -55,7 +40,7 @@ index 2389352..24dcb18 100644
#define SNDRV_PCM_RATE_8000_96000 (SNDRV_PCM_RATE_8000_48000|SNDRV_PCM_RATE_64000|\
SNDRV_PCM_RATE_88200|SNDRV_PCM_RATE_96000)
diff --git a/sound/core/pcm_native.c b/sound/core/pcm_native.c
index ac2150e..2a57ab7 100644
index ac2150e..3b3183f 100644
--- a/sound/core/pcm_native.c
+++ b/sound/core/pcm_native.c
@@ -1748,12 +1748,13 @@ static int snd_pcm_hw_rule_sample_bits(struct snd_pcm_hw_params *params,
@ -97,10 +82,10 @@ index 6f1e28d..132772d 100644
obj-$(CONFIG_SND_SOC) += txx9/
+obj-$(CONFIG_SND_SOC) += jz4740/
diff --git a/sound/soc/codecs/Kconfig b/sound/soc/codecs/Kconfig
index bbc97fd..493e216 100644
index bbc97fd..f28a1a4 100644
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -179,3 +179,10 @@ config SND_SOC_WM9712
@@ -176,3 +176,10 @@ config SND_SOC_WM9712
config SND_SOC_WM9713
tristate
@ -112,7 +97,7 @@ index bbc97fd..493e216 100644
+ Say Y if you want to use internal codec on Ingenic JZ4720/JZ4740 based
+ boards.
diff --git a/sound/soc/codecs/Makefile b/sound/soc/codecs/Makefile
index 8b75305..f053c15 100644
index 8b75305..d7bd0a4 100644
--- a/sound/soc/codecs/Makefile
+++ b/sound/soc/codecs/Makefile
@@ -34,6 +34,7 @@ snd-soc-wm9081-objs := wm9081.o
@ -128,6 +113,3 @@ index 8b75305..f053c15 100644
obj-$(CONFIG_SND_SOC_WM9712) += snd-soc-wm9712.o
obj-$(CONFIG_SND_SOC_WM9713) += snd-soc-wm9713.o
+obj-$(CONFIG_SND_SOC_JZCODEC) += snd-soc-jzcodec.o
--
1.5.6.5

View File

@ -1,23 +1,3 @@
From 17f15e207516c665bb080f650e04e01577069979 Mon Sep 17 00:00:00 2001
From: Xiangfu Liu <xiangfu.z@gmail.com>
Date: Mon, 31 Aug 2009 10:47:00 +0800
Subject: [PATCH] qi_lb60
---
arch/mips/Kconfig | 8 ++
arch/mips/include/asm/mach-jz4740/board-qi_lb60.h | 79 +++++++++++++++
arch/mips/include/asm/mach-jz4740/jz4740.h | 4 +
arch/mips/jz4740/Makefile | 1 +
arch/mips/jz4740/board-qi_lb60.c | 110 +++++++++++++++++++++
drivers/video/jzlcd.c | 23 +++--
drivers/video/jzlcd.h | 15 +++-
7 files changed, 227 insertions(+), 13 deletions(-)
create mode 100644 arch/mips/include/asm/mach-jz4740/board-qi_lb60.h
create mode 100644 arch/mips/jz4740/board-qi_lb60.c
mode change 100755 => 100644 drivers/video/jz4740_slcd.c
mode change 100755 => 100644 drivers/video/jzlcd.c
mode change 100755 => 100644 drivers/video/jzlcd.h
diff --git a/arch/mips/include/asm/mach-jz4740/board-qi_lb60.h b/arch/mips/include/asm/mach-jz4740/board-qi_lb60.h
new file mode 100644
index 0000000..b2f02f4
@ -119,7 +99,7 @@ index 437caf4..d38d5f1 100644
diff --git a/arch/mips/jz4740/Makefile b/arch/mips/jz4740/Makefile
index 0259876..8491d5f 100644
index 99ba3e0..efdb654 100644
--- a/arch/mips/jz4740/Makefile
+++ b/arch/mips/jz4740/Makefile
@@ -16,6 +16,7 @@ obj-$(CONFIG_JZ4740_LEO) += board-leo.o
@ -246,13 +226,8 @@ index 0000000..127fad8
+
+ jz_timer_callback = pi_timer_callback;
+}
diff --git a/drivers/video/jz4740_slcd.c b/drivers/video/jz4740_slcd.c
old mode 100755
new mode 100644
diff --git a/drivers/video/jzlcd.c b/drivers/video/jzlcd.c
old mode 100755
new mode 100644
index 6df9439..2cb7114
index 6df9439..2cb7114 100755
--- a/drivers/video/jzlcd.c
+++ b/drivers/video/jzlcd.c
@@ -127,15 +127,18 @@ static struct jzfb_info jzfb = {
@ -293,9 +268,7 @@ index 6df9439..2cb7114
return 0;
diff --git a/drivers/video/jzlcd.h b/drivers/video/jzlcd.h
old mode 100755
new mode 100644
index 8a3d855..e2e6978
index 8a3d855..e2e6978 100755
--- a/drivers/video/jzlcd.h
+++ b/drivers/video/jzlcd.h
@@ -363,7 +363,11 @@ do { \
@ -341,6 +314,3 @@ index 8a3d855..e2e6978
} while (0)
#define __lcd_display_off() \
--
1.6.0.4

View File

@ -1,5 +1,5 @@
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 3d5d623..40ad167 100644
index d25c6f6..5dc3d4c 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -281,6 +281,42 @@ config FB_JZLCD_4730_4740
@ -46,7 +46,7 @@ index 3d5d623..40ad167 100644
depends on FB_JZLCD_4730_4740
prompt "LCD Panel"
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 289b6e9..ae24d6d 100644
index c037677..c8db3fc 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -28,7 +28,7 @@ obj-$(CONFIG_FB_DDC) += fb_ddc.o

View File

@ -1,8 +1,8 @@
diff --git a/arch/mips/jz4740/platform.c b/arch/mips/jz4740/platform.c
index 62409ed..c435df5 100644
index 5cf3c38..04024d2 100644
--- a/arch/mips/jz4740/platform.c
+++ b/arch/mips/jz4740/platform.c
@@ -167,6 +167,8 @@ static struct resource jz_nand_resources[] = {
@@ -170,6 +170,8 @@ static struct resource jz_nand_resources[] = {
},
};
@ -11,7 +11,7 @@ index 62409ed..c435df5 100644
static struct nand_ecclayout qi_lb60_ecclayout = {
.eccbytes = 36,
.eccpos = {
@@ -183,23 +185,62 @@ static struct nand_ecclayout qi_lb60_ecclayout = {
@@ -186,23 +188,62 @@ static struct nand_ecclayout qi_lb60_ecclayout = {
};
static struct mtd_partition qi_lb60_partitions[] = {
@ -31,6 +31,7 @@ index 62409ed..c435df5 100644
- .offset = 100 * 0x100000,
- .size = 20 * 0x100000,
- },
-};
+ { .name = "NAND BOOT partition",
+ .offset = 0 * 0x100000,
+ .size = 4 * 0x100000,
@ -47,7 +48,7 @@ index 62409ed..c435df5 100644
+ .offset = 512 * 0x100000,
+ .size = 512 * 0x100000,
+ },
};
+};
+#else
+static struct nand_ecclayout qi_lb60_ecclayout = {
+ .eccbytes = 72,
@ -90,7 +91,7 @@ index 62409ed..c435df5 100644
static struct jz_nand_platform_data jz_nand_platform_data = {
.num_partitions = ARRAY_SIZE(qi_lb60_partitions),
@@ -216,7 +257,9 @@ static struct platform_device jz_nand_device = {
@@ -219,7 +260,9 @@ static struct platform_device jz_nand_device = {
.platform_data = &jz_nand_platform_data,
}
};
@ -102,10 +103,10 @@ index 62409ed..c435df5 100644
#define KEY_QI_QI KEY_F13
#define KEY_QI_UPRED KEY_F14
diff --git a/include/mtd/mtd-abi.h b/include/mtd/mtd-abi.h
index be51ae2..cf90168 100644
index f86db5a..b19fffa 100644
--- a/include/mtd/mtd-abi.h
+++ b/include/mtd/mtd-abi.h
@@ -134,7 +134,7 @@ struct nand_oobfree {
@@ -135,7 +135,7 @@ struct nand_oobfree {
*/
struct nand_ecclayout {
__u32 eccbytes;

View File

@ -1,17 +1,8 @@
From 1f49cf395395acc36efd3b408b6d22b7d9aef831 Mon Sep 17 00:00:00 2001
From: xiangfu <xiangfu@openmobilefree.net>
Date: Fri, 4 Sep 2009 11:43:18 -0400
Subject: [PATCH] 400-spi-gpio-3wire.patch
---
drivers/spi/spi_gpio.c | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/drivers/spi/spi_gpio.c b/drivers/spi/spi_gpio.c
index 26bd03e..5f89c21 100644
index a128338..0ca5365 100644
--- a/drivers/spi/spi_gpio.c
+++ b/drivers/spi/spi_gpio.c
@@ -243,9 +243,11 @@ spi_gpio_request(struct spi_gpio_platform_data *pdata, const char *label)
@@ -254,9 +254,11 @@ spi_gpio_request(struct spi_gpio_platform_data *pdata, const char *label)
if (value)
goto done;
@ -26,7 +17,7 @@ index 26bd03e..5f89c21 100644
value = spi_gpio_alloc(SPI_SCK_GPIO, label, false);
if (value)
@@ -308,7 +310,8 @@ static int __init spi_gpio_probe(struct platform_device *pdev)
@@ -319,7 +321,8 @@ static int __devinit spi_gpio_probe(struct platform_device *pdev)
if (status < 0) {
spi_master_put(spi_gpio->bitbang.master);
gpio_free:
@ -36,7 +27,7 @@ index 26bd03e..5f89c21 100644
gpio_free(SPI_MOSI_GPIO);
gpio_free(SPI_SCK_GPIO);
spi_master_put(master);
@@ -332,7 +335,8 @@ static int __exit spi_gpio_remove(struct platform_device *pdev)
@@ -343,7 +346,8 @@ static int __devexit spi_gpio_remove(struct platform_device *pdev)
platform_set_drvdata(pdev, NULL);
@ -46,6 +37,3 @@ index 26bd03e..5f89c21 100644
gpio_free(SPI_MOSI_GPIO);
gpio_free(SPI_SCK_GPIO);
--
1.5.6.3

View File

@ -1,220 +1,8 @@
--- a/sound/soc/soc-core.c 2009-09-02 16:48:38.000000000 +0200
+++ b/sound/soc/soc-core.c 2009-09-15 03:23:13.000000000 +0200
@@ -500,8 +500,8 @@
if (cpu_dai->ops->hw_params) {
ret = cpu_dai->ops->hw_params(substream, params, cpu_dai);
if (ret < 0) {
- printk(KERN_ERR "asoc: interface %s hw params failed\n",
- cpu_dai->name);
+ printk(KERN_ERR "asoc: interface %s hw params failed: %d\n",
+ cpu_dai->name, ret);
goto interface_err;
}
}
@@ -842,7 +842,7 @@
* DAIs currently; we can't do this per link since some AC97
* codecs have non-AC97 DAIs.
*/
- if (!ac97)
+ if (!ac97) {
for (i = 0; i < card->num_links; i++) {
found = 0;
list_for_each_entry(dai, &dai_list, list)
@@ -856,6 +856,7 @@
return;
}
}
+ }
/* Note that we do not current check for codec components */
@@ -1263,11 +1264,11 @@
*
* Returns 1 for change else 0.
*/
-int snd_soc_update_bits(struct snd_soc_codec *codec, unsigned short reg,
- unsigned short mask, unsigned short value)
+int snd_soc_update_bits(struct snd_soc_codec *codec, unsigned int reg,
+ unsigned int mask, unsigned int value)
{
int change;
- unsigned short old, new;
+ unsigned int old, new;
mutex_lock(&io_mutex);
old = snd_soc_read(codec, reg);
@@ -1293,11 +1294,11 @@
*
* Returns 1 for change else 0.
*/
-int snd_soc_test_bits(struct snd_soc_codec *codec, unsigned short reg,
- unsigned short mask, unsigned short value)
+int snd_soc_test_bits(struct snd_soc_codec *codec, unsigned int reg,
+ unsigned int mask, unsigned int value)
{
int change;
- unsigned short old, new;
+ unsigned int old, new;
mutex_lock(&io_mutex);
old = snd_soc_read(codec, reg);
@@ -1586,7 +1587,7 @@
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, bitmask;
+ unsigned int val, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1615,8 +1616,8 @@
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val;
- unsigned short mask, bitmask;
+ unsigned int val;
+ unsigned int mask, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1652,7 +1653,7 @@
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short reg_val, val, mux;
+ unsigned int reg_val, val, mux;
reg_val = snd_soc_read(codec, e->reg);
val = (reg_val >> e->shift_l) & e->mask;
@@ -1691,8 +1692,8 @@
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val;
- unsigned short mask;
+ unsigned int val;
+ unsigned int mask;
if (ucontrol->value.enumerated.item[0] > e->max - 1)
return -EINVAL;
@@ -1852,7 +1853,7 @@
int max = mc->max;
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
val = (ucontrol->value.integer.value[0] & mask);
if (invert)
@@ -1958,7 +1959,7 @@
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
int err;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
val_mask = mask << shift;
val = (ucontrol->value.integer.value[0] & mask);
@@ -2050,7 +2051,7 @@
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
unsigned int reg = mc->reg;
int min = mc->min;
- unsigned short val;
+ unsigned int val;
val = (ucontrol->value.integer.value[0]+min) & 0xff;
val |= ((ucontrol->value.integer.value[1]+min) & 0xff) << 8;
@@ -2251,6 +2252,7 @@
if (!dai->ops)
dai->ops = &null_dai_ops;
+
INIT_LIST_HEAD(&dai->list);
mutex_lock(&client_mutex);
--- a/sound/soc/soc-dapm.c 2009-09-02 16:48:38.000000000 +0200
+++ b/sound/soc/soc-dapm.c 2009-09-08 17:49:09.000000000 +0200
@@ -268,7 +268,7 @@
static int dapm_update_bits(struct snd_soc_dapm_widget *widget)
{
int change, power;
- unsigned short old, new;
+ unsigned int old, new;
struct snd_soc_codec *codec = widget->codec;
/* check for valid widgets */
@@ -1246,7 +1246,6 @@
/**
* snd_soc_dapm_new_widgets - add new dapm widgets
* @codec: audio codec
- *
* Checks the codec for any new dapm widgets and creates them if found.
*
* Returns 0 for success.
@@ -1336,7 +1335,8 @@
ucontrol->value.integer.value[0] =
(snd_soc_read(widget->codec, reg) >> shift) & mask;
- if (shift != rshift)
+
+ if (shift != rshift)
ucontrol->value.integer.value[1] =
(snd_soc_read(widget->codec, reg) >> rshift) & mask;
if (invert) {
@@ -1372,7 +1372,7 @@
int max = mc->max;
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
int ret;
val = (ucontrol->value.integer.value[0] & mask);
@@ -1436,7 +1436,7 @@
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, bitmask;
+ unsigned int val, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1464,8 +1464,8 @@
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, mux;
- unsigned short mask, bitmask;
+ unsigned int val, mux;
+ unsigned int mask, bitmask;
int ret = 0;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
@@ -1523,7 +1523,7 @@
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short reg_val, val, mux;
+ unsigned int reg_val, val, mux;
reg_val = snd_soc_read(widget->codec, e->reg);
val = (reg_val >> e->shift_l) & e->mask;
@@ -1563,8 +1563,8 @@
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, mux;
- unsigned short mask;
+ unsigned int val, mux;
+ unsigned int mask;
int ret = 0;
if (ucontrol->value.enumerated.item[0] > e->max - 1)
--- a/include/sound/soc.h 2009-09-02 16:48:29.000000000 +0200
+++ b/include/sound/soc.h 2009-09-08 17:40:32.000000000 +0200
@@ -215,10 +215,10 @@
diff --git a/include/sound/soc.h b/include/sound/soc.h
index cf6111d..c457b74 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -215,10 +215,10 @@ void snd_soc_jack_free_gpios(struct snd_soc_jack *jack, int count,
#endif
/* codec register bit access */
@ -229,7 +17,7 @@
int snd_soc_new_ac97_codec(struct snd_soc_codec *codec,
struct snd_ac97_bus_ops *ops, int num);
@@ -492,8 +492,8 @@
@@ -492,8 +492,8 @@ struct soc_mixer_control {
/* enumerated kcontrol */
struct soc_enum {
@ -240,3 +28,220 @@
unsigned char shift_l;
unsigned char shift_r;
unsigned int max;
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index 1d70829..4e1d1c4 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -500,8 +500,8 @@ static int soc_pcm_hw_params(struct snd_pcm_substream *substream,
if (cpu_dai->ops->hw_params) {
ret = cpu_dai->ops->hw_params(substream, params, cpu_dai);
if (ret < 0) {
- printk(KERN_ERR "asoc: interface %s hw params failed\n",
- cpu_dai->name);
+ printk(KERN_ERR "asoc: interface %s hw params failed: %d\n",
+ cpu_dai->name, ret);
goto interface_err;
}
}
@@ -842,7 +842,7 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
* DAIs currently; we can't do this per link since some AC97
* codecs have non-AC97 DAIs.
*/
- if (!ac97)
+ if (!ac97) {
for (i = 0; i < card->num_links; i++) {
found = 0;
list_for_each_entry(dai, &dai_list, list)
@@ -856,6 +856,7 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
return;
}
}
+ }
/* Note that we do not current check for codec components */
@@ -1263,11 +1264,11 @@ EXPORT_SYMBOL_GPL(snd_soc_free_ac97_codec);
*
* Returns 1 for change else 0.
*/
-int snd_soc_update_bits(struct snd_soc_codec *codec, unsigned short reg,
- unsigned short mask, unsigned short value)
+int snd_soc_update_bits(struct snd_soc_codec *codec, unsigned int reg,
+ unsigned int mask, unsigned int value)
{
int change;
- unsigned short old, new;
+ unsigned int old, new;
mutex_lock(&io_mutex);
old = snd_soc_read(codec, reg);
@@ -1293,11 +1294,11 @@ EXPORT_SYMBOL_GPL(snd_soc_update_bits);
*
* Returns 1 for change else 0.
*/
-int snd_soc_test_bits(struct snd_soc_codec *codec, unsigned short reg,
- unsigned short mask, unsigned short value)
+int snd_soc_test_bits(struct snd_soc_codec *codec, unsigned int reg,
+ unsigned int mask, unsigned int value)
{
int change;
- unsigned short old, new;
+ unsigned int old, new;
mutex_lock(&io_mutex);
old = snd_soc_read(codec, reg);
@@ -1586,7 +1587,7 @@ int snd_soc_get_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, bitmask;
+ unsigned int val, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1615,8 +1616,8 @@ int snd_soc_put_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val;
- unsigned short mask, bitmask;
+ unsigned int val;
+ unsigned int mask, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1652,7 +1653,7 @@ int snd_soc_get_value_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short reg_val, val, mux;
+ unsigned int reg_val, val, mux;
reg_val = snd_soc_read(codec, e->reg);
val = (reg_val >> e->shift_l) & e->mask;
@@ -1691,8 +1692,8 @@ int snd_soc_put_value_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val;
- unsigned short mask;
+ unsigned int val;
+ unsigned int mask;
if (ucontrol->value.enumerated.item[0] > e->max - 1)
return -EINVAL;
@@ -1852,7 +1853,7 @@ int snd_soc_put_volsw(struct snd_kcontrol *kcontrol,
int max = mc->max;
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
val = (ucontrol->value.integer.value[0] & mask);
if (invert)
@@ -1958,7 +1959,7 @@ int snd_soc_put_volsw_2r(struct snd_kcontrol *kcontrol,
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
int err;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
val_mask = mask << shift;
val = (ucontrol->value.integer.value[0] & mask);
@@ -2050,7 +2051,7 @@ int snd_soc_put_volsw_s8(struct snd_kcontrol *kcontrol,
struct snd_soc_codec *codec = snd_kcontrol_chip(kcontrol);
unsigned int reg = mc->reg;
int min = mc->min;
- unsigned short val;
+ unsigned int val;
val = (ucontrol->value.integer.value[0]+min) & 0xff;
val |= ((ucontrol->value.integer.value[1]+min) & 0xff) << 8;
@@ -2251,6 +2252,7 @@ int snd_soc_register_dai(struct snd_soc_dai *dai)
if (!dai->ops)
dai->ops = &null_dai_ops;
+
INIT_LIST_HEAD(&dai->list);
mutex_lock(&client_mutex);
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 21c6907..543c9d0 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -268,7 +268,7 @@ static int dapm_connect_mixer(struct snd_soc_codec *codec,
static int dapm_update_bits(struct snd_soc_dapm_widget *widget)
{
int change, power;
- unsigned short old, new;
+ unsigned int old, new;
struct snd_soc_codec *codec = widget->codec;
/* check for valid widgets */
@@ -1246,7 +1246,6 @@ EXPORT_SYMBOL_GPL(snd_soc_dapm_add_routes);
/**
* snd_soc_dapm_new_widgets - add new dapm widgets
* @codec: audio codec
- *
* Checks the codec for any new dapm widgets and creates them if found.
*
* Returns 0 for success.
@@ -1336,7 +1335,8 @@ int snd_soc_dapm_get_volsw(struct snd_kcontrol *kcontrol,
ucontrol->value.integer.value[0] =
(snd_soc_read(widget->codec, reg) >> shift) & mask;
- if (shift != rshift)
+
+ if (shift != rshift)
ucontrol->value.integer.value[1] =
(snd_soc_read(widget->codec, reg) >> rshift) & mask;
if (invert) {
@@ -1372,7 +1372,7 @@ int snd_soc_dapm_put_volsw(struct snd_kcontrol *kcontrol,
int max = mc->max;
unsigned int mask = (1 << fls(max)) - 1;
unsigned int invert = mc->invert;
- unsigned short val, val2, val_mask;
+ unsigned int val, val2, val_mask;
int ret;
val = (ucontrol->value.integer.value[0] & mask);
@@ -1436,7 +1436,7 @@ int snd_soc_dapm_get_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, bitmask;
+ unsigned int val, bitmask;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
;
@@ -1464,8 +1464,8 @@ int snd_soc_dapm_put_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, mux;
- unsigned short mask, bitmask;
+ unsigned int val, mux;
+ unsigned int mask, bitmask;
int ret = 0;
for (bitmask = 1; bitmask < e->max; bitmask <<= 1)
@@ -1523,7 +1523,7 @@ int snd_soc_dapm_get_value_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short reg_val, val, mux;
+ unsigned int reg_val, val, mux;
reg_val = snd_soc_read(widget->codec, e->reg);
val = (reg_val >> e->shift_l) & e->mask;
@@ -1563,8 +1563,8 @@ int snd_soc_dapm_put_value_enum_double(struct snd_kcontrol *kcontrol,
{
struct snd_soc_dapm_widget *widget = snd_kcontrol_chip(kcontrol);
struct soc_enum *e = (struct soc_enum *)kcontrol->private_value;
- unsigned short val, mux;
- unsigned short mask;
+ unsigned int val, mux;
+ unsigned int mask;
int ret = 0;
if (ucontrol->value.enumerated.item[0] > e->max - 1)

View File

@ -1,8 +1,8 @@
diff --git a/arch/mips/jz4740/platform.c b/arch/mips/jz4740/platform.c
index b22b3d6..5859589 100644
index 04024d2..33b1181 100644
--- a/arch/mips/jz4740/platform.c
+++ b/arch/mips/jz4740/platform.c
@@ -243,9 +243,10 @@ static struct platform_device jz_nand_device = {
@@ -265,9 +265,10 @@ static struct platform_device jz_nand_device = {
*/
#define KEY_QI_QI KEY_F13
@ -14,7 +14,7 @@ index b22b3d6..5859589 100644
static const uint32_t qi_lb60_keymap[] = {
KEY(0, 0, KEY_F1), /* S2 */
@@ -308,7 +309,7 @@ static const uint32_t qi_lb60_keymap[] = {
@@ -330,7 +331,7 @@ static const uint32_t qi_lb60_keymap[] = {
#ifndef KEEP_UART_ALIVE
KEY(7, 0, KEY_LEFTSHIFT), /* S58 */
KEY(7, 1, KEY_LEFTALT), /* S59 */

View File

@ -1,8 +1,8 @@
diff --git a/arch/mips/jz4740/platform.c b/arch/mips/jz4740/platform.c
index 5859589..8980abc 100644
index 33b1181..de6a739 100644
--- a/arch/mips/jz4740/platform.c
+++ b/arch/mips/jz4740/platform.c
@@ -242,11 +242,11 @@ static struct platform_device jz_nand_device = {
@@ -264,11 +264,11 @@ static struct platform_device jz_nand_device = {
* don't define this. the keyboard and keyboard both work
*/

View File

@ -1,3 +1,5 @@
diff --git a/drivers/video/logo/Kconfig b/drivers/video/logo/Kconfig
index 39ac49e..03da067 100644
--- a/drivers/video/logo/Kconfig
+++ b/drivers/video/logo/Kconfig
@@ -82,4 +82,8 @@ config LOGO_M32R_CLUT224
@ -9,19 +11,23 @@
+ default y
+
endif # LOGO
--- a/include/linux/linux_logo.h
+++ b/include/linux/linux_logo.h
@@ -35,6 +35,7 @@ extern const struct linux_logo logo_supe
extern const struct linux_logo logo_superh_clut224;
extern const struct linux_logo logo_m32r_clut224;
extern const struct linux_logo logo_spe_clut224;
+extern const struct linux_logo logo_openwrt_clut224;
diff --git a/drivers/video/logo/Makefile b/drivers/video/logo/Makefile
index 3b43781..cbed3a5 100644
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -15,6 +15,7 @@ obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_superh_mono.o
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o
+obj-$(CONFIG_LOGO_OPENWRT_CLUT224) += logo_openwrt_clut224.o
extern const struct linux_logo *fb_find_logo(int depth);
#ifdef CONFIG_FB_LOGO_EXTRA
obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
diff --git a/drivers/video/logo/logo.c b/drivers/video/logo/logo.c
index ea7a8cc..7208830 100644
--- a/drivers/video/logo/logo.c
+++ b/drivers/video/logo/logo.c
@@ -115,6 +116,10 @@ const struct linux_logo * __init_refok f
@@ -100,6 +100,10 @@ const struct linux_logo * __init_refok fb_find_logo(int depth)
/* M32R Linux logo */
logo = &logo_m32r_clut224;
#endif
@ -32,16 +38,9 @@
}
return logo;
}
--- a/drivers/video/logo/Makefile
+++ b/drivers/video/logo/Makefile
@@ -15,6 +15,7 @@
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o
+obj-$(CONFIG_LOGO_OPENWRT_CLUT224) += logo_openwrt_clut224.o
obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
diff --git a/drivers/video/logo/logo_openwrt_clut224.ppm b/drivers/video/logo/logo_openwrt_clut224.ppm
new file mode 100644
index 0000000..97f7282
--- /dev/null
+++ b/drivers/video/logo/logo_openwrt_clut224.ppm
@@ -0,0 +1,9669 @@
@ -9714,3 +9713,15 @@
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0
diff --git a/include/linux/linux_logo.h b/include/linux/linux_logo.h
index ca5bd91..67166f3 100644
--- a/include/linux/linux_logo.h
+++ b/include/linux/linux_logo.h
@@ -47,6 +47,7 @@ extern const struct linux_logo logo_superh_vga16;
extern const struct linux_logo logo_superh_clut224;
extern const struct linux_logo logo_m32r_clut224;
extern const struct linux_logo logo_spe_clut224;
+extern const struct linux_logo logo_openwrt_clut224;
extern const struct linux_logo *fb_find_logo(int depth);
#ifdef CONFIG_FB_LOGO_EXTRA