diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 9575fbe8ce63cdac24fdf14d3c39caf366a90cc7..028be149104f987df05e326a8a7ff15d2ea1cbdd 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -11,8 +11,8 @@ endif
 ifeq ($(LINUX_VERSION),3.7.10)
   LINUX_KERNEL_MD5SUM:=09624c3702107076efcac5e1cd8a18ec
 endif
-ifeq ($(LINUX_VERSION),3.8.11)
-  LINUX_KERNEL_MD5SUM:=3c4f4fc96bf702d1e9dfbf4d4b4cde9d
+ifeq ($(LINUX_VERSION),3.8.12)
+  LINUX_KERNEL_MD5SUM:=a4be720ca9e61445562565856bb5154d
 endif
 ifeq ($(LINUX_VERSION),3.9)
   LINUX_KERNEL_MD5SUM:=4348c9b6b2eb3144d601e87c19d5d909
diff --git a/target/linux/adm5120/Makefile b/target/linux/adm5120/Makefile
index 2285bf026113790843f492db74353e8da1c08618..e8c101d7763855c7281d24a994d9f4b85b3b94c3 100644
--- a/target/linux/adm5120/Makefile
+++ b/target/linux/adm5120/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 BOARD:=adm5120
 BOARDNAME:=Infineon/ADMtek ADM5120
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 SUBTARGETS:=router_le router_be rb1xx
 INITRAMFS_EXTRA_FILES:=
 
diff --git a/target/linux/ar71xx/Makefile b/target/linux/ar71xx/Makefile
index 3ce41a4c91aa647a6a3b6aa1152e06b8945d4244..83b238e5842ecf939eb851865bfbd634b0bac3f8 100644
--- a/target/linux/ar71xx/Makefile
+++ b/target/linux/ar71xx/Makefile
@@ -13,7 +13,7 @@ FEATURES:=squashfs jffs2 targz
 CFLAGS:=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely
 SUBTARGETS:=generic nand
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/at91/Makefile b/target/linux/at91/Makefile
index 03589b40c7ecaffa96c6c222ceac244d7e2a144c..7a412c2e41d692916b4ef33f45a8dbf085c7fa25 100644
--- a/target/linux/at91/Makefile
+++ b/target/linux/at91/Makefile
@@ -13,7 +13,7 @@ BOARDNAME:=Atmel AT91
 FEATURES:=squashfs jffs2 targz ext2 usb
 CFLAGS:=-Os -pipe -march=armv5te -mtune=arm926ej-s -fno-caller-saves
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/atheros/Makefile b/target/linux/atheros/Makefile
index 1748f2447410fb2f9bb8a950264a887000acce62..13424b9f5cb24096aaf35233dc7c172bc50a3691 100644
--- a/target/linux/atheros/Makefile
+++ b/target/linux/atheros/Makefile
@@ -11,7 +11,7 @@ BOARD:=atheros
 BOARDNAME:=Atheros AR231x/AR5312
 FEATURES:=squashfs jffs2
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/avr32/Makefile b/target/linux/avr32/Makefile
index c26d84dcb231b54ca0b36712619e5140e511404c..240c3428d854551c488b8b61cb2438d21a72640c 100644
--- a/target/linux/avr32/Makefile
+++ b/target/linux/avr32/Makefile
@@ -12,7 +12,7 @@ BOARDNAME:=Atmel AVR32
 FEATURES:=squashfs
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/brcm47xx/Makefile b/target/linux/brcm47xx/Makefile
index f61867dbd456c3b6cf2e4420757bcd16cd3e64bd..4526396be1270d25c4a04f36f5a5683dba44bb1a 100644
--- a/target/linux/brcm47xx/Makefile
+++ b/target/linux/brcm47xx/Makefile
@@ -11,7 +11,7 @@ BOARD:=brcm47xx
 BOARDNAME:=Broadcom BCM947xx/953xx
 FEATURES:=squashfs usb pcmcia
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES += wpad-mini kmod-switch kmod-diag nvram
diff --git a/target/linux/brcm63xx/Makefile b/target/linux/brcm63xx/Makefile
index 529cbeb9a845076f57ba59d14b38b01de7d33636..a88882d28fa0e5b68b06b718dab12e2108e66da8 100644
--- a/target/linux/brcm63xx/Makefile
+++ b/target/linux/brcm63xx/Makefile
@@ -11,7 +11,7 @@ BOARD:=brcm63xx
 BOARDNAME:=Broadcom BCM63xx
 SUBTARGETS:=generic smp
 FEATURES:=squashfs jffs2 usb atm pci pcmcia
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
 include $(INCLUDE_DIR)/target.mk
diff --git a/target/linux/brcm63xx/patches-3.8/415-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch b/target/linux/brcm63xx/patches-3.8/415-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch
index 70026f1f5f3fd7b1de88761e36a60b160e4af90a..0b407c40b07a0689bf3b4fd4e286a8f89045fd94 100644
--- a/target/linux/brcm63xx/patches-3.8/415-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch
+++ b/target/linux/brcm63xx/patches-3.8/415-MIPS-BCM63XX-store-the-flash-type-in-global-variable.patch
@@ -96,7 +96,7 @@ Subject: [PATCH 38/59] MIPS: BCM63XX: store the flash type in global variable
  	case BCM63XX_FLASH_TYPE_PARALLEL:
  		/* read base address of boot chip select (0) */
  		val = bcm_mpi_readl(MPI_CSBASE_REG(0));
-@@ -152,7 +165,7 @@ int __init bcm63xx_flash_register(void)
+@@ -154,7 +167,7 @@ int __init bcm63xx_flash_register(void)
  		return -ENODEV;
  	default:
  		pr_err("flash detection failed for BCM%x: %d\n",
diff --git a/target/linux/cns21xx/Makefile b/target/linux/cns21xx/Makefile
index 6afca67b7c48009a06bf57754ee4cd74a6a4104d..7e2f7646c5a8dafca1ceacd01fd32028ff18b13e 100644
--- a/target/linux/cns21xx/Makefile
+++ b/target/linux/cns21xx/Makefile
@@ -12,7 +12,7 @@ BOARDNAME:=Cavium Networks Econa CNS21xx
 FEATURES:=squashfs
 CFLAGS:=-Os -pipe -march=armv4 -mtune=fa526 -fno-caller-saves
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/cns21xx/patches-3.8/104-cns21xx-usb-ehci-support.patch b/target/linux/cns21xx/patches-3.8/104-cns21xx-usb-ehci-support.patch
index 067e631995d45b88b54b11f9306064e34c1de649..e68974c87b86a2eee2ecea29a0e24dd75fdbafd3 100644
--- a/target/linux/cns21xx/patches-3.8/104-cns21xx-usb-ehci-support.patch
+++ b/target/linux/cns21xx/patches-3.8/104-cns21xx-usb-ehci-support.patch
@@ -1,6 +1,6 @@
 --- a/drivers/usb/host/ehci-hcd.c
 +++ b/drivers/usb/host/ehci-hcd.c
-@@ -1341,6 +1341,11 @@ MODULE_LICENSE ("GPL");
+@@ -1338,6 +1338,11 @@ MODULE_LICENSE ("GPL");
  #define	PLATFORM_DRIVER		ehci_hcd_sead3_driver
  #endif
  
diff --git a/target/linux/cns3xxx/Makefile b/target/linux/cns3xxx/Makefile
index 40e5d4efe315500f90b550b40c6a8966d21cb3cc..89fe6636045bff4ede159dc4161db3eb3815cccb 100644
--- a/target/linux/cns3xxx/Makefile
+++ b/target/linux/cns3xxx/Makefile
@@ -13,7 +13,7 @@ FEATURES:=squashfs fpu gpio pcie usb usbgadget
 CFLAGS:=-Os -pipe -march=armv6k -mtune=mpcore -mfloat-abi=softfp -mfpu=vfp -fno-caller-saves
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/ep93xx/Makefile b/target/linux/ep93xx/Makefile
index 3e42ac43316a7e039fa325d2ab939806c06a95fb..1f6c845de0e535bf2eb393fd153c268370cfb33b 100644
--- a/target/linux/ep93xx/Makefile
+++ b/target/linux/ep93xx/Makefile
@@ -13,7 +13,7 @@ FEATURES:=squashfs jffs2 ext4 targz usb display sound
 CFLAGS:=-Os -pipe -march=armv4t -fno-caller-saves
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 DEVICE_TYPE:=developerboard
 
diff --git a/target/linux/generic/patches-3.8/863-gpiommc.patch b/target/linux/generic/patches-3.8/863-gpiommc.patch
index 5f724e00737b366eace3528c97363697880ad0ad..f275c65a35b8a2669fb2bc4e14ab44692b4b141c 100644
--- a/target/linux/generic/patches-3.8/863-gpiommc.patch
+++ b/target/linux/generic/patches-3.8/863-gpiommc.patch
@@ -612,7 +612,7 @@
 +module_exit(gpiommc_modexit);
 --- a/drivers/mmc/host/Kconfig
 +++ b/drivers/mmc/host/Kconfig
-@@ -459,6 +459,31 @@ config MMC_SDHI
+@@ -449,6 +449,31 @@ config MMC_SDHI
  	  This provides support for the SDHI SD/SDIO controller found in
  	  SuperH and ARM SH-Mobile SoCs
  
diff --git a/target/linux/lantiq/Makefile b/target/linux/lantiq/Makefile
index 2e6573d3dd122318a1b27881f39fe0373394fe42..53cbc30c0f147f5a4aa536c6291ae2965e3e3599 100644
--- a/target/linux/lantiq/Makefile
+++ b/target/linux/lantiq/Makefile
@@ -11,7 +11,7 @@ BOARDNAME:=Lantiq GPON/XWAY/SVIP
 FEATURES:=squashfs jffs2
 SUBTARGETS=xway ase falcon
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 CFLAGS=-Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves -mno-branch-likely
 
diff --git a/target/linux/malta/Makefile b/target/linux/malta/Makefile
index c074f658ff44d0e6776bde396e083049b2e9e353..12a3c263b708dc54d1097e875744a6e01249a5cb 100644
--- a/target/linux/malta/Makefile
+++ b/target/linux/malta/Makefile
@@ -12,7 +12,7 @@ SUBTARGETS:=le be le64 be64
 INITRAMFS_EXTRA_FILES:=
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 DEVICE_TYPE:=developerboard
 
diff --git a/target/linux/mpc52xx/Makefile b/target/linux/mpc52xx/Makefile
index ddc41262550969abafd75dee5b897bd6ec912349..1415db0e334ad444f3669cb5570915f93501f428 100644
--- a/target/linux/mpc52xx/Makefile
+++ b/target/linux/mpc52xx/Makefile
@@ -12,7 +12,7 @@ BOARDNAME:=Freescale MPC52xx
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=603e
 FEATURES:=targz ext4
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/mpc83xx/Makefile b/target/linux/mpc83xx/Makefile
index 035ed1bd47c55c8500e85c82e5fd4742c58a72f6..b705c7e122194048f1c501582f6a6d9310259e18 100644
--- a/target/linux/mpc83xx/Makefile
+++ b/target/linux/mpc83xx/Makefile
@@ -13,7 +13,7 @@ CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=603e
 FEATURES:=squashfs targz
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/mpc85xx/Makefile b/target/linux/mpc85xx/Makefile
index 340db60f27b1d769e51900decea1b2eb5c07553c..cadf66519691d0bd126a3fc545d0c95311aa6771 100644
--- a/target/linux/mpc85xx/Makefile
+++ b/target/linux/mpc85xx/Makefile
@@ -14,7 +14,7 @@ FEATURES:=spe_fpu squashfs
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 SUBTARGETS=generic p1020
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/mvebu/Makefile b/target/linux/mvebu/Makefile
index 815aeba85bedde753486758715eb853e36766dde..de036e4c9f077480a00308b1f618322ccbfb6950 100644
--- a/target/linux/mvebu/Makefile
+++ b/target/linux/mvebu/Makefile
@@ -13,7 +13,7 @@ FEATURES:=targz usb jffs2 pci pcie gpio
 CFLAGS:=-Os -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/ppc40x/Makefile b/target/linux/ppc40x/Makefile
index cefea839775501062d4743e58b777a42a1f83029..7426422e656e020377e6df2509fec3c2dde4350c 100644
--- a/target/linux/ppc40x/Makefile
+++ b/target/linux/ppc40x/Makefile
@@ -13,7 +13,7 @@ FEATURES:=squashfs
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=405
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/ppc44x/Makefile b/target/linux/ppc44x/Makefile
index 06047da8f94e1cda8112ec208aff64bd2107d054..1f2efdc41c6452cf6f1d467984326406cef2cfcc 100644
--- a/target/linux/ppc44x/Makefile
+++ b/target/linux/ppc44x/Makefile
@@ -13,7 +13,7 @@ FEATURES:=squashfs broken
 CFLAGS:=-Os -pipe -fno-caller-saves -mcpu=440
 MAINTAINER:=Imre Kaloz <kaloz@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/ramips/Makefile b/target/linux/ramips/Makefile
index 1118923d5d96a0155721e26b43d7345788fa4eae..d4ad0c4032c9f2830bb1138b32f6659b9b57b504 100644
--- a/target/linux/ramips/Makefile
+++ b/target/linux/ramips/Makefile
@@ -13,7 +13,7 @@ SUBTARGETS:=rt288x rt305x rt3883
 CFLAGS:=-Os -pipe -fno-caller-saves -mno-branch-likely
 FEATURES:=squashfs gpio
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES+=\
diff --git a/target/linux/ramips/patches-3.8/0128-MIPS-ralink-add-pinmux-driver.patch b/target/linux/ramips/patches-3.8/0128-MIPS-ralink-add-pinmux-driver.patch
index 42717127b82cddea40cbd4f0e8e844062361a473..f28115cd18bdc89dd5856fe60b6dcffcb0a06dcd 100644
--- a/target/linux/ramips/patches-3.8/0128-MIPS-ralink-add-pinmux-driver.patch
+++ b/target/linux/ramips/patches-3.8/0128-MIPS-ralink-add-pinmux-driver.patch
@@ -16,10 +16,8 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  4 files changed, 81 insertions(+), 1 deletion(-)
  create mode 100644 arch/mips/ralink/pinmux.c
 
-Index: linux-3.8.11/arch/mips/ralink/Makefile
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/Makefile	2013-05-03 17:53:16.612004798 +0200
-+++ linux-3.8.11/arch/mips/ralink/Makefile	2013-05-06 12:29:27.516615708 +0200
+--- a/arch/mips/ralink/Makefile
++++ b/arch/mips/ralink/Makefile
 @@ -6,7 +6,7 @@
  # Copyright (C) 2009-2011 Gabor Juhos <juhosg@openwrt.org>
  # Copyright (C) 2013 John Crispin <blogic@openwrt.org>
@@ -29,22 +27,18 @@ Index: linux-3.8.11/arch/mips/ralink/Makefile
  
  obj-$(CONFIG_SOC_RT288X) += rt288x.o
  obj-$(CONFIG_SOC_RT305X) += rt305x.o
-Index: linux-3.8.11/arch/mips/ralink/common.h
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/common.h	2013-05-03 17:53:16.720004800 +0200
-+++ linux-3.8.11/arch/mips/ralink/common.h	2013-05-06 12:29:27.108615690 +0200
-@@ -50,4 +50,6 @@
+--- a/arch/mips/ralink/common.h
++++ b/arch/mips/ralink/common.h
+@@ -50,4 +50,6 @@ extern void prom_soc_init(struct ralink_
  
  __iomem void *plat_of_remap_node(const char *node);
  
 +void ralink_pinmux(void);
 +
  #endif /* _RALINK_COMMON_H__ */
-Index: linux-3.8.11/arch/mips/ralink/of.c
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/of.c	2013-05-03 17:53:16.780004804 +0200
-+++ linux-3.8.11/arch/mips/ralink/of.c	2013-05-06 12:29:27.108615690 +0200
-@@ -110,6 +110,8 @@
+--- a/arch/mips/ralink/of.c
++++ b/arch/mips/ralink/of.c
+@@ -110,6 +110,8 @@ static int __init plat_of_setup(void)
  	if (of_platform_populate(NULL, of_ids, NULL, NULL))
  		panic("failed to populate DT\n");
  
@@ -53,10 +47,8 @@ Index: linux-3.8.11/arch/mips/ralink/of.c
  	return 0;
  }
  
-Index: linux-3.8.11/arch/mips/ralink/pinmux.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/arch/mips/ralink/pinmux.c	2013-05-06 12:29:41.212616302 +0200
+--- /dev/null
++++ b/arch/mips/ralink/pinmux.c
 @@ -0,0 +1,77 @@
 +/*
 + *  This program is free software; you can redistribute it and/or modify it
diff --git a/target/linux/ramips/patches-3.8/0130-GPIO-MIPS-ralink-adds-ralink-gpio-support.patch b/target/linux/ramips/patches-3.8/0130-GPIO-MIPS-ralink-adds-ralink-gpio-support.patch
index e3eeae9e8ea5020b67875e4957b79eddc204f17b..cdff4312dd9b510c837a92fbe78a0292b01a55e5 100644
--- a/target/linux/ramips/patches-3.8/0130-GPIO-MIPS-ralink-adds-ralink-gpio-support.patch
+++ b/target/linux/ramips/patches-3.8/0130-GPIO-MIPS-ralink-adds-ralink-gpio-support.patch
@@ -17,11 +17,9 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  create mode 100644 arch/mips/include/asm/mach-ralink/gpio.h
  create mode 100644 drivers/gpio/gpio-ralink.c
 
-Index: linux-3.8.11/arch/mips/Kconfig
-===================================================================
---- linux-3.8.11.orig/arch/mips/Kconfig	2013-05-04 13:20:48.399042973 +0200
-+++ linux-3.8.11/arch/mips/Kconfig	2013-05-04 13:20:54.963043258 +0200
-@@ -449,6 +449,7 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -449,6 +449,7 @@ config RALINK
  	select SYS_HAS_EARLY_PRINTK
  	select HAVE_MACH_CLKDEV
  	select CLKDEV_LOOKUP
@@ -29,10 +27,8 @@ Index: linux-3.8.11/arch/mips/Kconfig
  
  config SGI_IP22
  	bool "SGI IP22 (Indy/Indigo2)"
-Index: linux-3.8.11/arch/mips/include/asm/mach-ralink/gpio.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/arch/mips/include/asm/mach-ralink/gpio.h	2013-05-04 13:20:54.963043258 +0200
+--- /dev/null
++++ b/arch/mips/include/asm/mach-ralink/gpio.h
 @@ -0,0 +1,24 @@
 +/*
 + *  Ralink SoC GPIO API support
@@ -58,11 +54,9 @@ Index: linux-3.8.11/arch/mips/include/asm/mach-ralink/gpio.h
 +#define gpio_to_irq	__gpio_to_irq
 +
 +#endif /* __ASM_MACH_RALINK_GPIO_H */
-Index: linux-3.8.11/drivers/gpio/Kconfig
-===================================================================
---- linux-3.8.11.orig/drivers/gpio/Kconfig	2013-05-04 13:20:48.399042973 +0200
-+++ linux-3.8.11/drivers/gpio/Kconfig	2013-05-04 13:20:54.963043258 +0200
-@@ -201,6 +201,12 @@
+--- a/drivers/gpio/Kconfig
++++ b/drivers/gpio/Kconfig
+@@ -201,6 +201,12 @@ config GPIO_PXA
  	help
  	  Say yes here to support the PXA GPIO device
  
@@ -75,11 +69,9 @@ Index: linux-3.8.11/drivers/gpio/Kconfig
  config GPIO_SPEAR_SPICS
  	bool "ST SPEAr13xx SPI Chip Select as GPIO support"
  	depends on PLAT_SPEAR
-Index: linux-3.8.11/drivers/gpio/Makefile
-===================================================================
---- linux-3.8.11.orig/drivers/gpio/Makefile	2013-05-04 13:20:48.399042973 +0200
-+++ linux-3.8.11/drivers/gpio/Makefile	2013-05-04 13:20:54.963043258 +0200
-@@ -54,6 +54,7 @@
+--- a/drivers/gpio/Makefile
++++ b/drivers/gpio/Makefile
+@@ -54,6 +54,7 @@ obj-$(CONFIG_GPIO_PCF857X)	+= gpio-pcf85
  obj-$(CONFIG_GPIO_PCH)		+= gpio-pch.o
  obj-$(CONFIG_GPIO_PL061)	+= gpio-pl061.o
  obj-$(CONFIG_GPIO_PXA)		+= gpio-pxa.o
@@ -87,10 +79,8 @@ Index: linux-3.8.11/drivers/gpio/Makefile
  obj-$(CONFIG_GPIO_RC5T583)	+= gpio-rc5t583.o
  obj-$(CONFIG_GPIO_RDC321X)	+= gpio-rdc321x.o
  obj-$(CONFIG_PLAT_SAMSUNG)	+= gpio-samsung.o
-Index: linux-3.8.11/drivers/gpio/gpio-ralink.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/gpio/gpio-ralink.c	2013-05-06 11:39:24.816485479 +0200
+--- /dev/null
++++ b/drivers/gpio/gpio-ralink.c
 @@ -0,0 +1,182 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify it
diff --git a/target/linux/ramips/patches-3.8/0136-NET-MIPS-add-ralink-SoC-ethernet-driver.patch b/target/linux/ramips/patches-3.8/0136-NET-MIPS-add-ralink-SoC-ethernet-driver.patch
index 66abc8bc8e20279e65b57e27ad2df84115a97428..9bb9b5fb2a35d88292d1086cb54b8ec6e05a8018 100644
--- a/target/linux/ramips/patches-3.8/0136-NET-MIPS-add-ralink-SoC-ethernet-driver.patch
+++ b/target/linux/ramips/patches-3.8/0136-NET-MIPS-add-ralink-SoC-ethernet-driver.patch
@@ -26,10 +26,8 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  create mode 100644 drivers/net/ethernet/ramips/ramips_eth.h
  create mode 100644 drivers/net/ethernet/ramips/ramips_main.c
 
-Index: linux-3.8.11/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h	2013-05-06 12:43:38.148652601 +0200
+--- /dev/null
++++ b/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h
 @@ -0,0 +1,27 @@
 +/*
 + *  Ralink RT305x SoC platform device registration
@@ -58,11 +56,9 @@ Index: linux-3.8.11/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h
 +};
 +
 +#endif /* _RT305X_ESW_PLATFORM_H */
-Index: linux-3.8.11/arch/mips/ralink/rt305x.c
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/rt305x.c	2013-05-06 12:43:38.016652594 +0200
-+++ linux-3.8.11/arch/mips/ralink/rt305x.c	2013-05-06 12:43:38.148652601 +0200
-@@ -221,6 +221,7 @@
+--- a/arch/mips/ralink/rt305x.c
++++ b/arch/mips/ralink/rt305x.c
+@@ -221,6 +221,7 @@ void __init ralink_clk_init(void)
  	}
  
  	ralink_clk_add("cpu", cpu_rate);
@@ -70,11 +66,9 @@ Index: linux-3.8.11/arch/mips/ralink/rt305x.c
  	ralink_clk_add("10000b00.spi", sys_rate);
  	ralink_clk_add("10000100.timer", wdt_rate);
  	ralink_clk_add("10000120.watchdog", wdt_rate);
-Index: linux-3.8.11/drivers/net/ethernet/Kconfig
-===================================================================
---- linux-3.8.11.orig/drivers/net/ethernet/Kconfig	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/drivers/net/ethernet/Kconfig	2013-05-06 12:43:38.148652601 +0200
-@@ -136,6 +136,7 @@
+--- a/drivers/net/ethernet/Kconfig
++++ b/drivers/net/ethernet/Kconfig
+@@ -136,6 +136,7 @@ source "drivers/net/ethernet/packetengin
  source "drivers/net/ethernet/pasemi/Kconfig"
  source "drivers/net/ethernet/qlogic/Kconfig"
  source "drivers/net/ethernet/racal/Kconfig"
@@ -82,11 +76,9 @@ Index: linux-3.8.11/drivers/net/ethernet/Kconfig
  source "drivers/net/ethernet/realtek/Kconfig"
  source "drivers/net/ethernet/renesas/Kconfig"
  source "drivers/net/ethernet/rdc/Kconfig"
-Index: linux-3.8.11/drivers/net/ethernet/Makefile
-===================================================================
---- linux-3.8.11.orig/drivers/net/ethernet/Makefile	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/drivers/net/ethernet/Makefile	2013-05-06 12:43:38.148652601 +0200
-@@ -54,6 +54,7 @@
+--- a/drivers/net/ethernet/Makefile
++++ b/drivers/net/ethernet/Makefile
+@@ -54,6 +54,7 @@ obj-$(CONFIG_NET_PACKET_ENGINE) += packe
  obj-$(CONFIG_NET_VENDOR_PASEMI) += pasemi/
  obj-$(CONFIG_NET_VENDOR_QLOGIC) += qlogic/
  obj-$(CONFIG_NET_VENDOR_RACAL) += racal/
@@ -94,10 +86,8 @@ Index: linux-3.8.11/drivers/net/ethernet/Makefile
  obj-$(CONFIG_NET_VENDOR_REALTEK) += realtek/
  obj-$(CONFIG_SH_ETH) += renesas/
  obj-$(CONFIG_NET_VENDOR_RDC) += rdc/
-Index: linux-3.8.11/drivers/net/ethernet/ramips/Kconfig
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/Kconfig	2013-05-06 12:43:38.148652601 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/Kconfig
 @@ -0,0 +1,18 @@
 +config NET_RAMIPS
 +       tristate "Ralink RT288X/RT3X5X/RT3662/RT3883 ethernet driver"
@@ -117,10 +107,8 @@ Index: linux-3.8.11/drivers/net/ethernet/ramips/Kconfig
 +	depends on DEBUG_FS
 +
 +endif
-Index: linux-3.8.11/drivers/net/ethernet/ramips/Makefile
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/Makefile	2013-05-06 12:43:38.148652601 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/Makefile
 @@ -0,0 +1,9 @@
 +#
 +# Makefile for the Ramips SoCs built-in ethernet macs
@@ -131,10 +119,8 @@ Index: linux-3.8.11/drivers/net/ethernet/ramips/Makefile
 +ramips-$(CONFIG_NET_RAMIPS_DEBUG_FS)	+= ramips_debugfs.o
 +
 +obj-$(CONFIG_NET_RAMIPS)	+= ramips.o
-Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_debugfs.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/ramips_debugfs.c	2013-05-06 12:43:38.148652601 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/ramips_debugfs.c
 @@ -0,0 +1,127 @@
 +/*
 + *  Ralink SoC ethernet driver debugfs code
@@ -263,10 +249,8 @@ Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_debugfs.c
 +	debugfs_remove(raeth_debugfs_root);
 +	raeth_debugfs_root = NULL;
 +}
-Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_esw.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/ramips_esw.c	2013-05-06 12:43:38.148652601 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/ramips_esw.c
 @@ -0,0 +1,1221 @@
 +#include <linux/ioport.h>
 +#include <linux/switch.h>
@@ -1489,10 +1473,8 @@ Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_esw.c
 +{
 +	platform_driver_unregister(&rt305x_esw_driver);
 +}
-Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_eth.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/ramips_eth.h	2013-05-06 12:43:38.152652600 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/ramips_eth.h
 @@ -0,0 +1,375 @@
 +/*
 + *   This program is free software; you can redistribute it and/or modify
@@ -1869,10 +1851,8 @@ Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_eth.h
 +#endif /* CONFIG_NET_RAMIPS_DEBUG_FS */
 +
 +#endif /* RAMIPS_ETH_H */
-Index: linux-3.8.11/drivers/net/ethernet/ramips/ramips_main.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/drivers/net/ethernet/ramips/ramips_main.c	2013-05-06 13:55:12.572838852 +0200
+--- /dev/null
++++ b/drivers/net/ethernet/ramips/ramips_main.c
 @@ -0,0 +1,1281 @@
 +/*
 + *   This program is free software; you can redistribute it and/or modify
diff --git a/target/linux/ramips/patches-3.8/0204-owrt-MIPS-ralink-add-usb-platform-support.patch b/target/linux/ramips/patches-3.8/0204-owrt-MIPS-ralink-add-usb-platform-support.patch
index 30e1b87fe7d27df2e04e5b0e778d9034f22219e8..0fedc91b77c83c7250328c2c43bb750addcc160b 100644
--- a/target/linux/ramips/patches-3.8/0204-owrt-MIPS-ralink-add-usb-platform-support.patch
+++ b/target/linux/ramips/patches-3.8/0204-owrt-MIPS-ralink-add-usb-platform-support.patch
@@ -19,10 +19,8 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  create mode 100644 arch/mips/ralink/rt305x-usb.c
  create mode 100644 arch/mips/ralink/rt3883-usb.c
 
-Index: linux-3.8.11/arch/mips/ralink/Makefile
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/Makefile	2013-05-06 09:58:57.772224085 +0200
-+++ linux-3.8.11/arch/mips/ralink/Makefile	2013-05-06 10:01:59.252231955 +0200
+--- a/arch/mips/ralink/Makefile
++++ b/arch/mips/ralink/Makefile
 @@ -9,8 +9,8 @@
  obj-y := prom.o of.o reset.o clk.o irq.o pinmux.o timer.o
  
@@ -34,22 +32,18 @@ Index: linux-3.8.11/arch/mips/ralink/Makefile
  obj-$(CONFIG_SOC_MT7620) += mt7620.o
  
  obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
-Index: linux-3.8.11/arch/mips/ralink/common.h
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/common.h	2013-05-06 09:58:57.748224086 +0200
-+++ linux-3.8.11/arch/mips/ralink/common.h	2013-05-06 09:58:58.100224099 +0200
-@@ -51,5 +51,6 @@
+--- a/arch/mips/ralink/common.h
++++ b/arch/mips/ralink/common.h
+@@ -51,5 +51,6 @@ extern void prom_soc_init(struct ralink_
  __iomem void *plat_of_remap_node(const char *node);
  
  void ralink_pinmux(void);
 +void ralink_usb_platform(void);
  
  #endif /* _RALINK_COMMON_H__ */
-Index: linux-3.8.11/arch/mips/ralink/mt7620.c
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/mt7620.c	2013-05-06 09:58:57.696224079 +0200
-+++ linux-3.8.11/arch/mips/ralink/mt7620.c	2013-05-06 09:58:58.100224099 +0200
-@@ -140,6 +140,11 @@
+--- a/arch/mips/ralink/mt7620.c
++++ b/arch/mips/ralink/mt7620.c
+@@ -140,6 +140,11 @@ struct ralink_pinmux rt_gpio_pinmux = {
  	.uart_mask = MT7620_GPIO_MODE_GPIO,
  };
  
@@ -61,11 +55,9 @@ Index: linux-3.8.11/arch/mips/ralink/mt7620.c
  void __init ralink_clk_init(void)
  {
  	unsigned long cpu_rate, sys_rate;
-Index: linux-3.8.11/arch/mips/ralink/of.c
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/of.c	2013-05-06 09:58:57.748224086 +0200
-+++ linux-3.8.11/arch/mips/ralink/of.c	2013-05-06 10:01:59.252231955 +0200
-@@ -111,6 +111,7 @@
+--- a/arch/mips/ralink/of.c
++++ b/arch/mips/ralink/of.c
+@@ -111,6 +111,7 @@ static int __init plat_of_setup(void)
  		panic("failed to populate DT\n");
  
  	ralink_pinmux();
@@ -73,10 +65,8 @@ Index: linux-3.8.11/arch/mips/ralink/of.c
  
  	return 0;
  }
-Index: linux-3.8.11/arch/mips/ralink/rt305x-usb.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/arch/mips/ralink/rt305x-usb.c	2013-05-06 09:58:58.100224099 +0200
+--- /dev/null
++++ b/arch/mips/ralink/rt305x-usb.c
 @@ -0,0 +1,120 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify it
@@ -198,10 +188,8 @@ Index: linux-3.8.11/arch/mips/ralink/rt305x-usb.c
 +				&rt3352_ehci_data, &rt3352_ehci_dmamask);
 +	}
 +}
-Index: linux-3.8.11/arch/mips/ralink/rt3883-usb.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-3.8.11/arch/mips/ralink/rt3883-usb.c	2013-05-06 09:58:58.100224099 +0200
+--- /dev/null
++++ b/arch/mips/ralink/rt3883-usb.c
 @@ -0,0 +1,118 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify it
@@ -321,11 +309,9 @@ Index: linux-3.8.11/arch/mips/ralink/rt3883-usb.c
 +	ralink_add_usb("ehci-platform",
 +			&rt3883_ehci_data, &rt3883_ehci_dmamask);
 +}
-Index: linux-3.8.11/arch/mips/ralink/rt288x.c
-===================================================================
---- linux-3.8.11.orig/arch/mips/ralink/rt288x.c	2013-05-06 09:58:57.644224079 +0200
-+++ linux-3.8.11/arch/mips/ralink/rt288x.c	2013-05-06 10:02:32.216233389 +0200
-@@ -74,6 +74,11 @@
+--- a/arch/mips/ralink/rt288x.c
++++ b/arch/mips/ralink/rt288x.c
+@@ -74,6 +74,11 @@ struct ralink_pinmux rt_gpio_pinmux = {
  	.wdt_reset = rt288x_wdt_reset,
  };
  
diff --git a/target/linux/ramips/patches-3.8/0209-owrt-GPIO-add-gpio_export_with_name.patch b/target/linux/ramips/patches-3.8/0209-owrt-GPIO-add-gpio_export_with_name.patch
index 80d9402b30c04885d5fed8953922517e9d7cad04..c0a1d35c8c8d4f3ece3141db3e482b68a87fe3bf 100644
--- a/target/linux/ramips/patches-3.8/0209-owrt-GPIO-add-gpio_export_with_name.patch
+++ b/target/linux/ramips/patches-3.8/0209-owrt-GPIO-add-gpio_export_with_name.patch
@@ -14,11 +14,9 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  include/linux/gpio.h                            |   23 ++++++++-
  5 files changed, 160 insertions(+), 8 deletions(-)
 
-Index: linux-3.8.11/Documentation/devicetree/bindings/gpio/gpio.txt
-===================================================================
---- linux-3.8.11.orig/Documentation/devicetree/bindings/gpio/gpio.txt	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/Documentation/devicetree/bindings/gpio/gpio.txt	2013-05-06 12:43:38.252652605 +0200
-@@ -112,3 +112,63 @@
+--- a/Documentation/devicetree/bindings/gpio/gpio.txt
++++ b/Documentation/devicetree/bindings/gpio/gpio.txt
+@@ -112,3 +112,63 @@ where,
  
  The pinctrl node must have "#gpio-range-cells" property to show number of
  arguments to pass with phandle from gpio controllers node.
@@ -82,10 +80,8 @@ Index: linux-3.8.11/Documentation/devicetree/bindings/gpio/gpio.txt
 +		gpio-export,output = <1>;
 +	};
 +};
-Index: linux-3.8.11/drivers/gpio/gpiolib-of.c
-===================================================================
---- linux-3.8.11.orig/drivers/gpio/gpiolib-of.c	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/drivers/gpio/gpiolib-of.c	2013-05-06 13:35:56.452788709 +0200
+--- a/drivers/gpio/gpiolib-of.c
++++ b/drivers/gpio/gpiolib-of.c
 @@ -21,6 +21,8 @@
  #include <linux/of_gpio.h>
  #include <linux/pinctrl/pinctrl.h>
@@ -95,7 +91,7 @@ Index: linux-3.8.11/drivers/gpio/gpiolib-of.c
  
  /* Private data structure for of_gpiochip_find_and_xlate */
  struct gg_data {
-@@ -288,3 +290,69 @@
+@@ -288,3 +290,69 @@ void of_gpiochip_remove(struct gpio_chip
  	if (chip->of_node)
  		of_node_put(chip->of_node);
  }
@@ -165,11 +161,9 @@ Index: linux-3.8.11/drivers/gpio/gpiolib-of.c
 +	return platform_driver_probe(&gpio_export_driver, of_gpio_export_probe);
 +}
 +device_initcall(of_gpio_export_init);
-Index: linux-3.8.11/drivers/gpio/gpiolib.c
-===================================================================
---- linux-3.8.11.orig/drivers/gpio/gpiolib.c	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/drivers/gpio/gpiolib.c	2013-05-06 13:31:35.060777376 +0200
-@@ -714,9 +714,10 @@
+--- a/drivers/gpio/gpiolib.c
++++ b/drivers/gpio/gpiolib.c
+@@ -714,9 +714,10 @@ static struct class gpio_class = {
  
  
  /**
@@ -181,7 +175,7 @@ Index: linux-3.8.11/drivers/gpio/gpiolib.c
   * Context: arch_initcall or later
   *
   * When drivers want to make a GPIO accessible to userspace after they
-@@ -728,7 +729,7 @@
+@@ -728,7 +729,7 @@ static struct class gpio_class = {
   *
   * Returns zero on success, else an error.
   */
@@ -190,7 +184,7 @@ Index: linux-3.8.11/drivers/gpio/gpiolib.c
  {
  	unsigned long		flags;
  	struct gpio_desc	*desc;
-@@ -762,6 +763,8 @@
+@@ -762,6 +763,8 @@ int gpio_export(unsigned gpio, bool dire
  		goto fail_unlock;
  	}
  
@@ -199,7 +193,7 @@ Index: linux-3.8.11/drivers/gpio/gpiolib.c
  	if (!desc->chip->direction_input || !desc->chip->direction_output)
  		direction_may_change = false;
  	spin_unlock_irqrestore(&gpio_lock, flags);
-@@ -804,7 +807,7 @@
+@@ -804,7 +807,7 @@ fail_unlock:
  	pr_debug("%s: gpio%d status %d\n", __func__, gpio, status);
  	return status;
  }
@@ -208,7 +202,7 @@ Index: linux-3.8.11/drivers/gpio/gpiolib.c
  
  static int match_export(struct device *dev, void *data)
  {
-@@ -1418,6 +1421,9 @@
+@@ -1418,6 +1421,9 @@ int gpio_request_one(unsigned gpio, unsi
  	if (flags & GPIOF_OPEN_SOURCE)
  		set_bit(FLAG_OPEN_SOURCE, &gpio_desc[gpio].flags);
  
@@ -218,11 +212,9 @@ Index: linux-3.8.11/drivers/gpio/gpiolib.c
  	if (flags & GPIOF_DIR_IN)
  		err = gpio_direction_input(gpio);
  	else
-Index: linux-3.8.11/include/asm-generic/gpio.h
-===================================================================
---- linux-3.8.11.orig/include/asm-generic/gpio.h	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/include/asm-generic/gpio.h	2013-05-06 12:43:38.252652605 +0200
-@@ -204,7 +204,8 @@
+--- a/include/asm-generic/gpio.h
++++ b/include/asm-generic/gpio.h
+@@ -204,7 +204,8 @@ void devm_gpio_free(struct device *dev,
   * A sysfs interface can be exported by individual drivers if they want,
   * but more typically is configured entirely from userspace.
   */
@@ -232,7 +224,7 @@ Index: linux-3.8.11/include/asm-generic/gpio.h
  extern int gpio_export_link(struct device *dev, const char *name,
  			unsigned gpio);
  extern int gpio_sysfs_set_active_low(unsigned gpio, int value);
-@@ -249,7 +250,8 @@
+@@ -249,7 +250,8 @@ struct device;
  
  /* sysfs support is only available with gpiolib, where it's optional */
  
@@ -242,10 +234,8 @@ Index: linux-3.8.11/include/asm-generic/gpio.h
  {
  	return -ENOSYS;
  }
-Index: linux-3.8.11/include/linux/gpio.h
-===================================================================
---- linux-3.8.11.orig/include/linux/gpio.h	2013-05-01 18:56:10.000000000 +0200
-+++ linux-3.8.11/include/linux/gpio.h	2013-05-06 13:32:59.796781050 +0200
+--- a/include/linux/gpio.h
++++ b/include/linux/gpio.h
 @@ -27,6 +27,9 @@
  #define GPIOF_EXPORT_DIR_FIXED	(GPIOF_EXPORT)
  #define GPIOF_EXPORT_DIR_CHANGEABLE (GPIOF_EXPORT | GPIOF_EXPORT_CHANGEABLE)
@@ -256,7 +246,7 @@ Index: linux-3.8.11/include/linux/gpio.h
  /**
   * struct gpio - a structure describing a GPIO with configuration
   * @gpio:	the GPIO number
-@@ -189,7 +192,8 @@
+@@ -189,7 +192,8 @@ static inline void gpio_set_value_cansle
  	WARN_ON(1);
  }
  
@@ -266,7 +256,7 @@ Index: linux-3.8.11/include/linux/gpio.h
  {
  	/* GPIO can never have been requested or set as {in,out}put */
  	WARN_ON(1);
-@@ -248,4 +252,24 @@
+@@ -248,4 +252,24 @@ gpiochip_remove_pin_ranges(struct gpio_c
  
  #endif /* ! CONFIG_GENERIC_GPIO */
  
diff --git a/target/linux/rb532/Makefile b/target/linux/rb532/Makefile
index 2dbfc36e5e31eb1587a700f16f89a00126c08a0e..8740b67c2f35dc1a523ecf76c8429692d2b3f8b1 100644
--- a/target/linux/rb532/Makefile
+++ b/target/linux/rb532/Makefile
@@ -11,7 +11,7 @@ BOARD:=rb532
 BOARDNAME:=Mikrotik RouterBoard 532
 FEATURES:=jffs2 pci targz broken
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 DEFAULT_PACKAGES += wpad-mini kmod-madwifi kmod-input-rb532
diff --git a/target/linux/realview/Makefile b/target/linux/realview/Makefile
index f92bc47ac3f122509014df0adfedbbc1bf996c93..4b0152f1dd99dadbf0732397336ea90369ee7ade 100644
--- a/target/linux/realview/Makefile
+++ b/target/linux/realview/Makefile
@@ -13,7 +13,7 @@ FEATURES:=fpu ramdisk
 CFLAGS:=-Os -pipe -march=armv6k -mtune=mpcore -mfloat-abi=softfp -mfpu=vfp -fno-caller-saves
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 DEVICE_TYPE:=developerboard
 
diff --git a/target/linux/uml/Makefile b/target/linux/uml/Makefile
index e6fd3615760e338880dc1f2939a6fe3cd23017c1..7af01fbe7d8634563b82c1fd07117849b419a8c3 100644
--- a/target/linux/uml/Makefile
+++ b/target/linux/uml/Makefile
@@ -23,7 +23,7 @@ BOARDNAME:=User Mode Linux
 FEATURES:=ext4 audio
 MAINTAINER:=Florian Fainelli <florian@openwrt.org>
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/x86/alix2/target.mk b/target/linux/x86/alix2/target.mk
index 9588949797b14786fa2dc477fb0521fe254ac8c1..e58fdca28782b42eeb88785bfd0e33df5a3ee10c 100644
--- a/target/linux/x86/alix2/target.mk
+++ b/target/linux/x86/alix2/target.mk
@@ -19,7 +19,7 @@ DEFAULT_PACKAGES += \
 			kmod-ledtrig-heartbeat kmod-ledtrig-gpio \
 			kmod-ledtrig-netdev \
 			kmod-cpu-msr hwclock wpad
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 CS5535_MASK:=0x0b000042
 
 CFLAGS += -march=geode -Os -mmmx -m3dnow -fno-align-jumps -fno-align-functions \
diff --git a/target/linux/x86/generic/target.mk b/target/linux/x86/generic/target.mk
index 5d384a1238d78bca63168761bd2b01ec3ef87f96..bba187c2a888a3f193d6899a9d71fe995a702473 100644
--- a/target/linux/x86/generic/target.mk
+++ b/target/linux/x86/generic/target.mk
@@ -1,6 +1,6 @@
 BOARDNAME:=Generic
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 define Target/Description
 	Build firmware images for x86 based boards
diff --git a/target/linux/x86/geos/target.mk b/target/linux/x86/geos/target.mk
index 30930e9a7fbe6f15476fb3945e75cc17c0a601ab..81af5fb795b039ee88d15caae76f73f98c7a7e5a 100644
--- a/target/linux/x86/geos/target.mk
+++ b/target/linux/x86/geos/target.mk
@@ -21,7 +21,7 @@ DEFAULT_PACKAGES += \
             kmod-cpu-msr \
             soloscli linux-atm br2684ctl ppp-mod-pppoa pppdump pppstats \
             hwclock wpad flashrom tc
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 CS5535_MASK:=0x0E000048
 
 CFLAGS += -march=geode -Os -mmmx -m3dnow -fno-align-jumps -fno-align-functions \
diff --git a/target/linux/xburst/Makefile b/target/linux/xburst/Makefile
index 13c4c6f0aaafc30ebf78326063c0185262114d24..6525c83670320bf606bccbfce942a7a0a7a27c34 100644
--- a/target/linux/xburst/Makefile
+++ b/target/linux/xburst/Makefile
@@ -12,7 +12,7 @@ BOARDNAME:=Ingenic XBurst
 FEATURES:=jffs2 targz ubifs audio broken
 SUBTARGETS:=qi_lb60 n516 n526 id800wt
 
-LINUX_VERSION:=3.8.11
+LINUX_VERSION:=3.8.12
 
 DEVICE_TYPE=other