mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	refresh 2.6.26 patches
SVN-Revision: 13135
This commit is contained in:
		
							parent
							
								
									2c638cf43b
								
							
						
					
					
						commit
						a1bf28950d
					
				@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -18,6 +18,21 @@
 | 
			
		||||
@@ -18,6 +18,21 @@ choice
 | 
			
		||||
 	prompt "System type"
 | 
			
		||||
 	default SGI_IP22
 | 
			
		||||
 
 | 
			
		||||
@ -22,7 +22,7 @@
 | 
			
		||||
 config MACH_ALCHEMY
 | 
			
		||||
 	bool "Alchemy processor based machines"
 | 
			
		||||
 
 | 
			
		||||
@@ -687,6 +702,7 @@
 | 
			
		||||
@@ -687,6 +702,7 @@ config WR_PPMC
 | 
			
		||||
 
 | 
			
		||||
 endchoice
 | 
			
		||||
 
 | 
			
		||||
@ -32,7 +32,7 @@
 | 
			
		||||
 source "arch/mips/jazz/Kconfig"
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -174,6 +174,21 @@
 | 
			
		||||
@@ -174,6 +174,21 @@ cflags-$(CONFIG_MACH_JAZZ)	+= -Iinclude/
 | 
			
		||||
 load-$(CONFIG_MACH_JAZZ)	+= 0xffffffff80080000
 | 
			
		||||
 
 | 
			
		||||
 #
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/maps/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/maps/Kconfig
 | 
			
		||||
@@ -586,5 +586,9 @@
 | 
			
		||||
@@ -586,5 +586,9 @@ config MTD_PLATRAM
 | 
			
		||||
 
 | 
			
		||||
 	  This selection automatically selects the map_ram driver.
 | 
			
		||||
 
 | 
			
		||||
@ -12,7 +12,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/mtd/maps/Makefile
 | 
			
		||||
+++ b/drivers/mtd/maps/Makefile
 | 
			
		||||
@@ -44,6 +44,7 @@
 | 
			
		||||
@@ -44,6 +44,7 @@ obj-$(CONFIG_MTD_DBOX2)		+= dbox2-flash.
 | 
			
		||||
 obj-$(CONFIG_MTD_SOLUTIONENGINE)+= solutionengine.o
 | 
			
		||||
 obj-$(CONFIG_MTD_PCI)		+= pci.o
 | 
			
		||||
 obj-$(CONFIG_MTD_ALCHEMY)       += alchemy-flash.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/Kconfig
 | 
			
		||||
+++ b/drivers/net/Kconfig
 | 
			
		||||
@@ -613,6 +613,10 @@
 | 
			
		||||
@@ -613,6 +613,10 @@ config MIPS_AU1X00_ENET
 | 
			
		||||
 	  If you have an Alchemy Semi AU1X00 based system
 | 
			
		||||
 	  say Y.  Otherwise, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -13,7 +13,7 @@
 | 
			
		||||
 	depends on PCI && SGI_IP27
 | 
			
		||||
--- a/drivers/net/Makefile
 | 
			
		||||
+++ b/drivers/net/Makefile
 | 
			
		||||
@@ -186,6 +186,7 @@
 | 
			
		||||
@@ -186,6 +186,7 @@ obj-$(CONFIG_SC92031) += sc92031.o
 | 
			
		||||
 # This is also a 82596 and should probably be merged
 | 
			
		||||
 obj-$(CONFIG_LP486E) += lp486e.o
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -13,7 +13,7 @@
 | 
			
		||||
 	depends on USB
 | 
			
		||||
--- a/drivers/usb/host/Makefile
 | 
			
		||||
+++ b/drivers/usb/host/Makefile
 | 
			
		||||
@@ -10,6 +10,7 @@
 | 
			
		||||
@@ -10,6 +10,7 @@ isp1760-objs := isp1760-hcd.o isp1760-if
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_PCI)		+= pci-quirks.o
 | 
			
		||||
 
 | 
			
		||||
@ -23,7 +23,7 @@
 | 
			
		||||
 obj-$(CONFIG_USB_OHCI_HCD)	+= ohci-hcd.o
 | 
			
		||||
--- a/drivers/usb/Makefile
 | 
			
		||||
+++ b/drivers/usb/Makefile
 | 
			
		||||
@@ -16,6 +16,7 @@
 | 
			
		||||
@@ -16,6 +16,7 @@ obj-$(CONFIG_USB_UHCI_HCD)	+= host/
 | 
			
		||||
 obj-$(CONFIG_USB_SL811_HCD)	+= host/
 | 
			
		||||
 obj-$(CONFIG_USB_U132_HCD)	+= host/
 | 
			
		||||
 obj-$(CONFIG_USB_R8A66597_HCD)	+= host/
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/pci/Makefile
 | 
			
		||||
+++ b/arch/mips/pci/Makefile
 | 
			
		||||
@@ -48,3 +48,4 @@
 | 
			
		||||
@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938)	+= fixup-
 | 
			
		||||
 obj-$(CONFIG_VICTOR_MPC30X)	+= fixup-mpc30x.o
 | 
			
		||||
 obj-$(CONFIG_ZAO_CAPCELLA)	+= fixup-capcella.o
 | 
			
		||||
 obj-$(CONFIG_WR_PPMC)		+= fixup-wrppmc.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/leds/Kconfig
 | 
			
		||||
+++ b/drivers/leds/Kconfig
 | 
			
		||||
@@ -207,4 +207,12 @@
 | 
			
		||||
@@ -207,4 +207,12 @@ config LEDS_TRIGGER_NETDEV
 | 
			
		||||
 	  This allows LEDs to be controlled by network device activity.
 | 
			
		||||
 	  If unsure, say Y.
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 endif # NEW_LEDS
 | 
			
		||||
--- a/drivers/leds/Makefile
 | 
			
		||||
+++ b/drivers/leds/Makefile
 | 
			
		||||
@@ -30,3 +30,4 @@
 | 
			
		||||
@@ -30,3 +30,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+= 
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)	+= ledtrig-default-on.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_MORSE)	+= ledtrig-morse.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_NETDEV)      += ledtrig-netdev.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/Kconfig
 | 
			
		||||
@@ -174,6 +174,22 @@
 | 
			
		||||
@@ -174,6 +174,22 @@ config MTD_AR7_PARTS
 | 
			
		||||
 	---help---
 | 
			
		||||
 	  TI AR7 partitioning support
 | 
			
		||||
 
 | 
			
		||||
@ -25,7 +25,7 @@
 | 
			
		||||
 config MTD_CHAR
 | 
			
		||||
--- a/drivers/mtd/Makefile
 | 
			
		||||
+++ b/drivers/mtd/Makefile
 | 
			
		||||
@@ -13,6 +13,7 @@
 | 
			
		||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdli
 | 
			
		||||
 obj-$(CONFIG_MTD_AFS_PARTS)	+= afs.o
 | 
			
		||||
 obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
 | 
			
		||||
 obj-$(CONFIG_MTD_OF_PARTS)      += ofpart.o
 | 
			
		||||
 | 
			
		||||
@ -20,7 +20,7 @@
 | 
			
		||||
 static int cfi_amdstd_read (struct mtd_info *, loff_t, size_t, size_t *, u_char *);
 | 
			
		||||
 static int cfi_amdstd_write_words(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
 | 
			
		||||
 static int cfi_amdstd_write_buffers(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
 | 
			
		||||
@@ -243,6 +250,41 @@
 | 
			
		||||
@@ -243,6 +250,41 @@ static void fixup_s29gl032n_sectors(stru
 | 
			
		||||
 	}
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -62,7 +62,7 @@
 | 
			
		||||
 static struct cfi_fixup cfi_fixup_table[] = {
 | 
			
		||||
 	{ CFI_MFR_ATMEL, CFI_ID_ANY, fixup_convert_atmel_pri, NULL },
 | 
			
		||||
 #ifdef AMD_BOOTLOC_BUG
 | 
			
		||||
@@ -278,6 +320,9 @@
 | 
			
		||||
@@ -278,6 +320,9 @@ static struct cfi_fixup fixup_table[] = 
 | 
			
		||||
 	 */
 | 
			
		||||
 	{ CFI_MFR_ANY, CFI_ID_ANY, fixup_use_erase_chip, NULL },
 | 
			
		||||
 	{ CFI_MFR_ATMEL, AT49BV6416, fixup_use_atmel_lock, NULL },
 | 
			
		||||
@ -74,7 +74,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/mtd/chips/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/chips/Kconfig
 | 
			
		||||
@@ -196,6 +196,14 @@
 | 
			
		||||
@@ -196,6 +196,14 @@ config MTD_CFI_AMDSTD
 | 
			
		||||
 	  provides support for one of those command sets, used on chips
 | 
			
		||||
 	  including the AMD Am29LV320.
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 #define PM49FL002	0x006D
 | 
			
		||||
 #define PM49FL004	0x006E
 | 
			
		||||
 #define PM49FL008	0x006A
 | 
			
		||||
@@ -1173,6 +1177,54 @@
 | 
			
		||||
@@ -1173,6 +1177,54 @@ static const struct amd_flash_info jedec
 | 
			
		||||
 			ERASEINFO(0x02000,2),
 | 
			
		||||
 			ERASEINFO(0x04000,1),
 | 
			
		||||
 		}
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/Kconfig
 | 
			
		||||
@@ -57,6 +57,11 @@
 | 
			
		||||
@@ -57,6 +57,11 @@ config MTD_ROOTFS_SPLIT
 | 
			
		||||
 	depends on MTD_PARTITIONS
 | 
			
		||||
 	default y
 | 
			
		||||
 
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 	depends on MTD_PARTITIONS
 | 
			
		||||
--- a/drivers/mtd/Makefile
 | 
			
		||||
+++ b/drivers/mtd/Makefile
 | 
			
		||||
@@ -8,6 +8,7 @@
 | 
			
		||||
@@ -8,6 +8,7 @@ mtd-y				:= mtdcore.o mtdsuper.o
 | 
			
		||||
 mtd-$(CONFIG_MTD_PARTITIONS)	+= mtdpart.o
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_MTD_CONCAT)	+= mtdconcat.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/ata/Makefile
 | 
			
		||||
+++ b/drivers/ata/Makefile
 | 
			
		||||
@@ -72,6 +72,7 @@
 | 
			
		||||
@@ -72,6 +72,7 @@ obj-$(CONFIG_PATA_BF54X)	+= pata_bf54x.o
 | 
			
		||||
 obj-$(CONFIG_PATA_PLATFORM)	+= pata_platform.o
 | 
			
		||||
 obj-$(CONFIG_PATA_OF_PLATFORM)	+= pata_of_platform.o
 | 
			
		||||
 obj-$(CONFIG_PATA_ICSIDE)	+= pata_icside.o
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 # Should be last but one libata driver
 | 
			
		||||
--- a/drivers/ata/Kconfig
 | 
			
		||||
+++ b/drivers/ata/Kconfig
 | 
			
		||||
@@ -566,6 +566,15 @@
 | 
			
		||||
@@ -566,6 +566,15 @@ config PATA_RADISYS
 | 
			
		||||
 
 | 
			
		||||
 	  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #define AMBA_ISR_PASS_LIMIT	256
 | 
			
		||||
 
 | 
			
		||||
@@ -82,9 +81,9 @@
 | 
			
		||||
@@ -82,9 +81,9 @@ static void pl010_stop_tx(struct uart_po
 | 
			
		||||
 	struct uart_amba_port *uap = (struct uart_amba_port *)port;
 | 
			
		||||
 	unsigned int cr;
 | 
			
		||||
 
 | 
			
		||||
@ -26,7 +26,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void pl010_start_tx(struct uart_port *port)
 | 
			
		||||
@@ -92,9 +91,9 @@
 | 
			
		||||
@@ -92,9 +91,9 @@ static void pl010_start_tx(struct uart_p
 | 
			
		||||
 	struct uart_amba_port *uap = (struct uart_amba_port *)port;
 | 
			
		||||
 	unsigned int cr;
 | 
			
		||||
 
 | 
			
		||||
@ -38,7 +38,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void pl010_stop_rx(struct uart_port *port)
 | 
			
		||||
@@ -102,9 +101,9 @@
 | 
			
		||||
@@ -102,9 +101,9 @@ static void pl010_stop_rx(struct uart_po
 | 
			
		||||
 	struct uart_amba_port *uap = (struct uart_amba_port *)port;
 | 
			
		||||
 	unsigned int cr;
 | 
			
		||||
 
 | 
			
		||||
@ -50,7 +50,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void pl010_enable_ms(struct uart_port *port)
 | 
			
		||||
@@ -112,9 +111,9 @@
 | 
			
		||||
@@ -112,9 +111,9 @@ static void pl010_enable_ms(struct uart_
 | 
			
		||||
 	struct uart_amba_port *uap = (struct uart_amba_port *)port;
 | 
			
		||||
 	unsigned int cr;
 | 
			
		||||
 
 | 
			
		||||
@ -62,7 +62,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void pl010_rx_chars(struct uart_amba_port *uap)
 | 
			
		||||
@@ -122,9 +121,9 @@
 | 
			
		||||
@@ -122,9 +121,9 @@ static void pl010_rx_chars(struct uart_a
 | 
			
		||||
 	struct tty_struct *tty = uap->port.info->tty;
 | 
			
		||||
 	unsigned int status, ch, flag, rsr, max_count = 256;
 | 
			
		||||
 
 | 
			
		||||
@ -74,7 +74,7 @@
 | 
			
		||||
 		flag = TTY_NORMAL;
 | 
			
		||||
 
 | 
			
		||||
 		uap->port.icount.rx++;
 | 
			
		||||
@@ -133,9 +132,9 @@
 | 
			
		||||
@@ -133,9 +132,9 @@ static void pl010_rx_chars(struct uart_a
 | 
			
		||||
 		 * Note that the error handling code is
 | 
			
		||||
 		 * out of the main execution path
 | 
			
		||||
 		 */
 | 
			
		||||
@ -86,7 +86,7 @@
 | 
			
		||||
 
 | 
			
		||||
 			if (rsr & UART01x_RSR_BE) {
 | 
			
		||||
 				rsr &= ~(UART01x_RSR_FE | UART01x_RSR_PE);
 | 
			
		||||
@@ -165,7 +164,7 @@
 | 
			
		||||
@@ -165,7 +164,7 @@ static void pl010_rx_chars(struct uart_a
 | 
			
		||||
 		uart_insert_char(&uap->port, rsr, UART01x_RSR_OE, ch, flag);
 | 
			
		||||
 
 | 
			
		||||
 	ignore_char:
 | 
			
		||||
@ -95,7 +95,7 @@
 | 
			
		||||
 	}
 | 
			
		||||
 	spin_unlock(&uap->port.lock);
 | 
			
		||||
 	tty_flip_buffer_push(tty);
 | 
			
		||||
@@ -178,7 +177,7 @@
 | 
			
		||||
@@ -178,7 +177,7 @@ static void pl010_tx_chars(struct uart_a
 | 
			
		||||
 	int count;
 | 
			
		||||
 
 | 
			
		||||
 	if (uap->port.x_char) {
 | 
			
		||||
@ -104,7 +104,7 @@
 | 
			
		||||
 		uap->port.icount.tx++;
 | 
			
		||||
 		uap->port.x_char = 0;
 | 
			
		||||
 		return;
 | 
			
		||||
@@ -190,7 +189,7 @@
 | 
			
		||||
@@ -190,7 +189,7 @@ static void pl010_tx_chars(struct uart_a
 | 
			
		||||
 
 | 
			
		||||
 	count = uap->port.fifosize >> 1;
 | 
			
		||||
 	do {
 | 
			
		||||
@ -113,7 +113,7 @@
 | 
			
		||||
 		xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
 | 
			
		||||
 		uap->port.icount.tx++;
 | 
			
		||||
 		if (uart_circ_empty(xmit))
 | 
			
		||||
@@ -208,9 +207,9 @@
 | 
			
		||||
@@ -208,9 +207,9 @@ static void pl010_modem_status(struct ua
 | 
			
		||||
 {
 | 
			
		||||
 	unsigned int status, delta;
 | 
			
		||||
 
 | 
			
		||||
@ -125,7 +125,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	delta = status ^ uap->old_status;
 | 
			
		||||
 	uap->old_status = status;
 | 
			
		||||
@@ -238,7 +237,7 @@
 | 
			
		||||
@@ -238,7 +237,7 @@ static irqreturn_t pl010_int(int irq, vo
 | 
			
		||||
 
 | 
			
		||||
 	spin_lock(&uap->port.lock);
 | 
			
		||||
 
 | 
			
		||||
@ -134,7 +134,7 @@
 | 
			
		||||
 	if (status) {
 | 
			
		||||
 		do {
 | 
			
		||||
 			if (status & (UART010_IIR_RTIS | UART010_IIR_RIS))
 | 
			
		||||
@@ -251,7 +250,7 @@
 | 
			
		||||
@@ -251,7 +250,7 @@ static irqreturn_t pl010_int(int irq, vo
 | 
			
		||||
 			if (pass_counter-- == 0)
 | 
			
		||||
 				break;
 | 
			
		||||
 
 | 
			
		||||
@ -143,7 +143,7 @@
 | 
			
		||||
 		} while (status & (UART010_IIR_RTIS | UART010_IIR_RIS |
 | 
			
		||||
 				   UART010_IIR_TIS));
 | 
			
		||||
 		handled = 1;
 | 
			
		||||
@@ -265,7 +264,7 @@
 | 
			
		||||
@@ -265,7 +264,7 @@ static irqreturn_t pl010_int(int irq, vo
 | 
			
		||||
 static unsigned int pl010_tx_empty(struct uart_port *port)
 | 
			
		||||
 {
 | 
			
		||||
 	struct uart_amba_port *uap = (struct uart_amba_port *)port;
 | 
			
		||||
@ -152,7 +152,7 @@
 | 
			
		||||
 	return status & UART01x_FR_BUSY ? 0 : TIOCSER_TEMT;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -275,7 +274,7 @@
 | 
			
		||||
@@ -275,7 +274,7 @@ static unsigned int pl010_get_mctrl(stru
 | 
			
		||||
 	unsigned int result = 0;
 | 
			
		||||
 	unsigned int status;
 | 
			
		||||
 
 | 
			
		||||
@ -161,7 +161,7 @@
 | 
			
		||||
 	if (status & UART01x_FR_DCD)
 | 
			
		||||
 		result |= TIOCM_CAR;
 | 
			
		||||
 	if (status & UART01x_FR_DSR)
 | 
			
		||||
@@ -301,12 +300,12 @@
 | 
			
		||||
@@ -301,12 +300,12 @@ static void pl010_break_ctl(struct uart_
 | 
			
		||||
 	unsigned int lcr_h;
 | 
			
		||||
 
 | 
			
		||||
 	spin_lock_irqsave(&uap->port.lock, flags);
 | 
			
		||||
@ -176,7 +176,7 @@
 | 
			
		||||
 	spin_unlock_irqrestore(&uap->port.lock, flags);
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -334,12 +333,12 @@
 | 
			
		||||
@@ -334,12 +333,12 @@ static int pl010_startup(struct uart_por
 | 
			
		||||
 	/*
 | 
			
		||||
 	 * initialise the old status of the modem signals
 | 
			
		||||
 	 */
 | 
			
		||||
@ -191,7 +191,7 @@
 | 
			
		||||
 	       uap->port.membase + UART010_CR);
 | 
			
		||||
 
 | 
			
		||||
 	return 0;
 | 
			
		||||
@@ -362,10 +361,10 @@
 | 
			
		||||
@@ -362,10 +361,10 @@ static void pl010_shutdown(struct uart_p
 | 
			
		||||
 	/*
 | 
			
		||||
 	 * disable all interrupts, disable the port
 | 
			
		||||
 	 */
 | 
			
		||||
@ -204,7 +204,7 @@
 | 
			
		||||
 		~(UART01x_LCRH_BRK | UART01x_LCRH_FEN),
 | 
			
		||||
 	       uap->port.membase + UART010_LCRH);
 | 
			
		||||
 
 | 
			
		||||
@@ -387,7 +386,7 @@
 | 
			
		||||
@@ -387,7 +386,7 @@ pl010_set_termios(struct uart_port *port
 | 
			
		||||
 	/*
 | 
			
		||||
 	 * Ask the core to calculate the divisor for us.
 | 
			
		||||
 	 */
 | 
			
		||||
@ -213,7 +213,7 @@
 | 
			
		||||
 	quot = uart_get_divisor(port, baud);
 | 
			
		||||
 
 | 
			
		||||
 	switch (termios->c_cflag & CSIZE) {
 | 
			
		||||
@@ -450,25 +449,25 @@
 | 
			
		||||
@@ -450,25 +449,25 @@ pl010_set_termios(struct uart_port *port
 | 
			
		||||
 		uap->port.ignore_status_mask |= UART_DUMMY_RSR_RX;
 | 
			
		||||
 
 | 
			
		||||
 	/* first, disable everything */
 | 
			
		||||
@ -245,7 +245,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	spin_unlock_irqrestore(&uap->port.lock, flags);
 | 
			
		||||
 }
 | 
			
		||||
@@ -540,7 +539,7 @@
 | 
			
		||||
@@ -540,7 +539,7 @@ static struct uart_ops amba_pl010_pops =
 | 
			
		||||
 	.verify_port	= pl010_verify_port,
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -254,7 +254,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #ifdef CONFIG_SERIAL_AMBA_PL010_CONSOLE
 | 
			
		||||
 
 | 
			
		||||
@@ -550,10 +549,10 @@
 | 
			
		||||
@@ -550,10 +549,10 @@ static void pl010_console_putchar(struct
 | 
			
		||||
 	unsigned int status;
 | 
			
		||||
 
 | 
			
		||||
 	do {
 | 
			
		||||
@ -267,7 +267,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void
 | 
			
		||||
@@ -567,8 +566,8 @@
 | 
			
		||||
@@ -567,8 +566,8 @@ pl010_console_write(struct console *co, 
 | 
			
		||||
 	/*
 | 
			
		||||
 	 *	First save the CR then disable the interrupts
 | 
			
		||||
 	 */
 | 
			
		||||
@ -278,7 +278,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	uart_console_write(&uap->port, s, count, pl010_console_putchar);
 | 
			
		||||
 
 | 
			
		||||
@@ -577,10 +576,10 @@
 | 
			
		||||
@@ -577,10 +576,10 @@ pl010_console_write(struct console *co, 
 | 
			
		||||
 	 *	and restore the TCR
 | 
			
		||||
 	 */
 | 
			
		||||
 	do {
 | 
			
		||||
@ -291,7 +291,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	clk_disable(uap->clk);
 | 
			
		||||
 }
 | 
			
		||||
@@ -589,9 +588,9 @@
 | 
			
		||||
@@ -589,9 +588,9 @@ static void __init
 | 
			
		||||
 pl010_console_get_options(struct uart_amba_port *uap, int *baud,
 | 
			
		||||
 			     int *parity, int *bits)
 | 
			
		||||
 {
 | 
			
		||||
@ -303,7 +303,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		*parity = 'n';
 | 
			
		||||
 		if (lcr_h & UART01x_LCRH_PEN) {
 | 
			
		||||
@@ -606,8 +605,8 @@
 | 
			
		||||
@@ -606,8 +605,8 @@ pl010_console_get_options(struct uart_am
 | 
			
		||||
 		else
 | 
			
		||||
 			*bits = 8;
 | 
			
		||||
 
 | 
			
		||||
@ -314,7 +314,7 @@
 | 
			
		||||
 		*baud = uap->port.uartclk / (16 * (quot + 1));
 | 
			
		||||
 	}
 | 
			
		||||
 }
 | 
			
		||||
@@ -625,7 +624,7 @@
 | 
			
		||||
@@ -625,7 +624,7 @@ static int __init pl010_console_setup(st
 | 
			
		||||
 	 * if so, search for the first available port that does have
 | 
			
		||||
 	 * console support.
 | 
			
		||||
 	 */
 | 
			
		||||
@ -323,7 +323,7 @@
 | 
			
		||||
 		co->index = 0;
 | 
			
		||||
 	uap = amba_ports[co->index];
 | 
			
		||||
 	if (!uap)
 | 
			
		||||
@@ -643,7 +642,7 @@
 | 
			
		||||
@@ -643,7 +642,7 @@ static int __init pl010_console_setup(st
 | 
			
		||||
 
 | 
			
		||||
 static struct uart_driver amba_reg;
 | 
			
		||||
 static struct console amba_console = {
 | 
			
		||||
@ -332,7 +332,7 @@
 | 
			
		||||
 	.write		= pl010_console_write,
 | 
			
		||||
 	.device		= uart_console_device,
 | 
			
		||||
 	.setup		= pl010_console_setup,
 | 
			
		||||
@@ -659,11 +658,11 @@
 | 
			
		||||
@@ -659,11 +658,11 @@ static struct console amba_console = {
 | 
			
		||||
 
 | 
			
		||||
 static struct uart_driver amba_reg = {
 | 
			
		||||
 	.owner			= THIS_MODULE,
 | 
			
		||||
@ -349,7 +349,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/serial/Kconfig
 | 
			
		||||
+++ b/drivers/serial/Kconfig
 | 
			
		||||
@@ -287,10 +287,25 @@
 | 
			
		||||
@@ -287,10 +287,25 @@ config SERIAL_AMBA_PL010
 | 
			
		||||
 	help
 | 
			
		||||
 	  This selects the ARM(R) AMBA(R) PrimeCell PL010 UART.  If you have
 | 
			
		||||
 	  an Integrator/AP or Integrator/PP2 platform, or if you have a
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/pci/Kconfig
 | 
			
		||||
+++ b/drivers/pci/Kconfig
 | 
			
		||||
@@ -42,6 +42,12 @@
 | 
			
		||||
@@ -42,6 +42,12 @@ config PCI_DEBUG
 | 
			
		||||
 
 | 
			
		||||
 	  When in doubt, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -23,7 +23,7 @@
 | 
			
		||||
 /* The Mellanox Tavor device gives false positive parity errors
 | 
			
		||||
  * Mark this device with a broken_parity_status, to allow
 | 
			
		||||
  * PCI scanning code to "skip" this now blacklisted device.
 | 
			
		||||
@@ -1495,6 +1496,7 @@
 | 
			
		||||
@@ -1495,6 +1496,7 @@ static void __devinit fixup_rev1_53c810(
 | 
			
		||||
 	}
 | 
			
		||||
 }
 | 
			
		||||
 DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_NCR, PCI_DEVICE_ID_NCR_53C810, fixup_rev1_53c810);
 | 
			
		||||
@ -31,7 +31,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static void pci_do_fixups(struct pci_dev *dev, struct pci_fixup *f, struct pci_fixup *end)
 | 
			
		||||
 {
 | 
			
		||||
@@ -1561,6 +1563,7 @@
 | 
			
		||||
@@ -1561,6 +1563,7 @@ void pci_fixup_device(enum pci_fixup_pas
 | 
			
		||||
 }
 | 
			
		||||
 EXPORT_SYMBOL(pci_fixup_device);
 | 
			
		||||
 
 | 
			
		||||
@ -39,7 +39,7 @@
 | 
			
		||||
 /* Enable 1k I/O space granularity on the Intel P64H2 */
 | 
			
		||||
 static void __devinit quirk_p64h2_1k_io(struct pci_dev *dev)
 | 
			
		||||
 {
 | 
			
		||||
@@ -1934,3 +1937,4 @@
 | 
			
		||||
@@ -1934,3 +1937,4 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_AT
 | 
			
		||||
 			quirk_msi_intx_disable_bug);
 | 
			
		||||
 
 | 
			
		||||
 #endif /* CONFIG_PCI_MSI */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/leds/leds-gpio.c
 | 
			
		||||
+++ b/drivers/leds/leds-gpio.c
 | 
			
		||||
@@ -43,13 +43,17 @@
 | 
			
		||||
@@ -43,13 +43,17 @@ static void gpio_led_set(struct led_clas
 | 
			
		||||
 		container_of(led_cdev, struct gpio_led_data, cdev);
 | 
			
		||||
 	int level;
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/watchdog/Kconfig
 | 
			
		||||
+++ b/drivers/watchdog/Kconfig
 | 
			
		||||
@@ -632,6 +632,18 @@
 | 
			
		||||
@@ -632,6 +632,18 @@ config SBC_EPX_C3_WATCHDOG
 | 
			
		||||
 
 | 
			
		||||
 # MIPS Architecture
 | 
			
		||||
 
 | 
			
		||||
@ -21,7 +21,7 @@
 | 
			
		||||
 	depends on SGI_HAS_INDYDOG
 | 
			
		||||
--- a/drivers/watchdog/Makefile
 | 
			
		||||
+++ b/drivers/watchdog/Makefile
 | 
			
		||||
@@ -91,6 +91,7 @@
 | 
			
		||||
@@ -91,6 +91,7 @@ obj-$(CONFIG_SBC_EPX_C3_WATCHDOG) += sbc
 | 
			
		||||
 # M68KNOMMU Architecture
 | 
			
		||||
 
 | 
			
		||||
 # MIPS Architecture
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -18,6 +18,23 @@
 | 
			
		||||
@@ -18,6 +18,23 @@ choice
 | 
			
		||||
 	prompt "System type"
 | 
			
		||||
 	default SGI_IP22
 | 
			
		||||
 
 | 
			
		||||
@ -26,7 +26,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/arch/mips/kernel/traps.c
 | 
			
		||||
+++ b/arch/mips/kernel/traps.c
 | 
			
		||||
@@ -1188,9 +1188,22 @@
 | 
			
		||||
@@ -1188,9 +1188,22 @@ void *set_except_vector(int n, void *add
 | 
			
		||||
 
 | 
			
		||||
 	exception_handlers[n] = handler;
 | 
			
		||||
 	if (n == 0 && cpu_has_divec) {
 | 
			
		||||
@ -54,7 +54,7 @@
 | 
			
		||||
 }
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -167,6 +167,13 @@
 | 
			
		||||
@@ -167,6 +167,13 @@ libs-$(CONFIG_SIBYTE_CFE)	+= arch/mips/s
 | 
			
		||||
 #
 | 
			
		||||
 
 | 
			
		||||
 #
 | 
			
		||||
@ -70,7 +70,7 @@
 | 
			
		||||
 core-$(CONFIG_MACH_JAZZ)	+= arch/mips/jazz/
 | 
			
		||||
--- a/include/asm-mips/page.h
 | 
			
		||||
+++ b/include/asm-mips/page.h
 | 
			
		||||
@@ -182,8 +182,10 @@
 | 
			
		||||
@@ -182,8 +182,10 @@ typedef struct { unsigned long pgprot; }
 | 
			
		||||
 #define VM_DATA_DEFAULT_FLAGS	(VM_READ | VM_WRITE | VM_EXEC | \
 | 
			
		||||
 				 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/Kconfig
 | 
			
		||||
@@ -174,6 +174,12 @@
 | 
			
		||||
@@ -174,6 +174,12 @@ config MTD_AR7_PARTS
 | 
			
		||||
 	---help---
 | 
			
		||||
 	  TI AR7 partitioning support
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 config MTD_CHAR
 | 
			
		||||
--- a/drivers/mtd/Makefile
 | 
			
		||||
+++ b/drivers/mtd/Makefile
 | 
			
		||||
@@ -13,6 +13,7 @@
 | 
			
		||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdli
 | 
			
		||||
 obj-$(CONFIG_MTD_AFS_PARTS)	+= afs.o
 | 
			
		||||
 obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
 | 
			
		||||
 obj-$(CONFIG_MTD_OF_PARTS)      += ofpart.o
 | 
			
		||||
@ -25,7 +25,7 @@
 | 
			
		||||
 obj-$(CONFIG_MTD_CHAR)		+= mtdchar.o
 | 
			
		||||
--- a/drivers/mtd/maps/physmap.c
 | 
			
		||||
+++ b/drivers/mtd/maps/physmap.c
 | 
			
		||||
@@ -87,7 +87,8 @@
 | 
			
		||||
@@ -87,7 +87,8 @@ static int physmap_flash_remove(struct p
 | 
			
		||||
 
 | 
			
		||||
 static const char *rom_probe_types[] = { "cfi_probe", "jedec_probe", "map_rom", NULL };
 | 
			
		||||
 #ifdef CONFIG_MTD_PARTITIONS
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/char/Kconfig
 | 
			
		||||
+++ b/drivers/char/Kconfig
 | 
			
		||||
@@ -960,6 +960,15 @@
 | 
			
		||||
@@ -960,6 +960,15 @@ config MWAVE
 | 
			
		||||
 	  To compile this driver as a module, choose M here: the
 | 
			
		||||
 	  module will be called mwave.
 | 
			
		||||
 
 | 
			
		||||
@ -18,7 +18,7 @@
 | 
			
		||||
 	depends on SCx200
 | 
			
		||||
--- a/drivers/char/Makefile
 | 
			
		||||
+++ b/drivers/char/Makefile
 | 
			
		||||
@@ -91,6 +91,7 @@
 | 
			
		||||
@@ -91,6 +91,7 @@ obj-$(CONFIG_COBALT_LCD)	+= lcd.o
 | 
			
		||||
 obj-$(CONFIG_PPDEV)		+= ppdev.o
 | 
			
		||||
 obj-$(CONFIG_NWBUTTON)		+= nwbutton.o
 | 
			
		||||
 obj-$(CONFIG_NWFLASH)		+= nwflash.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/Kconfig
 | 
			
		||||
+++ b/drivers/Kconfig
 | 
			
		||||
@@ -100,5 +100,7 @@
 | 
			
		||||
@@ -100,5 +100,7 @@ source "drivers/auxdisplay/Kconfig"
 | 
			
		||||
 
 | 
			
		||||
 source "drivers/uio/Kconfig"
 | 
			
		||||
 
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 endmenu
 | 
			
		||||
--- a/drivers/Makefile
 | 
			
		||||
+++ b/drivers/Makefile
 | 
			
		||||
@@ -92,5 +92,6 @@
 | 
			
		||||
@@ -92,5 +92,6 @@ obj-$(CONFIG_DCA)		+= dca/
 | 
			
		||||
 obj-$(CONFIG_HID)		+= hid/
 | 
			
		||||
 obj-$(CONFIG_PPC_PS3)		+= ps3/
 | 
			
		||||
 obj-$(CONFIG_OF)		+= of/
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/Kconfig
 | 
			
		||||
+++ b/drivers/net/Kconfig
 | 
			
		||||
@@ -1867,7 +1867,7 @@
 | 
			
		||||
@@ -1867,7 +1867,7 @@ config SC92031
 | 
			
		||||
 
 | 
			
		||||
 config CPMAC
 | 
			
		||||
 	tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 struct ar7_bin_rec {
 | 
			
		||||
 	unsigned int checksum;
 | 
			
		||||
 	unsigned int length;
 | 
			
		||||
@@ -47,7 +51,8 @@
 | 
			
		||||
@@ -47,7 +51,8 @@ static int create_mtd_partitions(struct 
 | 
			
		||||
 				 unsigned long origin)
 | 
			
		||||
 {
 | 
			
		||||
 	struct ar7_bin_rec header;
 | 
			
		||||
@ -21,7 +21,7 @@
 | 
			
		||||
 	unsigned int pre_size = master->erasesize, post_size = 0;
 | 
			
		||||
 	unsigned int root_offset = ROOT_OFFSET;
 | 
			
		||||
 
 | 
			
		||||
@@ -66,7 +71,7 @@
 | 
			
		||||
@@ -66,7 +71,7 @@ static int create_mtd_partitions(struct 
 | 
			
		||||
 	do { /* Try 10 blocks starting from master->erasesize */
 | 
			
		||||
 		offset = pre_size;
 | 
			
		||||
 		master->read(master, offset,
 | 
			
		||||
@ -30,7 +30,7 @@
 | 
			
		||||
 		if (!strncmp((char *)&header, "TIENV0.8", 8))
 | 
			
		||||
 			ar7_parts[1].offset = pre_size;
 | 
			
		||||
 		if (header.checksum == LOADER_MAGIC1)
 | 
			
		||||
@@ -88,7 +93,7 @@
 | 
			
		||||
@@ -88,7 +93,7 @@ static int create_mtd_partitions(struct 
 | 
			
		||||
 		while (header.length) {
 | 
			
		||||
 			offset += sizeof(header) + header.length;
 | 
			
		||||
 			master->read(master, offset, sizeof(header),
 | 
			
		||||
@ -39,7 +39,7 @@
 | 
			
		||||
 		}
 | 
			
		||||
 		root_offset = offset + sizeof(header) + 4;
 | 
			
		||||
 		break;
 | 
			
		||||
@@ -96,10 +101,10 @@
 | 
			
		||||
@@ -96,10 +101,10 @@ static int create_mtd_partitions(struct 
 | 
			
		||||
 		while (header.length) {
 | 
			
		||||
 			offset += sizeof(header) + header.length;
 | 
			
		||||
 			master->read(master, offset, sizeof(header),
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/serial/8250.c
 | 
			
		||||
+++ b/drivers/serial/8250.c
 | 
			
		||||
@@ -266,6 +266,13 @@
 | 
			
		||||
@@ -266,6 +266,13 @@ static const struct serial8250_config ua
 | 
			
		||||
 		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
 | 
			
		||||
 		.flags		= UART_CAP_FIFO,
 | 
			
		||||
 	},
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #if defined (CONFIG_SERIAL_8250_AU1X00)
 | 
			
		||||
@@ -2524,7 +2531,11 @@
 | 
			
		||||
@@ -2524,7 +2531,11 @@ static void serial8250_console_putchar(s
 | 
			
		||||
 {
 | 
			
		||||
 	struct uart_8250_port *up = (struct uart_8250_port *)port;
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -19,7 +19,7 @@ because other drivers do it in the same way.
 | 
			
		||||
 | 
			
		||||
--- a/drivers/net/cpmac.c
 | 
			
		||||
+++ b/drivers/net/cpmac.c
 | 
			
		||||
@@ -627,7 +627,7 @@
 | 
			
		||||
@@ -627,7 +627,7 @@ static void cpmac_end_xmit(struct net_de
 | 
			
		||||
 		dev_kfree_skb_irq(desc->skb);
 | 
			
		||||
 		desc->skb = NULL;
 | 
			
		||||
 #ifdef CONFIG_NETDEVICES_MULTIQUEUE
 | 
			
		||||
@ -28,7 +28,7 @@ because other drivers do it in the same way.
 | 
			
		||||
 			netif_wake_subqueue(dev, queue);
 | 
			
		||||
 #else
 | 
			
		||||
 		if (netif_queue_stopped(dev))
 | 
			
		||||
@@ -638,7 +638,7 @@
 | 
			
		||||
@@ -638,7 +638,7 @@ static void cpmac_end_xmit(struct net_de
 | 
			
		||||
 			printk(KERN_WARNING
 | 
			
		||||
 			       "%s: end_xmit: spurious interrupt\n", dev->name);
 | 
			
		||||
 #ifdef CONFIG_NETDEVICES_MULTIQUEUE
 | 
			
		||||
@ -37,7 +37,7 @@ because other drivers do it in the same way.
 | 
			
		||||
 			netif_wake_subqueue(dev, queue);
 | 
			
		||||
 #else
 | 
			
		||||
 		if (netif_queue_stopped(dev))
 | 
			
		||||
@@ -1124,7 +1124,7 @@
 | 
			
		||||
@@ -1124,7 +1124,7 @@ static int external_switch;
 | 
			
		||||
 
 | 
			
		||||
 static int __devinit cpmac_probe(struct platform_device *pdev)
 | 
			
		||||
 {
 | 
			
		||||
@ -46,7 +46,7 @@ because other drivers do it in the same way.
 | 
			
		||||
 	char *mdio_bus_id = "0";
 | 
			
		||||
 	struct resource *mem;
 | 
			
		||||
 	struct cpmac_priv *priv;
 | 
			
		||||
@@ -1152,7 +1152,11 @@
 | 
			
		||||
@@ -1152,7 +1152,11 @@ static int __devinit cpmac_probe(struct 
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@ -58,7 +58,7 @@ because other drivers do it in the same way.
 | 
			
		||||
 
 | 
			
		||||
 	if (!dev) {
 | 
			
		||||
 		printk(KERN_ERR "cpmac: Unable to allocate net_device\n");
 | 
			
		||||
@@ -1179,7 +1183,9 @@
 | 
			
		||||
@@ -1179,7 +1183,9 @@ static int __devinit cpmac_probe(struct 
 | 
			
		||||
 	dev->set_multicast_list = cpmac_set_multicast_list;
 | 
			
		||||
 	dev->tx_timeout         = cpmac_tx_timeout;
 | 
			
		||||
 	dev->ethtool_ops        = &cpmac_ethtool_ops;
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/cpmac.c
 | 
			
		||||
+++ b/drivers/net/cpmac.c
 | 
			
		||||
@@ -948,7 +948,8 @@
 | 
			
		||||
@@ -948,7 +948,8 @@ static void cpmac_adjust_link(struct net
 | 
			
		||||
 	int new_state = 0;
 | 
			
		||||
 
 | 
			
		||||
 	spin_lock(&priv->lock);
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 		netif_start_queue(dev);
 | 
			
		||||
 		if (priv->phy->duplex != priv->oldduplex) {
 | 
			
		||||
 			new_state = 1;
 | 
			
		||||
@@ -960,11 +961,11 @@
 | 
			
		||||
@@ -960,11 +961,11 @@ static void cpmac_adjust_link(struct net
 | 
			
		||||
 			priv->oldspeed = priv->phy->speed;
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -597,6 +597,13 @@
 | 
			
		||||
@@ -597,6 +597,13 @@ core-$(CONFIG_TOSHIBA_RBTX4938) += arch/
 | 
			
		||||
 cflags-$(CONFIG_TOSHIBA_RBTX4938) += -Iinclude/asm-mips/mach-tx49xx
 | 
			
		||||
 load-$(CONFIG_TOSHIBA_RBTX4938) += 0xffffffff80100000
 | 
			
		||||
 
 | 
			
		||||
@ -35,7 +35,7 @@
 | 
			
		||||
 #define  MACH_NEC_MARKEINS	0	/* NEC EMMA2RH Mark-eins	*/
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -21,6 +21,24 @@
 | 
			
		||||
@@ -21,6 +21,24 @@ choice
 | 
			
		||||
 config MACH_ALCHEMY
 | 
			
		||||
 	bool "Alchemy processor based machines"
 | 
			
		||||
 
 | 
			
		||||
@ -60,7 +60,7 @@
 | 
			
		||||
 config BASLER_EXCITE
 | 
			
		||||
 	bool "Basler eXcite smart camera"
 | 
			
		||||
 	select CEVT_R4K
 | 
			
		||||
@@ -687,6 +705,7 @@
 | 
			
		||||
@@ -687,6 +705,7 @@ config WR_PPMC
 | 
			
		||||
 
 | 
			
		||||
 endchoice
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/pci/Makefile
 | 
			
		||||
+++ b/arch/mips/pci/Makefile
 | 
			
		||||
@@ -15,6 +15,7 @@
 | 
			
		||||
@@ -15,6 +15,7 @@ obj-$(CONFIG_MIPS_TX3927)	+= ops-tx3927.
 | 
			
		||||
 obj-$(CONFIG_PCI_VR41XX)	+= ops-vr41xx.o pci-vr41xx.o
 | 
			
		||||
 obj-$(CONFIG_NEC_CMBVR4133)	+= fixup-vr4133.o
 | 
			
		||||
 obj-$(CONFIG_MARKEINS)		+= ops-emma2rh.o pci-emma2rh.o fixup-emma2rh.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/usb/host/Kconfig
 | 
			
		||||
+++ b/drivers/usb/host/Kconfig
 | 
			
		||||
@@ -81,6 +81,12 @@
 | 
			
		||||
@@ -81,6 +81,12 @@ config USB_EHCI_BIG_ENDIAN_DESC
 | 
			
		||||
 	depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX)
 | 
			
		||||
 	default y
 | 
			
		||||
 
 | 
			
		||||
@ -13,7 +13,7 @@
 | 
			
		||||
 config USB_EHCI_FSL
 | 
			
		||||
 	bool "Support for Freescale on-chip EHCI USB controller"
 | 
			
		||||
 	depends on USB_EHCI_HCD && FSL_SOC
 | 
			
		||||
@@ -152,6 +158,12 @@
 | 
			
		||||
@@ -152,6 +158,12 @@ config USB_OHCI_HCD
 | 
			
		||||
 	  To compile this driver as a module, choose M here: the
 | 
			
		||||
 	  module will be called ohci-hcd.
 | 
			
		||||
 
 | 
			
		||||
@ -28,7 +28,7 @@
 | 
			
		||||
 	depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx)
 | 
			
		||||
--- a/drivers/usb/host/ehci-hcd.c
 | 
			
		||||
+++ b/drivers/usb/host/ehci-hcd.c
 | 
			
		||||
@@ -1034,6 +1034,11 @@
 | 
			
		||||
@@ -1034,6 +1034,11 @@ MODULE_LICENSE ("GPL");
 | 
			
		||||
 #define	PLATFORM_DRIVER		ixp4xx_ehci_driver
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -42,7 +42,7 @@
 | 
			
		||||
 #error "missing bus glue for ehci-hcd"
 | 
			
		||||
--- a/drivers/usb/host/ohci.h
 | 
			
		||||
+++ b/drivers/usb/host/ohci.h
 | 
			
		||||
@@ -538,6 +538,11 @@
 | 
			
		||||
@@ -538,6 +538,11 @@ static inline struct usb_hcd *ohci_to_hc
 | 
			
		||||
 #define writel_be(val, addr)	out_be32((__force unsigned *)addr, val)
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -56,7 +56,7 @@
 | 
			
		||||
 {
 | 
			
		||||
--- a/drivers/usb/host/ohci-hcd.c
 | 
			
		||||
+++ b/drivers/usb/host/ohci-hcd.c
 | 
			
		||||
@@ -1057,6 +1057,11 @@
 | 
			
		||||
@@ -1057,6 +1057,11 @@ MODULE_LICENSE ("GPL");
 | 
			
		||||
 #define SM501_OHCI_DRIVER	ohci_hcd_sm501_driver
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/spi/Kconfig
 | 
			
		||||
+++ b/drivers/spi/Kconfig
 | 
			
		||||
@@ -52,6 +52,13 @@
 | 
			
		||||
@@ -52,6 +52,13 @@ config SPI_MASTER
 | 
			
		||||
 comment "SPI Master Controller Drivers"
 | 
			
		||||
 	depends on SPI_MASTER
 | 
			
		||||
 
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
 	depends on (ARCH_AT91 || AVR32) && SPI_MASTER
 | 
			
		||||
--- a/drivers/spi/Makefile
 | 
			
		||||
+++ b/drivers/spi/Makefile
 | 
			
		||||
@@ -11,6 +11,7 @@
 | 
			
		||||
@@ -11,6 +11,7 @@ endif
 | 
			
		||||
 obj-$(CONFIG_SPI_MASTER)		+= spi.o
 | 
			
		||||
 
 | 
			
		||||
 # SPI master controller drivers (bus)
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/Kconfig
 | 
			
		||||
+++ b/drivers/net/Kconfig
 | 
			
		||||
@@ -2060,6 +2060,8 @@
 | 
			
		||||
@@ -2060,6 +2060,8 @@ config ACENIC_OMIT_TIGON_I
 | 
			
		||||
 
 | 
			
		||||
 	  The safe and default value for this is N.
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/watchdog/Kconfig
 | 
			
		||||
+++ b/drivers/watchdog/Kconfig
 | 
			
		||||
@@ -683,6 +683,13 @@
 | 
			
		||||
@@ -683,6 +683,13 @@ config TXX9_WDT
 | 
			
		||||
 	help
 | 
			
		||||
 	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
 | 
			
		||||
 
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
 # POWERPC Architecture
 | 
			
		||||
--- a/drivers/watchdog/Makefile
 | 
			
		||||
+++ b/drivers/watchdog/Makefile
 | 
			
		||||
@@ -97,6 +97,7 @@
 | 
			
		||||
@@ -97,6 +97,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
 | 
			
		||||
 obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
 | 
			
		||||
 obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
 | 
			
		||||
 obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/devices/m25p80.c
 | 
			
		||||
+++ b/drivers/mtd/devices/m25p80.c
 | 
			
		||||
@@ -455,6 +455,10 @@
 | 
			
		||||
@@ -455,6 +455,10 @@ static struct flash_info __devinitdata m
 | 
			
		||||
 	{ "at26df161a", 0x1f4601, 64 * 1024, 32, SECT_4K, },
 | 
			
		||||
 	{ "at26df321",  0x1f4701, 64 * 1024, 64, SECT_4K, },
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/Kconfig
 | 
			
		||||
+++ b/drivers/net/phy/Kconfig
 | 
			
		||||
@@ -76,6 +76,11 @@
 | 
			
		||||
@@ -82,6 +82,11 @@ config MVSWITCH_PHY
 | 
			
		||||
 	---help---
 | 
			
		||||
 	  Currently supports the Marvell 88E6060 switch.
 | 
			
		||||
 
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 	depends on PHYLIB=y
 | 
			
		||||
--- a/drivers/net/phy/Makefile
 | 
			
		||||
+++ b/drivers/net/phy/Makefile
 | 
			
		||||
@@ -15,5 +15,6 @@
 | 
			
		||||
@@ -16,5 +16,6 @@ obj-$(CONFIG_ICPLUS_PHY)	+= icplus.o
 | 
			
		||||
 obj-$(CONFIG_ADM6996_PHY)	+= adm6996.o
 | 
			
		||||
 obj-$(CONFIG_MVSWITCH_PHY)	+= mvswitch.o
 | 
			
		||||
 obj-$(CONFIG_REALTEK_PHY)	+= realtek.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/redboot.c
 | 
			
		||||
+++ b/drivers/mtd/redboot.c
 | 
			
		||||
@@ -62,31 +62,32 @@
 | 
			
		||||
@@ -62,31 +62,32 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 	static char nullstring[] = "unallocated";
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -40,7 +40,7 @@
 | 
			
		||||
 	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n",
 | 
			
		||||
 	       master->name, offset);
 | 
			
		||||
 
 | 
			
		||||
@@ -158,6 +159,11 @@
 | 
			
		||||
@@ -158,6 +159,11 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 	}
 | 
			
		||||
 	if (i == numslots) {
 | 
			
		||||
 		/* Didn't find it */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/nand/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/nand/Kconfig
 | 
			
		||||
@@ -386,4 +386,8 @@
 | 
			
		||||
@@ -386,4 +386,8 @@ config MTD_NAND_FSL_UPM
 | 
			
		||||
 	  Enables support for NAND Flash chips wired onto Freescale PowerPC
 | 
			
		||||
 	  processor localbus with User-Programmable Machine support.
 | 
			
		||||
 
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 endif # MTD_NAND
 | 
			
		||||
--- a/drivers/mtd/nand/Makefile
 | 
			
		||||
+++ b/drivers/mtd/nand/Makefile
 | 
			
		||||
@@ -29,6 +29,7 @@
 | 
			
		||||
@@ -29,6 +29,7 @@ obj-$(CONFIG_MTD_NAND_CM_X270)		+= cmx27
 | 
			
		||||
 obj-$(CONFIG_MTD_NAND_BASLER_EXCITE)	+= excite_nandflash.o
 | 
			
		||||
 obj-$(CONFIG_MTD_NAND_PXA3xx)		+= pxa3xx_nand.o
 | 
			
		||||
 obj-$(CONFIG_MTD_NAND_PLATFORM)		+= plat_nand.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -158,6 +158,7 @@
 | 
			
		||||
@@ -158,6 +158,7 @@ endif
 | 
			
		||||
 #
 | 
			
		||||
 libs-$(CONFIG_ARC)		+= arch/mips/fw/arc/
 | 
			
		||||
 libs-$(CONFIG_CFE)		+= arch/mips/fw/cfe/
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 libs-$(CONFIG_SIBYTE_CFE)	+= arch/mips/sibyte/cfe/
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -874,6 +874,9 @@
 | 
			
		||||
@@ -874,6 +874,9 @@ config MIPS_NILE4
 | 
			
		||||
 config MIPS_DISABLE_OBSOLETE_IDE
 | 
			
		||||
 	bool
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -113,7 +113,7 @@
 | 
			
		||||
+
 | 
			
		||||
--- a/arch/mips/kernel/Makefile
 | 
			
		||||
+++ b/arch/mips/kernel/Makefile
 | 
			
		||||
@@ -86,6 +86,7 @@
 | 
			
		||||
@@ -86,6 +86,7 @@ obj-$(CONFIG_GPIO_TXX9)		+= gpio_txx9.o
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_KEXEC)		+= machine_kexec.o relocate_kernel.o
 | 
			
		||||
 obj-$(CONFIG_EARLY_PRINTK)	+= early_printk.o
 | 
			
		||||
@ -123,7 +123,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -880,6 +880,9 @@
 | 
			
		||||
@@ -880,6 +880,9 @@ config MYLOADER
 | 
			
		||||
 config SYNC_R4K
 | 
			
		||||
 	bool
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 
 | 
			
		||||
 extern asmlinkage void handle_int(void);
 | 
			
		||||
 extern asmlinkage void handle_tlbm(void);
 | 
			
		||||
@@ -1464,6 +1465,8 @@
 | 
			
		||||
@@ -1464,6 +1465,8 @@ void __cpuinit per_cpu_trap_init(void)
 | 
			
		||||
 	 */
 | 
			
		||||
 	if (cpu_has_mips_r2) {
 | 
			
		||||
 		cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
 | 
			
		||||
@ -19,7 +19,7 @@
 | 
			
		||||
 			cp0_perfcount_irq = -1;
 | 
			
		||||
--- a/include/asm-mips/time.h
 | 
			
		||||
+++ b/include/asm-mips/time.h
 | 
			
		||||
@@ -53,6 +53,7 @@
 | 
			
		||||
@@ -53,6 +53,7 @@ extern int (*perf_irq)(void);
 | 
			
		||||
 #ifdef CONFIG_CEVT_R4K
 | 
			
		||||
 extern int mips_clockevent_init(void);
 | 
			
		||||
 extern unsigned int __weak get_c0_compare_int(void);
 | 
			
		||||
 | 
			
		||||
@ -23,7 +23,7 @@
 | 
			
		||||
 static int mips_next_event(unsigned long delta,
 | 
			
		||||
                            struct clock_event_device *evt)
 | 
			
		||||
 {
 | 
			
		||||
@@ -28,6 +44,7 @@
 | 
			
		||||
@@ -28,6 +44,7 @@ static int mips_next_event(unsigned long
 | 
			
		||||
 	cnt = read_c0_count();
 | 
			
		||||
 	cnt += delta;
 | 
			
		||||
 	write_c0_compare(cnt);
 | 
			
		||||
@ -31,7 +31,7 @@
 | 
			
		||||
 	res = ((int)(read_c0_count() - cnt) > 0) ? -ETIME : 0;
 | 
			
		||||
 #ifdef CONFIG_MIPS_MT_SMTC
 | 
			
		||||
 	evpe(vpflags);
 | 
			
		||||
@@ -187,7 +204,7 @@
 | 
			
		||||
@@ -187,7 +204,7 @@ static int c0_compare_int_usable(void)
 | 
			
		||||
 	 */
 | 
			
		||||
 	if (c0_compare_int_pending()) {
 | 
			
		||||
 		write_c0_compare(read_c0_count());
 | 
			
		||||
@ -40,7 +40,7 @@
 | 
			
		||||
 		if (c0_compare_int_pending())
 | 
			
		||||
 			return 0;
 | 
			
		||||
 	}
 | 
			
		||||
@@ -196,7 +213,7 @@
 | 
			
		||||
@@ -196,7 +213,7 @@ static int c0_compare_int_usable(void)
 | 
			
		||||
 		cnt = read_c0_count();
 | 
			
		||||
 		cnt += delta;
 | 
			
		||||
 		write_c0_compare(cnt);
 | 
			
		||||
@ -49,7 +49,7 @@
 | 
			
		||||
 		if ((int)(read_c0_count() - cnt) < 0)
 | 
			
		||||
 		    break;
 | 
			
		||||
 		/* increase delta if the timer was already expired */
 | 
			
		||||
@@ -205,11 +222,12 @@
 | 
			
		||||
@@ -205,11 +222,12 @@ static int c0_compare_int_usable(void)
 | 
			
		||||
 	while ((int)(read_c0_count() - cnt) <= 0)
 | 
			
		||||
 		;	/* Wait for expiry  */
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Kconfig
 | 
			
		||||
+++ b/arch/mips/Kconfig
 | 
			
		||||
@@ -59,6 +59,18 @@
 | 
			
		||||
@@ -59,6 +59,18 @@ config BCM47XX
 | 
			
		||||
 	help
 | 
			
		||||
 	 Support for BCM47XX based boards
 | 
			
		||||
 
 | 
			
		||||
@ -19,7 +19,7 @@
 | 
			
		||||
 config MIPS_COBALT
 | 
			
		||||
 	bool "Cobalt Server"
 | 
			
		||||
 	select CEVT_R4K
 | 
			
		||||
@@ -687,6 +699,7 @@
 | 
			
		||||
@@ -687,6 +699,7 @@ config WR_PPMC
 | 
			
		||||
 
 | 
			
		||||
 endchoice
 | 
			
		||||
 
 | 
			
		||||
@ -29,7 +29,7 @@
 | 
			
		||||
 source "arch/mips/jazz/Kconfig"
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -276,6 +276,13 @@
 | 
			
		||||
@@ -276,6 +276,13 @@ libs-$(CONFIG_MIPS_XXS1500)	+= arch/mips
 | 
			
		||||
 load-$(CONFIG_MIPS_XXS1500)	+= 0xffffffff80100000
 | 
			
		||||
 
 | 
			
		||||
 #
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/devices/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/devices/Kconfig
 | 
			
		||||
@@ -84,6 +84,10 @@
 | 
			
		||||
@@ -84,6 +84,10 @@ config M25PXX_USE_FAST_READ
 | 
			
		||||
 	help
 | 
			
		||||
 	  This option enables FAST_READ access supported by ST M25Pxx.
 | 
			
		||||
 
 | 
			
		||||
@ -13,7 +13,7 @@
 | 
			
		||||
 	help
 | 
			
		||||
--- a/drivers/mtd/devices/Makefile
 | 
			
		||||
+++ b/drivers/mtd/devices/Makefile
 | 
			
		||||
@@ -17,3 +17,4 @@
 | 
			
		||||
@@ -17,3 +17,4 @@ obj-$(CONFIG_MTD_LART)		+= lart.o
 | 
			
		||||
 obj-$(CONFIG_MTD_BLOCK2MTD)	+= block2mtd.o
 | 
			
		||||
 obj-$(CONFIG_MTD_DATAFLASH)	+= mtd_dataflash.o
 | 
			
		||||
 obj-$(CONFIG_MTD_M25P80)	+= m25p80.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/watchdog/Kconfig
 | 
			
		||||
+++ b/drivers/watchdog/Kconfig
 | 
			
		||||
@@ -683,6 +683,12 @@
 | 
			
		||||
@@ -683,6 +683,12 @@ config TXX9_WDT
 | 
			
		||||
 	help
 | 
			
		||||
 	  Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 # POWERPC Architecture
 | 
			
		||||
--- a/drivers/watchdog/Makefile
 | 
			
		||||
+++ b/drivers/watchdog/Makefile
 | 
			
		||||
@@ -97,6 +97,7 @@
 | 
			
		||||
@@ -97,6 +97,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
 | 
			
		||||
 obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
 | 
			
		||||
 obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
 | 
			
		||||
 obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/Kconfig
 | 
			
		||||
+++ b/drivers/net/Kconfig
 | 
			
		||||
@@ -367,6 +367,12 @@
 | 
			
		||||
@@ -367,6 +367,12 @@ config AX88796_93CX6
 | 
			
		||||
 	help
 | 
			
		||||
 	  Select this if your platform comes with an external 93CX6 eeprom.
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 	depends on PPC_PMAC && PPC32
 | 
			
		||||
--- a/drivers/net/Makefile
 | 
			
		||||
+++ b/drivers/net/Makefile
 | 
			
		||||
@@ -194,6 +194,7 @@
 | 
			
		||||
@@ -194,6 +194,7 @@ obj-$(CONFIG_EQUALIZER) += eql.o
 | 
			
		||||
 obj-$(CONFIG_KORINA) += korina.o
 | 
			
		||||
 obj-$(CONFIG_MIPS_JAZZ_SONIC) += jazzsonic.o
 | 
			
		||||
 obj-$(CONFIG_MIPS_AU1X00_ENET) += au1000_eth.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/ar2313/ar2313.c
 | 
			
		||||
+++ b/drivers/net/ar2313/ar2313.c
 | 
			
		||||
@@ -291,7 +291,7 @@
 | 
			
		||||
@@ -291,7 +291,7 @@ int __init ar2313_probe(struct platform_
 | 
			
		||||
 	sp->mii_bus.write = mdiobus_write;
 | 
			
		||||
 	sp->mii_bus.reset = mdiobus_reset;
 | 
			
		||||
 	sp->mii_bus.name = "ar2313_eth_mii";
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/redboot.c
 | 
			
		||||
+++ b/drivers/mtd/redboot.c
 | 
			
		||||
@@ -62,31 +62,32 @@
 | 
			
		||||
@@ -62,31 +62,32 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 	static char nullstring[] = "unallocated";
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -40,7 +40,7 @@
 | 
			
		||||
 	printk(KERN_NOTICE "Searching for RedBoot partition table in %s at offset 0x%lx\n",
 | 
			
		||||
 	       master->name, offset);
 | 
			
		||||
 
 | 
			
		||||
@@ -158,6 +159,11 @@
 | 
			
		||||
@@ -158,6 +159,11 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 	}
 | 
			
		||||
 	if (i == numslots) {
 | 
			
		||||
 		/* Didn't find it */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/net/core/dev.c
 | 
			
		||||
+++ b/net/core/dev.c
 | 
			
		||||
@@ -3786,8 +3786,8 @@
 | 
			
		||||
@@ -3786,8 +3786,8 @@ int register_netdevice(struct net_device
 | 
			
		||||
 	/* Fix illegal SG+CSUM combinations. */
 | 
			
		||||
 	if ((dev->features & NETIF_F_SG) &&
 | 
			
		||||
 	    !(dev->features & NETIF_F_ALL_CSUM)) {
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 		dev->features &= ~NETIF_F_SG;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -3800,9 +3800,9 @@
 | 
			
		||||
@@ -3800,9 +3800,9 @@ int register_netdevice(struct net_device
 | 
			
		||||
 	}
 | 
			
		||||
 	if (dev->features & NETIF_F_UFO) {
 | 
			
		||||
 		if (!(dev->features & NETIF_F_HW_CSUM)) {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/kernel/cevt-r4k.c
 | 
			
		||||
+++ b/arch/mips/kernel/cevt-r4k.c
 | 
			
		||||
@@ -205,6 +205,7 @@
 | 
			
		||||
@@ -205,6 +205,7 @@ static int c0_compare_int_usable(void)
 | 
			
		||||
 	while ((int)(read_c0_count() - cnt) <= 0)
 | 
			
		||||
 		;	/* Wait for expiry  */
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 
 | 
			
		||||
 extern asmlinkage void handle_int(void);
 | 
			
		||||
 extern asmlinkage void handle_tlbm(void);
 | 
			
		||||
@@ -1464,6 +1465,8 @@
 | 
			
		||||
@@ -1464,6 +1465,8 @@ void __cpuinit per_cpu_trap_init(void)
 | 
			
		||||
 	 */
 | 
			
		||||
 	if (cpu_has_mips_r2) {
 | 
			
		||||
 		cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
 | 
			
		||||
@ -19,7 +19,7 @@
 | 
			
		||||
 			cp0_perfcount_irq = -1;
 | 
			
		||||
--- a/include/asm-mips/time.h
 | 
			
		||||
+++ b/include/asm-mips/time.h
 | 
			
		||||
@@ -53,6 +53,7 @@
 | 
			
		||||
@@ -53,6 +53,7 @@ extern int (*perf_irq)(void);
 | 
			
		||||
 #ifdef CONFIG_CEVT_R4K
 | 
			
		||||
 extern int mips_clockevent_init(void);
 | 
			
		||||
 extern unsigned int __weak get_c0_compare_int(void);
 | 
			
		||||
@ -29,7 +29,7 @@
 | 
			
		||||
 {
 | 
			
		||||
--- a/arch/mips/atheros/board.c
 | 
			
		||||
+++ b/arch/mips/atheros/board.c
 | 
			
		||||
@@ -205,6 +205,11 @@
 | 
			
		||||
@@ -265,6 +265,11 @@ void (*board_time_init)(void);
 | 
			
		||||
 void __init plat_time_init(void) {
 | 
			
		||||
     board_time_init();
 | 
			
		||||
 }
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/Kconfig
 | 
			
		||||
+++ b/fs/Kconfig
 | 
			
		||||
@@ -1395,6 +1395,71 @@
 | 
			
		||||
@@ -1395,6 +1395,71 @@ config CRAMFS
 | 
			
		||||
 
 | 
			
		||||
 	  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -74,7 +74,7 @@
 | 
			
		||||
 	depends on BLOCK
 | 
			
		||||
--- a/fs/Makefile
 | 
			
		||||
+++ b/fs/Makefile
 | 
			
		||||
@@ -73,6 +73,7 @@
 | 
			
		||||
@@ -73,6 +73,7 @@ obj-$(CONFIG_JBD)		+= jbd/
 | 
			
		||||
 obj-$(CONFIG_JBD2)		+= jbd2/
 | 
			
		||||
 obj-$(CONFIG_EXT2_FS)		+= ext2/
 | 
			
		||||
 obj-$(CONFIG_CRAMFS)		+= cramfs/
 | 
			
		||||
@ -4128,7 +4128,7 @@
 | 
			
		||||
 #include <linux/initrd.h>
 | 
			
		||||
 #include <linux/string.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -39,6 +40,7 @@
 | 
			
		||||
@@ -39,6 +40,7 @@ static int __init crd_load(int in_fd, in
 | 
			
		||||
  * numbers could not be found.
 | 
			
		||||
  *
 | 
			
		||||
  * We currently check for the following magic numbers:
 | 
			
		||||
@ -4136,7 +4136,7 @@
 | 
			
		||||
  * 	minix
 | 
			
		||||
  * 	ext2
 | 
			
		||||
  *	romfs
 | 
			
		||||
@@ -53,6 +55,7 @@
 | 
			
		||||
@@ -53,6 +55,7 @@ identify_ramdisk_image(int fd, int start
 | 
			
		||||
 	struct ext2_super_block *ext2sb;
 | 
			
		||||
 	struct romfs_super_block *romfsb;
 | 
			
		||||
 	struct cramfs_super *cramfsb;
 | 
			
		||||
@ -4144,7 +4144,7 @@
 | 
			
		||||
 	int nblocks = -1;
 | 
			
		||||
 	unsigned char *buf;
 | 
			
		||||
 
 | 
			
		||||
@@ -64,6 +67,7 @@
 | 
			
		||||
@@ -64,6 +67,7 @@ identify_ramdisk_image(int fd, int start
 | 
			
		||||
 	ext2sb = (struct ext2_super_block *) buf;
 | 
			
		||||
 	romfsb = (struct romfs_super_block *) buf;
 | 
			
		||||
 	cramfsb = (struct cramfs_super *) buf;
 | 
			
		||||
@ -4152,7 +4152,7 @@
 | 
			
		||||
 	memset(buf, 0xe5, size);
 | 
			
		||||
 
 | 
			
		||||
 	/*
 | 
			
		||||
@@ -101,6 +105,15 @@
 | 
			
		||||
@@ -101,6 +105,15 @@ identify_ramdisk_image(int fd, int start
 | 
			
		||||
 		goto done;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -769,7 +769,7 @@
 | 
			
		||||
+}
 | 
			
		||||
--- a/lib/Makefile
 | 
			
		||||
+++ b/lib/Makefile
 | 
			
		||||
@@ -14,7 +14,7 @@
 | 
			
		||||
@@ -14,7 +14,7 @@ lib-$(CONFIG_SMP) += cpumask.o
 | 
			
		||||
 lib-y	+= kobject.o kref.o klist.o
 | 
			
		||||
 
 | 
			
		||||
 obj-y += div64.o sort.o parser.o halfmd4.o debug_locks.o random32.o \
 | 
			
		||||
 | 
			
		||||
@ -38,7 +38,7 @@
 | 
			
		||||
 static void squashfs_put_super(struct super_block *);
 | 
			
		||||
 static int squashfs_statfs(struct dentry *, struct kstatfs *);
 | 
			
		||||
 static int squashfs_symlink_readpage(struct file *file, struct page *page);
 | 
			
		||||
@@ -64,7 +81,11 @@
 | 
			
		||||
@@ -64,7 +81,11 @@ static int squashfs_get_sb(struct file_s
 | 
			
		||||
 			const char *, void *, struct vfsmount *);
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@ -50,7 +50,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static struct file_system_type squashfs_fs_type = {
 | 
			
		||||
 	.owner = THIS_MODULE,
 | 
			
		||||
@@ -249,6 +270,15 @@
 | 
			
		||||
@@ -249,6 +270,15 @@ SQSH_EXTERN unsigned int squashfs_read_d
 | 
			
		||||
 	if (compressed) {
 | 
			
		||||
 		int zlib_err;
 | 
			
		||||
 
 | 
			
		||||
@ -66,7 +66,7 @@
 | 
			
		||||
 		stream.next_in = c_buffer;
 | 
			
		||||
 		stream.avail_in = c_byte;
 | 
			
		||||
 		stream.next_out = buffer;
 | 
			
		||||
@@ -263,7 +293,7 @@
 | 
			
		||||
@@ -263,7 +293,7 @@ SQSH_EXTERN unsigned int squashfs_read_d
 | 
			
		||||
 			bytes = 0;
 | 
			
		||||
 		} else
 | 
			
		||||
 			bytes = stream.total_out;
 | 
			
		||||
@ -75,7 +75,7 @@
 | 
			
		||||
 		up(&msblk->read_data_mutex);
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -2045,15 +2075,19 @@
 | 
			
		||||
@@ -2045,15 +2075,19 @@ static int __init init_squashfs_fs(void)
 | 
			
		||||
 	printk(KERN_INFO "squashfs: version 3.0 (2006/03/15) "
 | 
			
		||||
 		"Phillip Lougher\n");
 | 
			
		||||
 
 | 
			
		||||
@ -95,7 +95,7 @@
 | 
			
		||||
 		destroy_inodecache();
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -2064,7 +2098,9 @@
 | 
			
		||||
@@ -2064,7 +2098,9 @@ out:
 | 
			
		||||
 
 | 
			
		||||
 static void __exit exit_squashfs_fs(void)
 | 
			
		||||
 {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/Makefile
 | 
			
		||||
+++ b/Makefile
 | 
			
		||||
@@ -537,6 +537,9 @@
 | 
			
		||||
@@ -537,6 +537,9 @@ endif
 | 
			
		||||
 NOSTDINC_FLAGS += -nostdinc -isystem $(shell $(CC) -print-file-name=include)
 | 
			
		||||
 CHECKFLAGS     += $(NOSTDINC_FLAGS)
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 #include <linux/squashfs_fs_sb.h>
 | 
			
		||||
 #include <linux/squashfs_fs_i.h>
 | 
			
		||||
 #include <linux/buffer_head.h>
 | 
			
		||||
@@ -2125,7 +2126,7 @@
 | 
			
		||||
@@ -2125,7 +2126,7 @@ static void squashfs_destroy_inode(struc
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/asm-mips/system.h
 | 
			
		||||
+++ b/include/asm-mips/system.h
 | 
			
		||||
@@ -185,7 +185,7 @@
 | 
			
		||||
@@ -185,7 +185,7 @@ extern __u64 __xchg_u64_unsupported_on_3
 | 
			
		||||
    if something tries to do an invalid xchg().  */
 | 
			
		||||
 extern void __xchg_called_with_bad_pointer(void);
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static int cfi_amdstd_read (struct mtd_info *, loff_t, size_t, size_t *, u_char *);
 | 
			
		||||
 static int cfi_amdstd_write_words(struct mtd_info *, loff_t, size_t, size_t *, const u_char *);
 | 
			
		||||
@@ -324,12 +325,19 @@
 | 
			
		||||
@@ -324,12 +325,19 @@ struct mtd_info *cfi_cmdset_0002(struct 
 | 
			
		||||
 
 | 
			
		||||
 		if (extp->MajorVersion != '1' ||
 | 
			
		||||
 		    (extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/chips/cfi_cmdset_0001.c
 | 
			
		||||
+++ b/drivers/mtd/chips/cfi_cmdset_0001.c
 | 
			
		||||
@@ -1010,7 +1010,7 @@
 | 
			
		||||
@@ -1010,7 +1010,7 @@ static void __xipram xip_enable(struct m
 | 
			
		||||
 
 | 
			
		||||
 static int __xipram xip_wait_for_operation(
 | 
			
		||||
 		struct map_info *map, struct flchip *chip,
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
 {
 | 
			
		||||
 	struct cfi_private *cfi = map->fldrv_priv;
 | 
			
		||||
 	struct cfi_pri_intelext *cfip = cfi->cmdset_priv;
 | 
			
		||||
@@ -1019,7 +1019,7 @@
 | 
			
		||||
@@ -1019,7 +1019,7 @@ static int __xipram xip_wait_for_operati
 | 
			
		||||
 	flstate_t oldstate, newstate;
 | 
			
		||||
 
 | 
			
		||||
        	start = xip_currtime();
 | 
			
		||||
@ -18,7 +18,7 @@
 | 
			
		||||
 	if (usec == 0)
 | 
			
		||||
 		usec = 500000;
 | 
			
		||||
 	done = 0;
 | 
			
		||||
@@ -1129,8 +1129,8 @@
 | 
			
		||||
@@ -1129,8 +1129,8 @@ static int __xipram xip_wait_for_operati
 | 
			
		||||
 #define XIP_INVAL_CACHED_RANGE(map, from, size)  \
 | 
			
		||||
 	INVALIDATE_CACHED_RANGE(map, from, size)
 | 
			
		||||
 
 | 
			
		||||
@ -29,7 +29,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #else
 | 
			
		||||
 
 | 
			
		||||
@@ -1142,65 +1142,65 @@
 | 
			
		||||
@@ -1142,65 +1142,65 @@ static int __xipram xip_wait_for_operati
 | 
			
		||||
 static int inval_cache_and_wait_for_operation(
 | 
			
		||||
 		struct map_info *map, struct flchip *chip,
 | 
			
		||||
 		unsigned long cmd_adr, unsigned long inval_adr, int inval_len,
 | 
			
		||||
@ -130,7 +130,7 @@
 | 
			
		||||
 	/* Done and happy. */
 | 
			
		||||
  	chip->state = FL_STATUS;
 | 
			
		||||
 	return 0;
 | 
			
		||||
@@ -1209,7 +1209,8 @@
 | 
			
		||||
@@ -1209,7 +1209,8 @@ static int inval_cache_and_wait_for_oper
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 #define WAIT_TIMEOUT(map, chip, adr, udelay) \
 | 
			
		||||
@ -140,7 +140,7 @@
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 static int do_point_onechip (struct map_info *map, struct flchip *chip, loff_t adr, size_t len)
 | 
			
		||||
@@ -1443,7 +1444,7 @@
 | 
			
		||||
@@ -1443,7 +1444,7 @@ static int __xipram do_write_oneword(str
 | 
			
		||||
 
 | 
			
		||||
 	ret = INVAL_CACHE_AND_WAIT(map, chip, adr,
 | 
			
		||||
 				   adr, map_bankwidth(map),
 | 
			
		||||
@ -149,7 +149,7 @@
 | 
			
		||||
 	if (ret) {
 | 
			
		||||
 		xip_enable(map, chip, adr);
 | 
			
		||||
 		printk(KERN_ERR "%s: word write error (status timeout)\n", map->name);
 | 
			
		||||
@@ -1683,7 +1684,7 @@
 | 
			
		||||
@@ -1683,7 +1684,7 @@ static int __xipram do_write_buffer(stru
 | 
			
		||||
 
 | 
			
		||||
 	ret = INVAL_CACHE_AND_WAIT(map, chip, cmd_adr,
 | 
			
		||||
 				   initial_adr, initial_len,
 | 
			
		||||
@ -158,7 +158,7 @@
 | 
			
		||||
 	if (ret) {
 | 
			
		||||
 		map_write(map, CMD(0x70), cmd_adr);
 | 
			
		||||
 		chip->state = FL_STATUS;
 | 
			
		||||
@@ -1818,7 +1819,7 @@
 | 
			
		||||
@@ -1818,7 +1819,7 @@ static int __xipram do_erase_oneblock(st
 | 
			
		||||
 
 | 
			
		||||
 	ret = INVAL_CACHE_AND_WAIT(map, chip, adr,
 | 
			
		||||
 				   adr, len,
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 #include <linux/buffer_head.h>
 | 
			
		||||
 #include <linux/mutex.h>
 | 
			
		||||
 #include <linux/mount.h>
 | 
			
		||||
@@ -237,10 +238,11 @@
 | 
			
		||||
@@ -237,10 +238,11 @@ static void block2mtd_free_device(struct
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 /* FIXME: ensure that mtd->size % erase_size == 0 */
 | 
			
		||||
@ -21,7 +21,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	if (!devname)
 | 
			
		||||
 		return NULL;
 | 
			
		||||
@@ -279,14 +281,18 @@
 | 
			
		||||
@@ -279,14 +281,18 @@ static struct block2mtd_dev *add_device(
 | 
			
		||||
 
 | 
			
		||||
 	/* Setup the MTD structure */
 | 
			
		||||
 	/* make the name contain the block device in */
 | 
			
		||||
@ -44,7 +44,7 @@
 | 
			
		||||
 	dev->mtd.erasesize = erase_size;
 | 
			
		||||
 	dev->mtd.writesize = 1;
 | 
			
		||||
 	dev->mtd.type = MTD_RAM;
 | 
			
		||||
@@ -299,14 +305,17 @@
 | 
			
		||||
@@ -299,14 +305,17 @@ static struct block2mtd_dev *add_device(
 | 
			
		||||
 	dev->mtd.priv = dev;
 | 
			
		||||
 	dev->mtd.owner = THIS_MODULE;
 | 
			
		||||
 
 | 
			
		||||
@ -65,7 +65,7 @@
 | 
			
		||||
 	return dev;
 | 
			
		||||
 
 | 
			
		||||
 devinit_err:
 | 
			
		||||
@@ -379,9 +388,9 @@
 | 
			
		||||
@@ -379,9 +388,9 @@ static char block2mtd_paramline[80 + 12]
 | 
			
		||||
 
 | 
			
		||||
 static int block2mtd_setup2(const char *val)
 | 
			
		||||
 {
 | 
			
		||||
@ -77,7 +77,7 @@
 | 
			
		||||
 	char *name;
 | 
			
		||||
 	size_t erase_size = PAGE_SIZE;
 | 
			
		||||
 	int i, ret;
 | 
			
		||||
@@ -392,7 +401,7 @@
 | 
			
		||||
@@ -392,7 +401,7 @@ static int block2mtd_setup2(const char *
 | 
			
		||||
 	strcpy(str, val);
 | 
			
		||||
 	kill_final_newline(str);
 | 
			
		||||
 
 | 
			
		||||
@ -86,7 +86,7 @@
 | 
			
		||||
 		token[i] = strsep(&str, ",");
 | 
			
		||||
 
 | 
			
		||||
 	if (str)
 | 
			
		||||
@@ -411,8 +420,10 @@
 | 
			
		||||
@@ -411,8 +420,10 @@ static int block2mtd_setup2(const char *
 | 
			
		||||
 			parse_err("illegal erase size");
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
@ -98,7 +98,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	return 0;
 | 
			
		||||
 }
 | 
			
		||||
@@ -446,7 +457,7 @@
 | 
			
		||||
@@ -446,7 +457,7 @@ static int block2mtd_setup(const char *v
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 module_param_call(block2mtd, block2mtd_setup, NULL, NULL, 0200);
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/Kconfig
 | 
			
		||||
+++ b/drivers/mtd/Kconfig
 | 
			
		||||
@@ -47,6 +47,16 @@
 | 
			
		||||
@@ -47,6 +47,16 @@ config MTD_PARTITIONS
 | 
			
		||||
 	  devices. Partitioning on NFTL 'devices' is a different - that's the
 | 
			
		||||
 	  'normal' form of partitioning used on a block device.
 | 
			
		||||
 
 | 
			
		||||
@ -28,7 +28,7 @@
 | 
			
		||||
 
 | 
			
		||||
 /* Our partition linked list */
 | 
			
		||||
 static LIST_HEAD(mtd_partitions);
 | 
			
		||||
@@ -39,7 +41,7 @@
 | 
			
		||||
@@ -39,7 +41,7 @@ struct mtd_part {
 | 
			
		||||
  * the pointer to that structure with this macro.
 | 
			
		||||
  */
 | 
			
		||||
 #define PART(x)  ((struct mtd_part *)(x))
 | 
			
		||||
@ -37,7 +37,7 @@
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
  * MTD methods which simply translate the effective address and pass through
 | 
			
		||||
@@ -322,6 +324,316 @@
 | 
			
		||||
@@ -322,6 +324,316 @@ int del_mtd_partitions(struct mtd_info *
 | 
			
		||||
 	return 0;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -354,7 +354,7 @@
 | 
			
		||||
 /*
 | 
			
		||||
  * This function, given a master MTD object and a partition table, creates
 | 
			
		||||
  * and registers slave MTD objects which are bound to the master according to
 | 
			
		||||
@@ -334,171 +646,31 @@
 | 
			
		||||
@@ -334,171 +646,31 @@ int add_mtd_partitions(struct mtd_info *
 | 
			
		||||
 		       int nbparts)
 | 
			
		||||
 {
 | 
			
		||||
 	struct mtd_part *slave;
 | 
			
		||||
@ -547,7 +547,7 @@
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -574,6 +746,32 @@
 | 
			
		||||
@@ -574,6 +746,32 @@ int parse_mtd_partitions(struct mtd_info
 | 
			
		||||
 	return ret;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -582,7 +582,7 @@
 | 
			
		||||
 EXPORT_SYMBOL_GPL(deregister_mtd_parser);
 | 
			
		||||
--- a/drivers/mtd/devices/block2mtd.c
 | 
			
		||||
+++ b/drivers/mtd/devices/block2mtd.c
 | 
			
		||||
@@ -34,6 +34,8 @@
 | 
			
		||||
@@ -34,6 +34,8 @@ struct block2mtd_dev {
 | 
			
		||||
 	struct block_device *blkdev;
 | 
			
		||||
 	struct mtd_info mtd;
 | 
			
		||||
 	struct mutex write_mutex;
 | 
			
		||||
@ -591,7 +591,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@@ -86,6 +88,12 @@
 | 
			
		||||
@@ -86,6 +88,12 @@ static int block2mtd_erase(struct mtd_in
 | 
			
		||||
 	size_t len = instr->len;
 | 
			
		||||
 	int err;
 | 
			
		||||
 
 | 
			
		||||
@ -604,7 +604,7 @@
 | 
			
		||||
 	instr->state = MTD_ERASING;
 | 
			
		||||
 	mutex_lock(&dev->write_mutex);
 | 
			
		||||
 	err = _block2mtd_erase(dev, from, len);
 | 
			
		||||
@@ -98,6 +106,10 @@
 | 
			
		||||
@@ -98,6 +106,10 @@ static int block2mtd_erase(struct mtd_in
 | 
			
		||||
 
 | 
			
		||||
 	instr->state = MTD_ERASE_DONE;
 | 
			
		||||
 	mtd_erase_callback(instr);
 | 
			
		||||
@ -615,7 +615,7 @@
 | 
			
		||||
 	return err;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -109,10 +121,14 @@
 | 
			
		||||
@@ -109,10 +121,14 @@ static int block2mtd_read(struct mtd_inf
 | 
			
		||||
 	struct page *page;
 | 
			
		||||
 	int index = from >> PAGE_SHIFT;
 | 
			
		||||
 	int offset = from & (PAGE_SIZE-1);
 | 
			
		||||
@ -633,7 +633,7 @@
 | 
			
		||||
 	if (from + len > mtd->size)
 | 
			
		||||
 		len = mtd->size - from;
 | 
			
		||||
 
 | 
			
		||||
@@ -127,10 +143,14 @@
 | 
			
		||||
@@ -127,10 +143,14 @@ static int block2mtd_read(struct mtd_inf
 | 
			
		||||
 		len = len - cpylen;
 | 
			
		||||
 
 | 
			
		||||
 		page = page_read(dev->blkdev->bd_inode->i_mapping, index);
 | 
			
		||||
@ -652,7 +652,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		memcpy(buf, page_address(page) + offset, cpylen);
 | 
			
		||||
 		page_cache_release(page);
 | 
			
		||||
@@ -141,7 +161,10 @@
 | 
			
		||||
@@ -141,7 +161,10 @@ static int block2mtd_read(struct mtd_inf
 | 
			
		||||
 		offset = 0;
 | 
			
		||||
 		index++;
 | 
			
		||||
 	}
 | 
			
		||||
@ -664,7 +664,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@@ -193,12 +216,22 @@
 | 
			
		||||
@@ -193,12 +216,22 @@ static int block2mtd_write(struct mtd_in
 | 
			
		||||
 		size_t *retlen, const u_char *buf)
 | 
			
		||||
 {
 | 
			
		||||
 	struct block2mtd_dev *dev = mtd->priv;
 | 
			
		||||
@ -691,7 +691,7 @@
 | 
			
		||||
 	if (to + len > mtd->size)
 | 
			
		||||
 		len = mtd->size - to;
 | 
			
		||||
 
 | 
			
		||||
@@ -207,6 +240,9 @@
 | 
			
		||||
@@ -207,6 +240,9 @@ static int block2mtd_write(struct mtd_in
 | 
			
		||||
 	mutex_unlock(&dev->write_mutex);
 | 
			
		||||
 	if (err > 0)
 | 
			
		||||
 		err = 0;
 | 
			
		||||
@ -701,7 +701,7 @@
 | 
			
		||||
 	return err;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -215,51 +251,29 @@
 | 
			
		||||
@@ -215,51 +251,29 @@ static int block2mtd_write(struct mtd_in
 | 
			
		||||
 static void block2mtd_sync(struct mtd_info *mtd)
 | 
			
		||||
 {
 | 
			
		||||
 	struct block2mtd_dev *dev = mtd->priv;
 | 
			
		||||
@ -761,7 +761,7 @@
 | 
			
		||||
 		if (devt) {
 | 
			
		||||
 			bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);
 | 
			
		||||
 		}
 | 
			
		||||
@@ -267,17 +281,96 @@
 | 
			
		||||
@@ -267,17 +281,96 @@ static struct block2mtd_dev *add_device(
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 	if (IS_ERR(bdev)) {
 | 
			
		||||
@ -861,7 +861,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	/* Setup the MTD structure */
 | 
			
		||||
 	/* make the name contain the block device in */
 | 
			
		||||
@@ -304,6 +397,7 @@
 | 
			
		||||
@@ -304,6 +397,7 @@ static struct block2mtd_dev *add_device(
 | 
			
		||||
 	dev->mtd.read = block2mtd_read;
 | 
			
		||||
 	dev->mtd.priv = dev;
 | 
			
		||||
 	dev->mtd.owner = THIS_MODULE;
 | 
			
		||||
@ -879,7 +879,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #include <asm/uaccess.h>
 | 
			
		||||
 
 | 
			
		||||
@@ -756,6 +757,13 @@
 | 
			
		||||
@@ -756,6 +757,13 @@ static int mtd_ioctl(struct inode *inode
 | 
			
		||||
 		file->f_pos = 0;
 | 
			
		||||
 		break;
 | 
			
		||||
 	}
 | 
			
		||||
@ -895,7 +895,7 @@
 | 
			
		||||
 		ret = -ENOTTY;
 | 
			
		||||
--- a/include/linux/mtd/mtd.h
 | 
			
		||||
+++ b/include/linux/mtd/mtd.h
 | 
			
		||||
@@ -98,6 +98,7 @@
 | 
			
		||||
@@ -98,6 +98,7 @@ struct mtd_oob_ops {
 | 
			
		||||
 	uint8_t		*oobbuf;
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -903,7 +903,7 @@
 | 
			
		||||
 struct mtd_info {
 | 
			
		||||
 	u_char type;
 | 
			
		||||
 	u_int32_t flags;
 | 
			
		||||
@@ -213,6 +214,9 @@
 | 
			
		||||
@@ -213,6 +214,9 @@ struct mtd_info {
 | 
			
		||||
 	struct module *owner;
 | 
			
		||||
 	int usecount;
 | 
			
		||||
 
 | 
			
		||||
@ -923,7 +923,7 @@
 | 
			
		||||
 struct mtd_partition {
 | 
			
		||||
 	char *name;			/* identifier string */
 | 
			
		||||
 	u_int32_t size;			/* partition size */
 | 
			
		||||
@@ -43,6 +44,7 @@
 | 
			
		||||
@@ -43,6 +44,7 @@ struct mtd_partition {
 | 
			
		||||
 	u_int32_t mask_flags;		/* master MTD flags to mask out for this partition */
 | 
			
		||||
 	struct nand_ecclayout *ecclayout;	/* out of band layout for this partition (NAND only)*/
 | 
			
		||||
 	struct mtd_info **mtdp;		/* pointer to store the MTD object */
 | 
			
		||||
@ -931,7 +931,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define MTDPART_OFS_NXTBLK	(-2)
 | 
			
		||||
@@ -52,6 +54,7 @@
 | 
			
		||||
@@ -52,6 +54,7 @@ struct mtd_partition {
 | 
			
		||||
 
 | 
			
		||||
 int add_mtd_partitions(struct mtd_info *, const struct mtd_partition *, int);
 | 
			
		||||
 int del_mtd_partitions(struct mtd_info *);
 | 
			
		||||
@ -941,7 +941,7 @@
 | 
			
		||||
  * Functions dealing with the various ways of partitioning the space
 | 
			
		||||
--- a/include/mtd/mtd-abi.h
 | 
			
		||||
+++ b/include/mtd/mtd-abi.h
 | 
			
		||||
@@ -95,6 +95,7 @@
 | 
			
		||||
@@ -95,6 +95,7 @@ struct otp_info {
 | 
			
		||||
 #define ECCGETLAYOUT		_IOR('M', 17, struct nand_ecclayout)
 | 
			
		||||
 #define ECCGETSTATS		_IOR('M', 18, struct mtd_ecc_stats)
 | 
			
		||||
 #define MTDFILEMODE		_IO('M', 19)
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/mtd/redboot.c
 | 
			
		||||
+++ b/drivers/mtd/redboot.c
 | 
			
		||||
@@ -251,14 +251,21 @@
 | 
			
		||||
@@ -251,14 +251,21 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 #endif
 | 
			
		||||
 		names += strlen(names)+1;
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
 struct fis_image_desc {
 | 
			
		||||
     unsigned char name[16];      // Null terminated name
 | 
			
		||||
     uint32_t	  flash_base;    // Address within FLASH of image
 | 
			
		||||
@@ -43,6 +45,7 @@
 | 
			
		||||
@@ -43,6 +45,7 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
                              struct mtd_partition **pparts,
 | 
			
		||||
                              unsigned long fis_origin)
 | 
			
		||||
 {
 | 
			
		||||
@ -17,7 +17,7 @@
 | 
			
		||||
 	int nrparts = 0;
 | 
			
		||||
 	struct fis_image_desc *buf;
 | 
			
		||||
 	struct mtd_partition *parts;
 | 
			
		||||
@@ -211,14 +214,14 @@
 | 
			
		||||
@@ -211,14 +214,14 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 #endif
 | 
			
		||||
@ -34,7 +34,7 @@
 | 
			
		||||
 #ifdef CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED
 | 
			
		||||
 	if (nulllen > 0) {
 | 
			
		||||
 		strcpy(nullname, nullstring);
 | 
			
		||||
@@ -237,6 +240,8 @@
 | 
			
		||||
@@ -237,6 +240,8 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 	}
 | 
			
		||||
 #endif
 | 
			
		||||
 	for ( ; i<nrparts; i++) {
 | 
			
		||||
@ -43,7 +43,7 @@
 | 
			
		||||
 		parts[i].size = fl->img->size;
 | 
			
		||||
 		parts[i].offset = fl->img->flash_base;
 | 
			
		||||
 		parts[i].name = names;
 | 
			
		||||
@@ -270,6 +275,14 @@
 | 
			
		||||
@@ -270,6 +275,14 @@ static int parse_redboot_partitions(stru
 | 
			
		||||
 		fl = fl->next;
 | 
			
		||||
 		kfree(tmp_fl);
 | 
			
		||||
 	}
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/linux/mtd/nand.h
 | 
			
		||||
+++ b/include/linux/mtd/nand.h
 | 
			
		||||
@@ -573,6 +573,7 @@
 | 
			
		||||
@@ -573,6 +573,7 @@ struct platform_nand_chip {
 | 
			
		||||
 	int			chip_delay;
 | 
			
		||||
 	unsigned int		options;
 | 
			
		||||
 	const char		**part_probe_types;
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/mtd/nand/plat_nand.c
 | 
			
		||||
+++ b/drivers/mtd/nand/plat_nand.c
 | 
			
		||||
@@ -71,7 +71,18 @@
 | 
			
		||||
@@ -71,7 +71,18 @@ static int __init plat_nand_probe(struct
 | 
			
		||||
 	platform_set_drvdata(pdev, data);
 | 
			
		||||
 
 | 
			
		||||
 	/* Scan to find existance of the device */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/net/netfilter/Kconfig
 | 
			
		||||
+++ b/net/netfilter/Kconfig
 | 
			
		||||
@@ -749,6 +749,27 @@
 | 
			
		||||
@@ -749,6 +749,27 @@ config NETFILTER_XT_MATCH_STATE
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -30,7 +30,7 @@
 | 
			
		||||
 	depends on NETFILTER_XTABLES
 | 
			
		||||
--- a/net/netfilter/Makefile
 | 
			
		||||
+++ b/net/netfilter/Makefile
 | 
			
		||||
@@ -78,6 +78,7 @@
 | 
			
		||||
@@ -78,6 +78,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST)
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
 | 
			
		||||
@ -2027,7 +2027,7 @@
 | 
			
		||||
+}
 | 
			
		||||
--- a/net/netfilter/nf_conntrack_core.c
 | 
			
		||||
+++ b/net/netfilter/nf_conntrack_core.c
 | 
			
		||||
@@ -205,6 +205,14 @@
 | 
			
		||||
@@ -205,6 +205,14 @@ destroy_conntrack(struct nf_conntrack *n
 | 
			
		||||
 	 * too. */
 | 
			
		||||
 	nf_ct_remove_expectations(ct);
 | 
			
		||||
 
 | 
			
		||||
@ -2044,7 +2044,7 @@
 | 
			
		||||
 		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));
 | 
			
		||||
--- a/net/netfilter/nf_conntrack_standalone.c
 | 
			
		||||
+++ b/net/netfilter/nf_conntrack_standalone.c
 | 
			
		||||
@@ -174,7 +174,12 @@
 | 
			
		||||
@@ -174,7 +174,12 @@ static int ct_seq_show(struct seq_file *
 | 
			
		||||
 		return -ENOSPC;
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -2060,7 +2060,7 @@
 | 
			
		||||
 	return 0;
 | 
			
		||||
--- a/include/net/netfilter/nf_conntrack.h
 | 
			
		||||
+++ b/include/net/netfilter/nf_conntrack.h
 | 
			
		||||
@@ -124,6 +124,22 @@
 | 
			
		||||
@@ -124,6 +124,22 @@ struct nf_conn
 | 
			
		||||
 	u_int32_t secmark;
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/linux/netfilter/xt_layer7.h
 | 
			
		||||
+++ b/include/linux/netfilter/xt_layer7.h
 | 
			
		||||
@@ -8,6 +8,7 @@
 | 
			
		||||
@@ -8,6 +8,7 @@ struct xt_layer7_info {
 | 
			
		||||
     char protocol[MAX_PROTOCOL_LEN];
 | 
			
		||||
     char pattern[MAX_PATTERN_LEN];
 | 
			
		||||
     u_int8_t invert;
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 #endif /* _XT_LAYER7_H */
 | 
			
		||||
--- a/net/netfilter/xt_layer7.c
 | 
			
		||||
+++ b/net/netfilter/xt_layer7.c
 | 
			
		||||
@@ -297,34 +297,36 @@
 | 
			
		||||
@@ -297,34 +297,36 @@ static int match_no_append(struct nf_con
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 /* add the new app data to the conntrack.  Return number of bytes added. */
 | 
			
		||||
@ -60,7 +60,7 @@
 | 
			
		||||
 	return length;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -411,7 +413,7 @@
 | 
			
		||||
@@ -411,7 +413,7 @@ match(const struct sk_buff *skbin,
 | 
			
		||||
 	const struct xt_layer7_info * info = matchinfo;
 | 
			
		||||
 	enum ip_conntrack_info master_ctinfo, ctinfo;
 | 
			
		||||
 	struct nf_conn *master_conntrack, *conntrack;
 | 
			
		||||
@ -69,7 +69,7 @@
 | 
			
		||||
 	unsigned int pattern_result, appdatalen;
 | 
			
		||||
 	regexp * comppattern;
 | 
			
		||||
 
 | 
			
		||||
@@ -439,8 +441,8 @@
 | 
			
		||||
@@ -439,8 +441,8 @@ match(const struct sk_buff *skbin,
 | 
			
		||||
 		master_conntrack = master_ct(master_conntrack);
 | 
			
		||||
 
 | 
			
		||||
 	/* if we've classified it or seen too many packets */
 | 
			
		||||
@ -80,7 +80,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		pattern_result = match_no_append(conntrack, master_conntrack,
 | 
			
		||||
 						 ctinfo, master_ctinfo, info);
 | 
			
		||||
@@ -473,6 +475,25 @@
 | 
			
		||||
@@ -473,6 +475,25 @@ match(const struct sk_buff *skbin,
 | 
			
		||||
 	/* the return value gets checked later, when we're ready to use it */
 | 
			
		||||
 	comppattern = compile_and_cache(info->pattern, info->protocol);
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -893,7 +893,7 @@
 | 
			
		||||
+
 | 
			
		||||
--- a/net/ipv4/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv4/netfilter/Kconfig
 | 
			
		||||
@@ -57,6 +57,12 @@
 | 
			
		||||
@@ -57,6 +57,12 @@ config IP_NF_IPTABLES
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
 # The matches.
 | 
			
		||||
@ -908,7 +908,7 @@
 | 
			
		||||
 	depends on IP_NF_IPTABLES
 | 
			
		||||
--- a/net/ipv4/netfilter/Makefile
 | 
			
		||||
+++ b/net/ipv4/netfilter/Makefile
 | 
			
		||||
@@ -50,6 +50,8 @@
 | 
			
		||||
@@ -50,6 +50,8 @@ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -7517,7 +7517,7 @@
 | 
			
		||||
+module_exit(ipt_SET_fini);
 | 
			
		||||
--- a/net/ipv4/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv4/netfilter/Kconfig
 | 
			
		||||
@@ -401,5 +401,122 @@
 | 
			
		||||
@@ -401,5 +401,122 @@ config IP_NF_ARP_MANGLE
 | 
			
		||||
 	  Allows altering the ARP packet payload: source and destination
 | 
			
		||||
 	  hardware and network addresses.
 | 
			
		||||
 
 | 
			
		||||
@ -7642,7 +7642,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/net/ipv4/netfilter/Makefile
 | 
			
		||||
+++ b/net/ipv4/netfilter/Makefile
 | 
			
		||||
@@ -49,6 +49,7 @@
 | 
			
		||||
@@ -49,6 +49,7 @@ obj-$(CONFIG_IP_NF_MATCH_AH) += ipt_ah.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
 | 
			
		||||
@ -7650,7 +7650,7 @@
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
 | 
			
		||||
 
 | 
			
		||||
@@ -62,6 +63,18 @@
 | 
			
		||||
@@ -62,6 +63,18 @@ obj-$(CONFIG_IP_NF_TARGET_REDIRECT) += i
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_TTL) += ipt_TTL.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_ULOG) += ipt_ULOG.o
 | 
			
		||||
 | 
			
		||||
@ -204,7 +204,7 @@
 | 
			
		||||
+}
 | 
			
		||||
--- a/net/ipv4/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv4/netfilter/Kconfig
 | 
			
		||||
@@ -63,6 +63,22 @@
 | 
			
		||||
@@ -63,6 +63,22 @@ config IP_NF_MATCH_IPP2P
 | 
			
		||||
 	help
 | 
			
		||||
 	  Module for matching traffic of various Peer-to-Peer applications
 | 
			
		||||
 
 | 
			
		||||
@ -229,7 +229,7 @@
 | 
			
		||||
 	depends on IP_NF_IPTABLES
 | 
			
		||||
--- a/net/ipv4/netfilter/Makefile
 | 
			
		||||
+++ b/net/ipv4/netfilter/Makefile
 | 
			
		||||
@@ -50,6 +50,7 @@
 | 
			
		||||
@@ -50,6 +50,7 @@ obj-$(CONFIG_IP_NF_MATCH_ECN) += ipt_ecn
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_RECENT) += ipt_recent.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_MATCH_SET) += ipt_set.o
 | 
			
		||||
 | 
			
		||||
@ -477,7 +477,7 @@
 | 
			
		||||
+
 | 
			
		||||
--- a/drivers/net/Kconfig
 | 
			
		||||
+++ b/drivers/net/Kconfig
 | 
			
		||||
@@ -117,6 +117,129 @@
 | 
			
		||||
@@ -117,6 +117,129 @@ config EQUALIZER
 | 
			
		||||
 	  To compile this driver as a module, choose M here: the module
 | 
			
		||||
 	  will be called eql.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -609,7 +609,7 @@
 | 
			
		||||
 	select CRC32
 | 
			
		||||
--- a/drivers/net/Makefile
 | 
			
		||||
+++ b/drivers/net/Makefile
 | 
			
		||||
@@ -142,6 +142,7 @@
 | 
			
		||||
@@ -142,6 +142,7 @@ obj-$(CONFIG_SLHC) += slhc.o
 | 
			
		||||
 obj-$(CONFIG_XEN_NETDEV_FRONTEND) += xen-netfront.o
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_DUMMY) += dummy.o
 | 
			
		||||
@ -653,7 +653,7 @@
 | 
			
		||||
+#endif /* _IP6T_IMQ_H */
 | 
			
		||||
--- a/include/linux/skbuff.h
 | 
			
		||||
+++ b/include/linux/skbuff.h
 | 
			
		||||
@@ -300,6 +300,10 @@
 | 
			
		||||
@@ -300,6 +300,10 @@ struct sk_buff {
 | 
			
		||||
 	struct nf_conntrack	*nfct;
 | 
			
		||||
 	struct sk_buff		*nfct_reasm;
 | 
			
		||||
 #endif
 | 
			
		||||
@ -664,7 +664,7 @@
 | 
			
		||||
 #ifdef CONFIG_BRIDGE_NETFILTER
 | 
			
		||||
 	struct nf_bridge_info	*nf_bridge;
 | 
			
		||||
 #endif
 | 
			
		||||
@@ -1633,6 +1637,10 @@
 | 
			
		||||
@@ -1633,6 +1637,10 @@ static inline void __nf_copy(struct sk_b
 | 
			
		||||
 	dst->nfct_reasm = src->nfct_reasm;
 | 
			
		||||
 	nf_conntrack_get_reasm(src->nfct_reasm);
 | 
			
		||||
 #endif
 | 
			
		||||
@ -687,7 +687,7 @@
 | 
			
		||||
 #include <linux/proc_fs.h>
 | 
			
		||||
 #include <linux/seq_file.h>
 | 
			
		||||
 #include <linux/stat.h>
 | 
			
		||||
@@ -1569,7 +1572,11 @@
 | 
			
		||||
@@ -1569,7 +1572,11 @@ static int dev_gso_segment(struct sk_buf
 | 
			
		||||
 int dev_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
 | 
			
		||||
 {
 | 
			
		||||
 	if (likely(!skb->next)) {
 | 
			
		||||
@ -774,7 +774,7 @@
 | 
			
		||||
+MODULE_LICENSE("GPL");
 | 
			
		||||
--- a/net/ipv4/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv4/netfilter/Kconfig
 | 
			
		||||
@@ -145,6 +145,17 @@
 | 
			
		||||
@@ -145,6 +145,17 @@ config IP_NF_FILTER
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -794,7 +794,7 @@
 | 
			
		||||
 	depends on IP_NF_FILTER
 | 
			
		||||
--- a/net/ipv4/netfilter/Makefile
 | 
			
		||||
+++ b/net/ipv4/netfilter/Makefile
 | 
			
		||||
@@ -58,6 +58,7 @@
 | 
			
		||||
@@ -58,6 +58,7 @@ obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_i
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_CLUSTERIP) += ipt_CLUSTERIP.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_ECN) += ipt_ECN.o
 | 
			
		||||
 obj-$(CONFIG_IP_NF_TARGET_LOG) += ipt_LOG.o
 | 
			
		||||
@ -876,7 +876,7 @@
 | 
			
		||||
+MODULE_LICENSE("GPL");
 | 
			
		||||
--- a/net/ipv6/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv6/netfilter/Kconfig
 | 
			
		||||
@@ -179,6 +179,15 @@
 | 
			
		||||
@@ -179,6 +179,15 @@ config IP6_NF_MANGLE
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -904,7 +904,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/net/sched/sch_generic.c
 | 
			
		||||
+++ b/net/sched/sch_generic.c
 | 
			
		||||
@@ -203,6 +203,7 @@
 | 
			
		||||
@@ -203,6 +203,7 @@ void __qdisc_run(struct net_device *dev)
 | 
			
		||||
 
 | 
			
		||||
 	clear_bit(__LINK_STATE_QDISC_RUNNING, &dev->state);
 | 
			
		||||
 }
 | 
			
		||||
 | 
			
		||||
@ -95,7 +95,7 @@
 | 
			
		||||
+#define xt_request_find_match xt_request_find_match_lo
 | 
			
		||||
--- a/net/netfilter/Kconfig
 | 
			
		||||
+++ b/net/netfilter/Kconfig
 | 
			
		||||
@@ -288,6 +288,14 @@
 | 
			
		||||
@@ -288,6 +288,14 @@ config NETFILTER_XTABLES
 | 
			
		||||
 
 | 
			
		||||
 # alphabetically ordered list of targets
 | 
			
		||||
 
 | 
			
		||||
@ -110,7 +110,7 @@
 | 
			
		||||
 config NETFILTER_XT_TARGET_CLASSIFY
 | 
			
		||||
 	tristate '"CLASSIFY" target support'
 | 
			
		||||
 	depends on NETFILTER_XTABLES
 | 
			
		||||
@@ -317,6 +325,14 @@
 | 
			
		||||
@@ -317,6 +325,14 @@ config NETFILTER_XT_TARGET_CONNMARK
 | 
			
		||||
 	  <file:Documentation/kbuild/modules.txt>.  The module will be called
 | 
			
		||||
 	  ipt_CONNMARK.ko.  If unsure, say `N'.
 | 
			
		||||
 
 | 
			
		||||
@ -125,7 +125,7 @@
 | 
			
		||||
 config NETFILTER_XT_TARGET_DSCP
 | 
			
		||||
 	tristate '"DSCP" and "TOS" target support'
 | 
			
		||||
 	depends on NETFILTER_XTABLES
 | 
			
		||||
@@ -653,6 +669,14 @@
 | 
			
		||||
@@ -653,6 +669,14 @@ config NETFILTER_XT_MATCH_POLICY
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -142,7 +142,7 @@
 | 
			
		||||
 	depends on NETFILTER_XTABLES
 | 
			
		||||
--- a/net/netfilter/Makefile
 | 
			
		||||
+++ b/net/netfilter/Makefile
 | 
			
		||||
@@ -51,6 +51,8 @@
 | 
			
		||||
@@ -51,6 +51,8 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_SECMARK
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_TCPMSS) += xt_TCPMSS.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP) += xt_TCPOPTSTRIP.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_TRACE) += xt_TRACE.o
 | 
			
		||||
@ -151,7 +151,7 @@
 | 
			
		||||
 
 | 
			
		||||
 # matches
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_COMMENT) += xt_comment.o
 | 
			
		||||
@@ -84,3 +86,4 @@
 | 
			
		||||
@@ -84,3 +86,4 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_STRING) 
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_TIME) += xt_time.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_MATCH_U32) += xt_u32.o
 | 
			
		||||
@ -833,7 +833,7 @@
 | 
			
		||||
+MODULE_ALIAS("ipt_portscan");
 | 
			
		||||
--- a/drivers/char/random.c
 | 
			
		||||
+++ b/drivers/char/random.c
 | 
			
		||||
@@ -1554,6 +1554,8 @@
 | 
			
		||||
@@ -1554,6 +1554,8 @@ __u32 secure_tcp_sequence_number(__be32 
 | 
			
		||||
 	return seq;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/net/netfilter/Kconfig
 | 
			
		||||
+++ b/net/netfilter/Kconfig
 | 
			
		||||
@@ -449,6 +449,23 @@
 | 
			
		||||
@@ -449,6 +449,23 @@ config NETFILTER_XT_TARGET_CONNSECMARK
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -26,7 +26,7 @@
 | 
			
		||||
 	depends on NETFILTER_XTABLES && (IPV6 || IPV6=n)
 | 
			
		||||
--- a/net/netfilter/Makefile
 | 
			
		||||
+++ b/net/netfilter/Makefile
 | 
			
		||||
@@ -48,6 +48,7 @@
 | 
			
		||||
@@ -48,6 +48,7 @@ obj-$(CONFIG_NETFILTER_XT_TARGET_NFQUEUE
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_NOTRACK) += xt_NOTRACK.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_RATEEST) += xt_RATEEST.o
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XT_TARGET_SECMARK) += xt_SECMARK.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/net/netfilter/Kconfig
 | 
			
		||||
+++ b/net/netfilter/Kconfig
 | 
			
		||||
@@ -157,7 +157,7 @@
 | 
			
		||||
@@ -157,7 +157,7 @@ config NF_CONNTRACK_FTP
 | 
			
		||||
 
 | 
			
		||||
 config NF_CONNTRACK_H323
 | 
			
		||||
 	tristate "H.323 protocol support"
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
 	depends on NETFILTER_ADVANCED
 | 
			
		||||
 	help
 | 
			
		||||
 	  H.323 is a VoIP signalling protocol from ITU-T. As one of the most
 | 
			
		||||
@@ -468,7 +468,7 @@
 | 
			
		||||
@@ -468,7 +468,7 @@ config NETFILTER_XT_TARGET_TARPIT
 | 
			
		||||
 
 | 
			
		||||
 config NETFILTER_XT_TARGET_TCPMSS
 | 
			
		||||
 	tristate '"TCPMSS" target support'
 | 
			
		||||
 | 
			
		||||
@ -294,7 +294,7 @@
 | 
			
		||||
+#endif /* _NETFILTER_MIME_H */
 | 
			
		||||
--- a/net/ipv4/netfilter/Makefile
 | 
			
		||||
+++ b/net/ipv4/netfilter/Makefile
 | 
			
		||||
@@ -23,6 +23,7 @@
 | 
			
		||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_NF_NAT_AMANDA) += nf_nat_am
 | 
			
		||||
 obj-$(CONFIG_NF_NAT_FTP) += nf_nat_ftp.o
 | 
			
		||||
 obj-$(CONFIG_NF_NAT_H323) += nf_nat_h323.o
 | 
			
		||||
 obj-$(CONFIG_NF_NAT_IRC) += nf_nat_irc.o
 | 
			
		||||
@ -304,7 +304,7 @@
 | 
			
		||||
 obj-$(CONFIG_NF_NAT_SNMP_BASIC) += nf_nat_snmp_basic.o
 | 
			
		||||
--- a/net/netfilter/Kconfig
 | 
			
		||||
+++ b/net/netfilter/Kconfig
 | 
			
		||||
@@ -270,6 +270,16 @@
 | 
			
		||||
@@ -270,6 +270,16 @@ config NF_CONNTRACK_TFTP
 | 
			
		||||
 
 | 
			
		||||
 	  To compile it as a module, choose M here.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -323,7 +323,7 @@
 | 
			
		||||
 	depends on NF_CONNTRACK
 | 
			
		||||
--- a/net/netfilter/Makefile
 | 
			
		||||
+++ b/net/netfilter/Makefile
 | 
			
		||||
@@ -33,6 +33,7 @@
 | 
			
		||||
@@ -33,6 +33,7 @@ obj-$(CONFIG_NF_CONNTRACK_PPTP) += nf_co
 | 
			
		||||
 obj-$(CONFIG_NF_CONNTRACK_SANE) += nf_conntrack_sane.o
 | 
			
		||||
 obj-$(CONFIG_NF_CONNTRACK_SIP) += nf_conntrack_sip.o
 | 
			
		||||
 obj-$(CONFIG_NF_CONNTRACK_TFTP) += nf_conntrack_tftp.o
 | 
			
		||||
@ -333,7 +333,7 @@
 | 
			
		||||
 obj-$(CONFIG_NETFILTER_XTABLES) += x_tables.o xt_tcpudp.o
 | 
			
		||||
--- a/net/ipv4/netfilter/Kconfig
 | 
			
		||||
+++ b/net/ipv4/netfilter/Kconfig
 | 
			
		||||
@@ -304,6 +304,11 @@
 | 
			
		||||
@@ -304,6 +304,11 @@ config NF_NAT_IRC
 | 
			
		||||
 	depends on IP_NF_IPTABLES && NF_CONNTRACK && NF_NAT
 | 
			
		||||
 	default NF_NAT && NF_CONNTRACK_IRC
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/linux/pkt_sched.h
 | 
			
		||||
+++ b/include/linux/pkt_sched.h
 | 
			
		||||
@@ -162,8 +162,37 @@
 | 
			
		||||
@@ -162,8 +162,37 @@ struct tc_sfq_xstats
 | 
			
		||||
  *
 | 
			
		||||
  *	The only reason for this is efficiency, it is possible
 | 
			
		||||
  *	to change these parameters in compile time.
 | 
			
		||||
@ -40,7 +40,7 @@
 | 
			
		||||
 enum
 | 
			
		||||
--- a/net/sched/Kconfig
 | 
			
		||||
+++ b/net/sched/Kconfig
 | 
			
		||||
@@ -128,6 +128,37 @@
 | 
			
		||||
@@ -128,6 +128,37 @@ config NET_SCH_SFQ
 | 
			
		||||
 	  To compile this code as a module, choose M here: the
 | 
			
		||||
 	  module will be called sch_sfq.
 | 
			
		||||
 
 | 
			
		||||
@ -80,7 +80,7 @@
 | 
			
		||||
 	---help---
 | 
			
		||||
--- a/net/sched/Makefile
 | 
			
		||||
+++ b/net/sched/Makefile
 | 
			
		||||
@@ -23,6 +23,7 @@
 | 
			
		||||
@@ -23,6 +23,7 @@ obj-$(CONFIG_NET_SCH_GRED)	+= sch_gred.o
 | 
			
		||||
 obj-$(CONFIG_NET_SCH_INGRESS)	+= sch_ingress.o 
 | 
			
		||||
 obj-$(CONFIG_NET_SCH_DSMARK)	+= sch_dsmark.o
 | 
			
		||||
 obj-$(CONFIG_NET_SCH_SFQ)	+= sch_sfq.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/arch/mips/Makefile
 | 
			
		||||
+++ b/arch/mips/Makefile
 | 
			
		||||
@@ -597,6 +597,9 @@
 | 
			
		||||
@@ -597,6 +597,9 @@ core-$(CONFIG_TOSHIBA_RBTX4938) += arch/
 | 
			
		||||
 cflags-$(CONFIG_TOSHIBA_RBTX4938) += -Iinclude/asm-mips/mach-tx49xx
 | 
			
		||||
 load-$(CONFIG_TOSHIBA_RBTX4938) += 0xffffffff80100000
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/jffs2/build.c
 | 
			
		||||
+++ b/fs/jffs2/build.c
 | 
			
		||||
@@ -111,6 +111,17 @@
 | 
			
		||||
@@ -111,6 +111,17 @@ static int jffs2_build_filesystem(struct
 | 
			
		||||
 	dbg_fsbuild("scanned flash completely\n");
 | 
			
		||||
 	jffs2_dbg_dump_block_lists_nolock(c);
 | 
			
		||||
 
 | 
			
		||||
@ -20,7 +20,7 @@
 | 
			
		||||
 	/* Now scan the directory tree, increasing nlink according to every dirent found. */
 | 
			
		||||
--- a/fs/jffs2/scan.c
 | 
			
		||||
+++ b/fs/jffs2/scan.c
 | 
			
		||||
@@ -72,7 +72,7 @@
 | 
			
		||||
@@ -72,7 +72,7 @@ static int file_dirty(struct jffs2_sb_in
 | 
			
		||||
 		return ret;
 | 
			
		||||
 	if ((ret = jffs2_scan_dirty_space(c, jeb, jeb->free_size)))
 | 
			
		||||
 		return ret;
 | 
			
		||||
@ -29,7 +29,7 @@
 | 
			
		||||
 	   think it's recoverable now. */
 | 
			
		||||
 	jeb->dirty_size += jeb->wasted_size;
 | 
			
		||||
 	c->dirty_size += jeb->wasted_size;
 | 
			
		||||
@@ -144,8 +144,11 @@
 | 
			
		||||
@@ -144,8 +144,11 @@ int jffs2_scan_medium(struct jffs2_sb_in
 | 
			
		||||
 		/* reset summary info for next eraseblock scan */
 | 
			
		||||
 		jffs2_sum_reset_collected(s);
 | 
			
		||||
 
 | 
			
		||||
@ -43,7 +43,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		if (ret < 0)
 | 
			
		||||
 			goto out;
 | 
			
		||||
@@ -400,7 +403,7 @@
 | 
			
		||||
@@ -400,7 +403,7 @@ static int jffs2_scan_xref_node(struct j
 | 
			
		||||
 	if (!ref)
 | 
			
		||||
 		return -ENOMEM;
 | 
			
		||||
 
 | 
			
		||||
@ -52,7 +52,7 @@
 | 
			
		||||
 	 * and AFTER xattr_ref is marked as a dead xref,
 | 
			
		||||
 	 * ref->xid is used to store 32bit xid, xd is not used
 | 
			
		||||
 	 * ref->ino is used to store 32bit inode-number, ic is not used
 | 
			
		||||
@@ -473,7 +476,7 @@
 | 
			
		||||
@@ -473,7 +476,7 @@ static int jffs2_scan_eraseblock (struct
 | 
			
		||||
 		struct jffs2_sum_marker *sm;
 | 
			
		||||
 		void *sumptr = NULL;
 | 
			
		||||
 		uint32_t sumlen;
 | 
			
		||||
@ -61,7 +61,7 @@
 | 
			
		||||
 		if (!buf_size) {
 | 
			
		||||
 			/* XIP case. Just look, point at the summary if it's there */
 | 
			
		||||
 			sm = (void *)buf + c->sector_size - sizeof(*sm);
 | 
			
		||||
@@ -489,9 +492,9 @@
 | 
			
		||||
@@ -489,9 +492,9 @@ static int jffs2_scan_eraseblock (struct
 | 
			
		||||
 				buf_len = sizeof(*sm);
 | 
			
		||||
 
 | 
			
		||||
 			/* Read as much as we want into the _end_ of the preallocated buffer */
 | 
			
		||||
@ -73,7 +73,7 @@
 | 
			
		||||
 			if (err)
 | 
			
		||||
 				return err;
 | 
			
		||||
 
 | 
			
		||||
@@ -510,9 +513,9 @@
 | 
			
		||||
@@ -510,9 +513,9 @@ static int jffs2_scan_eraseblock (struct
 | 
			
		||||
 				}
 | 
			
		||||
 				if (buf_len < sumlen) {
 | 
			
		||||
 					/* Need to read more so that the entire summary node is present */
 | 
			
		||||
@ -85,7 +85,7 @@
 | 
			
		||||
 					if (err)
 | 
			
		||||
 						return err;
 | 
			
		||||
 				}
 | 
			
		||||
@@ -525,7 +528,7 @@
 | 
			
		||||
@@ -525,7 +528,7 @@ static int jffs2_scan_eraseblock (struct
 | 
			
		||||
 
 | 
			
		||||
 			if (buf_size && sumlen > buf_size)
 | 
			
		||||
 				kfree(sumptr);
 | 
			
		||||
@ -94,7 +94,7 @@
 | 
			
		||||
 			   If it returns positive, that's a block classification
 | 
			
		||||
 			   (i.e. BLK_STATE_xxx) so return that too.
 | 
			
		||||
 			   If it returns zero, fall through to full scan. */
 | 
			
		||||
@@ -546,6 +549,17 @@
 | 
			
		||||
@@ -546,6 +549,17 @@ static int jffs2_scan_eraseblock (struct
 | 
			
		||||
 			return err;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@ -112,7 +112,7 @@
 | 
			
		||||
 	/* We temporarily use 'ofs' as a pointer into the buffer/jeb */
 | 
			
		||||
 	ofs = 0;
 | 
			
		||||
 
 | 
			
		||||
@@ -671,7 +685,7 @@
 | 
			
		||||
@@ -671,7 +685,7 @@ scan_more:
 | 
			
		||||
 				scan_end = buf_len;
 | 
			
		||||
 				goto more_empty;
 | 
			
		||||
 			}
 | 
			
		||||
@ -121,7 +121,7 @@
 | 
			
		||||
 			/* See how much more there is to read in this eraseblock... */
 | 
			
		||||
 			buf_len = min_t(uint32_t, buf_size, jeb->offset + c->sector_size - ofs);
 | 
			
		||||
 			if (!buf_len) {
 | 
			
		||||
@@ -907,7 +921,7 @@
 | 
			
		||||
@@ -907,7 +921,7 @@ scan_more:
 | 
			
		||||
 
 | 
			
		||||
 	D1(printk(KERN_DEBUG "Block at 0x%08x: free 0x%08x, dirty 0x%08x, unchecked 0x%08x, used 0x%08x, wasted 0x%08x\n",
 | 
			
		||||
 		  jeb->offset,jeb->free_size, jeb->dirty_size, jeb->unchecked_size, jeb->used_size, jeb->wasted_size));
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/r8169.c
 | 
			
		||||
+++ b/drivers/net/r8169.c
 | 
			
		||||
@@ -1539,7 +1539,7 @@
 | 
			
		||||
@@ -1539,7 +1539,7 @@ static const struct rtl_cfg_info {
 | 
			
		||||
 		.hw_start	= rtl_hw_start_8169,
 | 
			
		||||
 		.region		= 1,
 | 
			
		||||
 		.align		= 0,
 | 
			
		||||
@ -9,7 +9,7 @@
 | 
			
		||||
 				  RxFIFOOver | TxErr | TxOK | RxOK | RxErr,
 | 
			
		||||
 		.napi_event	= RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,
 | 
			
		||||
 		.msi		= 0
 | 
			
		||||
@@ -1548,7 +1548,7 @@
 | 
			
		||||
@@ -1548,7 +1548,7 @@ static const struct rtl_cfg_info {
 | 
			
		||||
 		.hw_start	= rtl_hw_start_8168,
 | 
			
		||||
 		.region		= 2,
 | 
			
		||||
 		.align		= 8,
 | 
			
		||||
@ -18,7 +18,7 @@
 | 
			
		||||
 				  TxErr | TxOK | RxOK | RxErr,
 | 
			
		||||
 		.napi_event	= TxErr | TxOK | RxOK | RxOverflow,
 | 
			
		||||
 		.msi		= RTL_FEATURE_MSI
 | 
			
		||||
@@ -1557,7 +1557,7 @@
 | 
			
		||||
@@ -1557,7 +1557,7 @@ static const struct rtl_cfg_info {
 | 
			
		||||
 		.hw_start	= rtl_hw_start_8101,
 | 
			
		||||
 		.region		= 2,
 | 
			
		||||
 		.align		= 8,
 | 
			
		||||
@ -27,7 +27,7 @@
 | 
			
		||||
 				  RxFIFOOver | TxErr | TxOK | RxOK | RxErr,
 | 
			
		||||
 		.napi_event	= RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,
 | 
			
		||||
 		.msi		= RTL_FEATURE_MSI
 | 
			
		||||
@@ -2905,10 +2905,12 @@
 | 
			
		||||
@@ -2905,10 +2905,12 @@ static irqreturn_t rtl8169_interrupt(int
 | 
			
		||||
 			break;
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/Kconfig
 | 
			
		||||
+++ b/fs/Kconfig
 | 
			
		||||
@@ -1477,6 +1477,9 @@
 | 
			
		||||
@@ -1477,6 +1477,9 @@ config VXFS_FS
 | 
			
		||||
 	  To compile this as a module, choose M here: the module will be
 | 
			
		||||
 	  called freevxfs.  If unsure, say N.
 | 
			
		||||
 
 | 
			
		||||
@ -12,7 +12,7 @@
 | 
			
		||||
 	depends on BLOCK
 | 
			
		||||
--- a/fs/Makefile
 | 
			
		||||
+++ b/fs/Makefile
 | 
			
		||||
@@ -77,6 +77,7 @@
 | 
			
		||||
@@ -77,6 +77,7 @@ obj-$(CONFIG_SQUASHFS)		+= squashfs/
 | 
			
		||||
 obj-y				+= ramfs/
 | 
			
		||||
 obj-$(CONFIG_HUGETLBFS)		+= hugetlbfs/
 | 
			
		||||
 obj-$(CONFIG_CODA_FS)		+= coda/
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/mini_fo/main.c
 | 
			
		||||
+++ b/fs/mini_fo/main.c
 | 
			
		||||
@@ -79,6 +79,7 @@
 | 
			
		||||
@@ -79,6 +79,7 @@ mini_fo_tri_interpose(dentry_t *hidden_d
 | 
			
		||||
 	 * of the new inode's fields
 | 
			
		||||
 	 */
 | 
			
		||||
 
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 	/*
 | 
			
		||||
 	 * original: inode = iget(sb, hidden_inode->i_ino);
 | 
			
		||||
 	 */
 | 
			
		||||
@@ -87,6 +88,13 @@
 | 
			
		||||
@@ -87,6 +88,13 @@ mini_fo_tri_interpose(dentry_t *hidden_d
 | 
			
		||||
 		err = -EACCES;		/* should be impossible??? */
 | 
			
		||||
 		goto out;
 | 
			
		||||
 	}
 | 
			
		||||
@ -22,7 +22,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	/*
 | 
			
		||||
 	 * interpose the inode if not already interposed
 | 
			
		||||
@@ -184,9 +192,9 @@
 | 
			
		||||
@@ -184,9 +192,9 @@ mini_fo_parse_options(super_block_t *sb,
 | 
			
		||||
 				hidden_root = ERR_PTR(err);
 | 
			
		||||
 				goto out;
 | 
			
		||||
 			}
 | 
			
		||||
@ -35,7 +35,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		} else if(!strncmp("sto=", options, 4)) {
 | 
			
		||||
 			/* parse the storage dir */
 | 
			
		||||
@@ -204,9 +212,9 @@
 | 
			
		||||
@@ -204,9 +212,9 @@ mini_fo_parse_options(super_block_t *sb,
 | 
			
		||||
 				hidden_root2 = ERR_PTR(err);
 | 
			
		||||
 				goto out;
 | 
			
		||||
 			}
 | 
			
		||||
@ -50,7 +50,7 @@
 | 
			
		||||
 			/* validate storage dir, this is done in
 | 
			
		||||
--- a/fs/mini_fo/mini_fo.h
 | 
			
		||||
+++ b/fs/mini_fo/mini_fo.h
 | 
			
		||||
@@ -302,6 +302,10 @@
 | 
			
		||||
@@ -302,6 +302,10 @@ extern int mini_fo_tri_interpose(dentry_
 | 
			
		||||
 extern int mini_fo_cp_cont(dentry_t *tgt_dentry, struct vfsmount *tgt_mnt,
 | 
			
		||||
 			   dentry_t *src_dentry, struct vfsmount *src_mnt);
 | 
			
		||||
 
 | 
			
		||||
@ -61,7 +61,7 @@
 | 
			
		||||
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
 | 
			
		||||
 extern int mini_fo_create(inode_t *dir, dentry_t *dentry, int mode, struct nameidata *nd);
 | 
			
		||||
 
 | 
			
		||||
@@ -501,6 +505,29 @@
 | 
			
		||||
@@ -501,6 +505,29 @@ static inline void double_unlock(struct 
 | 
			
		||||
 #endif  /* if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) */
 | 
			
		||||
 #endif /* __KERNEL__ */
 | 
			
		||||
 
 | 
			
		||||
@ -93,7 +93,7 @@
 | 
			
		||||
  */
 | 
			
		||||
--- a/fs/mini_fo/super.c
 | 
			
		||||
+++ b/fs/mini_fo/super.c
 | 
			
		||||
@@ -262,10 +262,31 @@
 | 
			
		||||
@@ -262,10 +262,31 @@ mini_fo_umount_begin(super_block_t *sb)
 | 
			
		||||
 }
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -127,7 +127,7 @@
 | 
			
		||||
 #endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
 | 
			
		||||
--- a/fs/mini_fo/aux.c
 | 
			
		||||
+++ b/fs/mini_fo/aux.c
 | 
			
		||||
@@ -164,11 +164,11 @@
 | 
			
		||||
@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb, 
 | 
			
		||||
 	err = vfs_path_lookup(mnt->mnt_root, mnt, bpath+1, 0, &nd);
 | 
			
		||||
 
 | 
			
		||||
 	/* validate */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/mini_fo/meta.c
 | 
			
		||||
+++ b/fs/mini_fo/meta.c
 | 
			
		||||
@@ -442,6 +442,11 @@
 | 
			
		||||
@@ -442,6 +442,11 @@ int meta_write_d_entry(dentry_t *dentry,
 | 
			
		||||
 			   S_IRUSR | S_IWUSR);
 | 
			
		||||
 #endif
 | 
			
		||||
 	}
 | 
			
		||||
@ -12,7 +12,7 @@
 | 
			
		||||
         /* open META-file for writing */
 | 
			
		||||
         meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
 | 
			
		||||
         if(!meta_file || IS_ERR(meta_file)) {
 | 
			
		||||
@@ -535,6 +540,11 @@
 | 
			
		||||
@@ -535,6 +540,11 @@ int meta_write_r_entry(dentry_t *dentry,
 | 
			
		||||
 			   meta_dentry, S_IRUSR | S_IWUSR);
 | 
			
		||||
 #endif
 | 
			
		||||
 	}
 | 
			
		||||
@ -24,7 +24,7 @@
 | 
			
		||||
         /* open META-file for writing */
 | 
			
		||||
         meta_file = dentry_open(meta_dentry, meta_mnt, 0x1);
 | 
			
		||||
         if(!meta_file || IS_ERR(meta_file)) {
 | 
			
		||||
@@ -671,14 +681,16 @@
 | 
			
		||||
@@ -671,14 +681,16 @@ int meta_sync_d_list(dentry_t *dentry, i
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@ -44,7 +44,7 @@
 | 
			
		||||
 		dput(meta_dentry);
 | 
			
		||||
 		err = -1;
 | 
			
		||||
                 goto out;
 | 
			
		||||
@@ -811,14 +823,16 @@
 | 
			
		||||
@@ -811,14 +823,16 @@ int meta_sync_r_list(dentry_t *dentry, i
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/mini_fo/super.c
 | 
			
		||||
+++ b/fs/mini_fo/super.c
 | 
			
		||||
@@ -84,6 +84,7 @@
 | 
			
		||||
@@ -84,6 +84,7 @@ mini_fo_write_inode(inode_t *inode, int 
 | 
			
		||||
 #endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 STATIC void
 | 
			
		||||
 mini_fo_put_inode(inode_t *inode)
 | 
			
		||||
 {
 | 
			
		||||
@@ -99,6 +100,7 @@
 | 
			
		||||
@@ -99,6 +100,7 @@ mini_fo_put_inode(inode_t *inode)
 | 
			
		||||
 	if (atomic_read(&inode->i_count) == 1)
 | 
			
		||||
 		inode->i_nlink = 0;
 | 
			
		||||
 }
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
 #if defined(FIST_DEBUG) || defined(FIST_FILTER_SCA)
 | 
			
		||||
@@ -238,7 +240,7 @@
 | 
			
		||||
@@ -238,7 +240,7 @@ mini_fo_clear_inode(inode_t *inode)
 | 
			
		||||
  * dies.
 | 
			
		||||
  */
 | 
			
		||||
 STATIC void
 | 
			
		||||
@ -25,7 +25,7 @@
 | 
			
		||||
 mini_fo_umount_begin(struct vfsmount *mnt, int flags)
 | 
			
		||||
 {
 | 
			
		||||
 	struct vfsmount *hidden_mnt;
 | 
			
		||||
@@ -290,7 +292,9 @@
 | 
			
		||||
@@ -290,7 +292,9 @@ struct super_operations mini_fo_sops =
 | 
			
		||||
 #if defined(FIST_DEBUG) || defined(FIST_FILTER_SCA)
 | 
			
		||||
 	write_inode:	mini_fo_write_inode,
 | 
			
		||||
 #endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/lib/kobject_uevent.c
 | 
			
		||||
+++ b/lib/kobject_uevent.c
 | 
			
		||||
@@ -29,7 +29,8 @@
 | 
			
		||||
@@ -29,7 +29,8 @@ u64 uevent_seqnum;
 | 
			
		||||
 char uevent_helper[UEVENT_HELPER_PATH_LEN] = CONFIG_UEVENT_HELPER_PATH;
 | 
			
		||||
 static DEFINE_SPINLOCK(sequence_lock);
 | 
			
		||||
 #if defined(CONFIG_NET)
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 /* the strings here must match the enum in include/linux/kobject.h */
 | 
			
		||||
@@ -42,6 +43,18 @@
 | 
			
		||||
@@ -42,6 +43,18 @@ static const char *kobject_actions[] = {
 | 
			
		||||
 	[KOBJ_OFFLINE] =	"offline",
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -29,7 +29,7 @@
 | 
			
		||||
 /**
 | 
			
		||||
  * kobject_action_type - translate action string to numeric type
 | 
			
		||||
  *
 | 
			
		||||
@@ -194,9 +207,7 @@
 | 
			
		||||
@@ -194,9 +207,7 @@ int kobject_uevent_env(struct kobject *k
 | 
			
		||||
 		kobj->state_remove_uevent_sent = 1;
 | 
			
		||||
 
 | 
			
		||||
 	/* we will send an event, so request a new sequence number */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/sound/core/Kconfig
 | 
			
		||||
+++ b/sound/core/Kconfig
 | 
			
		||||
@@ -9,7 +9,7 @@
 | 
			
		||||
@@ -9,7 +9,7 @@ config SND_PCM
 | 
			
		||||
 	depends on SND
 | 
			
		||||
 
 | 
			
		||||
 config SND_HWDEP
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/leds/Kconfig
 | 
			
		||||
+++ b/drivers/leds/Kconfig
 | 
			
		||||
@@ -190,4 +190,8 @@
 | 
			
		||||
@@ -190,4 +190,8 @@ config LEDS_TRIGGER_DEFAULT_ON
 | 
			
		||||
 	  This allows LEDs to be initialised in the ON state.
 | 
			
		||||
 	  If unsure, say Y.
 | 
			
		||||
 
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 endif # NEW_LEDS
 | 
			
		||||
--- a/drivers/leds/Makefile
 | 
			
		||||
+++ b/drivers/leds/Makefile
 | 
			
		||||
@@ -27,3 +27,4 @@
 | 
			
		||||
@@ -27,3 +27,4 @@ obj-$(CONFIG_LEDS_TRIGGER_TIMER)	+= ledt
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK)	+= ledtrig-ide-disk.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+= ledtrig-heartbeat.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)	+= ledtrig-default-on.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/leds/Kconfig
 | 
			
		||||
+++ b/drivers/leds/Kconfig
 | 
			
		||||
@@ -77,6 +77,12 @@
 | 
			
		||||
@@ -77,6 +77,12 @@ config LEDS_WRAP
 | 
			
		||||
 	help
 | 
			
		||||
 	  This option enables support for the PCEngines WRAP programmable LEDs.
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 	depends on LEDS_CLASS && ARCH_H1940
 | 
			
		||||
--- a/drivers/leds/Makefile
 | 
			
		||||
+++ b/drivers/leds/Makefile
 | 
			
		||||
@@ -13,6 +13,7 @@
 | 
			
		||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_LEDS_S3C24XX)		+= leds-s3c2
 | 
			
		||||
 obj-$(CONFIG_LEDS_AMS_DELTA)		+= leds-ams-delta.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_NET48XX)		+= leds-net48xx.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_WRAP)			+= leds-wrap.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/leds/Kconfig
 | 
			
		||||
+++ b/drivers/leds/Kconfig
 | 
			
		||||
@@ -200,4 +200,11 @@
 | 
			
		||||
@@ -200,4 +200,11 @@ config LEDS_TRIGGER_MORSE
 | 
			
		||||
 	tristate "LED Morse Trigger"
 | 
			
		||||
 	depends on LEDS_TRIGGERS
 | 
			
		||||
 
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 endif # NEW_LEDS
 | 
			
		||||
--- a/drivers/leds/Makefile
 | 
			
		||||
+++ b/drivers/leds/Makefile
 | 
			
		||||
@@ -29,3 +29,4 @@
 | 
			
		||||
@@ -29,3 +29,4 @@ obj-$(CONFIG_LEDS_TRIGGER_IDE_DISK)	+= l
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+= ledtrig-heartbeat.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)	+= ledtrig-default-on.o
 | 
			
		||||
 obj-$(CONFIG_LEDS_TRIGGER_MORSE)	+= ledtrig-morse.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/input/misc/Kconfig
 | 
			
		||||
+++ b/drivers/input/misc/Kconfig
 | 
			
		||||
@@ -197,4 +197,20 @@
 | 
			
		||||
@@ -197,4 +197,20 @@ config HP_SDC_RTC
 | 
			
		||||
 	  Say Y here if you want to support the built-in real time clock
 | 
			
		||||
 	  of the HP SDC controller.
 | 
			
		||||
 
 | 
			
		||||
@ -23,7 +23,7 @@
 | 
			
		||||
 endif
 | 
			
		||||
--- a/drivers/input/misc/Makefile
 | 
			
		||||
+++ b/drivers/input/misc/Makefile
 | 
			
		||||
@@ -19,3 +19,4 @@
 | 
			
		||||
@@ -19,3 +19,4 @@ obj-$(CONFIG_INPUT_YEALINK)		+= yealink.
 | 
			
		||||
 obj-$(CONFIG_HP_SDC_RTC)		+= hp_sdc_rtc.o
 | 
			
		||||
 obj-$(CONFIG_INPUT_UINPUT)		+= uinput.o
 | 
			
		||||
 obj-$(CONFIG_INPUT_APANEL)		+= apanel.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/char/Kconfig
 | 
			
		||||
+++ b/drivers/char/Kconfig
 | 
			
		||||
@@ -1002,6 +1002,13 @@
 | 
			
		||||
@@ -1002,6 +1002,13 @@ config CS5535_GPIO
 | 
			
		||||
 
 | 
			
		||||
 	  If compiled as a module, it will be called cs5535_gpio.
 | 
			
		||||
 
 | 
			
		||||
@ -16,7 +16,7 @@
 | 
			
		||||
 	depends on CPU_VR41XX
 | 
			
		||||
--- a/drivers/char/Makefile
 | 
			
		||||
+++ b/drivers/char/Makefile
 | 
			
		||||
@@ -95,6 +95,7 @@
 | 
			
		||||
@@ -95,6 +95,7 @@ obj-$(CONFIG_SCx200_GPIO)	+= scx200_gpio
 | 
			
		||||
 obj-$(CONFIG_PC8736x_GPIO)	+= pc8736x_gpio.o
 | 
			
		||||
 obj-$(CONFIG_NSC_GPIO)		+= nsc_gpio.o
 | 
			
		||||
 obj-$(CONFIG_CS5535_GPIO)	+= cs5535_gpio.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/Kconfig
 | 
			
		||||
+++ b/fs/Kconfig
 | 
			
		||||
@@ -421,6 +421,7 @@
 | 
			
		||||
@@ -421,6 +421,7 @@ config FS_POSIX_ACL
 | 
			
		||||
 
 | 
			
		||||
 source "fs/xfs/Kconfig"
 | 
			
		||||
 source "fs/gfs2/Kconfig"
 | 
			
		||||
@ -10,7 +10,7 @@
 | 
			
		||||
 	tristate "OCFS2 file system support"
 | 
			
		||||
--- a/fs/Makefile
 | 
			
		||||
+++ b/fs/Makefile
 | 
			
		||||
@@ -121,3 +121,4 @@
 | 
			
		||||
@@ -121,3 +121,4 @@ obj-$(CONFIG_HPPFS)		+= hppfs/
 | 
			
		||||
 obj-$(CONFIG_DEBUG_FS)		+= debugfs/
 | 
			
		||||
 obj-$(CONFIG_OCFS2_FS)		+= ocfs2/
 | 
			
		||||
 obj-$(CONFIG_GFS2_FS)           += gfs2/
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/yaffs2/yaffs_fs.c
 | 
			
		||||
+++ b/fs/yaffs2/yaffs_fs.c
 | 
			
		||||
@@ -181,7 +181,13 @@
 | 
			
		||||
@@ -181,7 +181,13 @@ static int yaffs_statfs(struct super_blo
 | 
			
		||||
 #else
 | 
			
		||||
 static int yaffs_statfs(struct super_block *sb, struct statfs *buf);
 | 
			
		||||
 #endif
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static void yaffs_put_inode(struct inode *inode);
 | 
			
		||||
 static void yaffs_delete_inode(struct inode *);
 | 
			
		||||
@@ -284,7 +290,9 @@
 | 
			
		||||
@@ -284,7 +290,9 @@ static struct file_operations yaffs_dir_
 | 
			
		||||
 
 | 
			
		||||
 static struct super_operations yaffs_super_ops = {
 | 
			
		||||
 	.statfs = yaffs_statfs,
 | 
			
		||||
@ -24,7 +24,7 @@
 | 
			
		||||
 	.put_inode = yaffs_put_inode,
 | 
			
		||||
 	.put_super = yaffs_put_super,
 | 
			
		||||
 	.delete_inode = yaffs_delete_inode,
 | 
			
		||||
@@ -844,11 +852,17 @@
 | 
			
		||||
@@ -844,11 +852,17 @@ struct inode *yaffs_get_inode(struct sup
 | 
			
		||||
 	T(YAFFS_TRACE_OS,
 | 
			
		||||
 	  (KERN_DEBUG "yaffs_get_inode for object %d\n", obj->objectId));
 | 
			
		||||
 
 | 
			
		||||
@ -42,7 +42,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	return inode;
 | 
			
		||||
 }
 | 
			
		||||
@@ -1427,6 +1441,39 @@
 | 
			
		||||
@@ -1427,6 +1441,39 @@ static int yaffs_sync_fs(struct super_bl
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@ -82,7 +82,7 @@
 | 
			
		||||
 static void yaffs_read_inode(struct inode *inode)
 | 
			
		||||
 {
 | 
			
		||||
 	/* NB This is called as a side effect of other functions, but
 | 
			
		||||
@@ -1448,6 +1495,7 @@
 | 
			
		||||
@@ -1448,6 +1495,7 @@ static void yaffs_read_inode(struct inod
 | 
			
		||||
 
 | 
			
		||||
 	yaffs_GrossUnlock(dev);
 | 
			
		||||
 }
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/fs/yaffs2/yaffs_fs.c
 | 
			
		||||
+++ b/fs/yaffs2/yaffs_fs.c
 | 
			
		||||
@@ -76,6 +76,12 @@
 | 
			
		||||
@@ -76,6 +76,12 @@ extern const char *yaffs_guts_c_version;
 | 
			
		||||
 
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
@ -13,7 +13,7 @@
 | 
			
		||||
 #if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,17))
 | 
			
		||||
 #define WRITE_SIZE_STR "writesize"
 | 
			
		||||
 #define WRITE_SIZE(mtd) (mtd)->writesize
 | 
			
		||||
@@ -189,7 +195,9 @@
 | 
			
		||||
@@ -189,7 +195,9 @@ static void yaffs_read_inode(struct inod
 | 
			
		||||
 #endif
 | 
			
		||||
 
 | 
			
		||||
 
 | 
			
		||||
@ -23,7 +23,7 @@
 | 
			
		||||
 static void yaffs_delete_inode(struct inode *);
 | 
			
		||||
 static void yaffs_clear_inode(struct inode *);
 | 
			
		||||
 
 | 
			
		||||
@@ -293,7 +301,9 @@
 | 
			
		||||
@@ -293,7 +301,9 @@ static struct super_operations yaffs_sup
 | 
			
		||||
 #if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25))
 | 
			
		||||
 	.read_inode = yaffs_read_inode,
 | 
			
		||||
 #endif
 | 
			
		||||
@ -33,7 +33,7 @@
 | 
			
		||||
 	.put_super = yaffs_put_super,
 | 
			
		||||
 	.delete_inode = yaffs_delete_inode,
 | 
			
		||||
 	.clear_inode = yaffs_clear_inode,
 | 
			
		||||
@@ -437,6 +447,7 @@
 | 
			
		||||
@@ -437,6 +447,7 @@ static struct dentry *yaffs_lookup(struc
 | 
			
		||||
 
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -41,7 +41,7 @@
 | 
			
		||||
 /* For now put inode is just for debugging
 | 
			
		||||
  * Put inode is called when the inode **structure** is put.
 | 
			
		||||
  */
 | 
			
		||||
@@ -447,6 +458,7 @@
 | 
			
		||||
@@ -447,6 +458,7 @@ static void yaffs_put_inode(struct inode
 | 
			
		||||
 	   atomic_read(&inode->i_count)));
 | 
			
		||||
 
 | 
			
		||||
 }
 | 
			
		||||
@ -49,7 +49,7 @@
 | 
			
		||||
 
 | 
			
		||||
 /* clear is called to tell the fs to release any per-inode data it holds */
 | 
			
		||||
 static void yaffs_clear_inode(struct inode *inode)
 | 
			
		||||
@@ -2279,7 +2291,7 @@
 | 
			
		||||
@@ -2279,7 +2291,7 @@ static int __init init_yaffs_fs(void)
 | 
			
		||||
 	/* Install the proc_fs entry */
 | 
			
		||||
 	my_proc_entry = create_proc_entry("yaffs",
 | 
			
		||||
 					       S_IRUGO | S_IFREG,
 | 
			
		||||
@ -58,7 +58,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	if (my_proc_entry) {
 | 
			
		||||
 		my_proc_entry->write_proc = yaffs_proc_write;
 | 
			
		||||
@@ -2325,7 +2337,7 @@
 | 
			
		||||
@@ -2325,7 +2337,7 @@ static void __exit exit_yaffs_fs(void)
 | 
			
		||||
 	T(YAFFS_TRACE_ALWAYS, ("yaffs " __DATE__ " " __TIME__
 | 
			
		||||
 			       " removing. \n"));
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/phy.c
 | 
			
		||||
+++ b/drivers/net/phy/phy.c
 | 
			
		||||
@@ -348,6 +348,50 @@
 | 
			
		||||
@@ -348,6 +348,50 @@ int phy_ethtool_gset(struct phy_device *
 | 
			
		||||
 }
 | 
			
		||||
 EXPORT_SYMBOL(phy_ethtool_gset);
 | 
			
		||||
 
 | 
			
		||||
@ -51,7 +51,7 @@
 | 
			
		||||
 /**
 | 
			
		||||
  * phy_mii_ioctl - generic PHY MII ioctl interface
 | 
			
		||||
  * @phydev: the phy_device struct
 | 
			
		||||
@@ -403,8 +447,8 @@
 | 
			
		||||
@@ -403,8 +447,8 @@ int phy_mii_ioctl(struct phy_device *phy
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
 		phy_write(phydev, mii_data->reg_num, val);
 | 
			
		||||
@ -62,7 +62,7 @@
 | 
			
		||||
 				&& val & BMCR_RESET
 | 
			
		||||
 				&& phydev->drv->config_init) {
 | 
			
		||||
 			phy_scan_fixups(phydev);
 | 
			
		||||
@@ -524,7 +568,7 @@
 | 
			
		||||
@@ -524,7 +568,7 @@ static void phy_force_reduction(struct p
 | 
			
		||||
 	int idx;
 | 
			
		||||
 
 | 
			
		||||
 	idx = phy_find_setting(phydev->speed, phydev->duplex);
 | 
			
		||||
@ -73,7 +73,7 @@
 | 
			
		||||
 	idx = phy_find_valid(idx, phydev->supported);
 | 
			
		||||
--- a/include/linux/phy.h
 | 
			
		||||
+++ b/include/linux/phy.h
 | 
			
		||||
@@ -434,6 +434,7 @@
 | 
			
		||||
@@ -434,6 +434,7 @@ void phy_start_machine(struct phy_device
 | 
			
		||||
 void phy_stop_machine(struct phy_device *phydev);
 | 
			
		||||
 int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd);
 | 
			
		||||
 int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd);
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/mdio_bus.c
 | 
			
		||||
+++ b/drivers/net/phy/mdio_bus.c
 | 
			
		||||
@@ -135,6 +135,9 @@
 | 
			
		||||
@@ -135,6 +135,9 @@ static int mdio_bus_match(struct device 
 | 
			
		||||
 	struct phy_device *phydev = to_phy_device(dev);
 | 
			
		||||
 	struct phy_driver *phydrv = to_phy_driver(drv);
 | 
			
		||||
 
 | 
			
		||||
@ -12,7 +12,7 @@
 | 
			
		||||
 }
 | 
			
		||||
--- a/include/linux/phy.h
 | 
			
		||||
+++ b/include/linux/phy.h
 | 
			
		||||
@@ -339,6 +339,11 @@
 | 
			
		||||
@@ -339,6 +339,11 @@ struct phy_driver {
 | 
			
		||||
 	u32 features;
 | 
			
		||||
 	u32 flags;
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/Kconfig
 | 
			
		||||
+++ b/drivers/net/phy/Kconfig
 | 
			
		||||
@@ -65,6 +65,11 @@
 | 
			
		||||
@@ -65,6 +65,11 @@ config REALTEK_PHY
 | 
			
		||||
 	---help---
 | 
			
		||||
 	  Supports the Realtek 821x PHY.
 | 
			
		||||
 
 | 
			
		||||
@ -14,7 +14,7 @@
 | 
			
		||||
 	depends on PHYLIB=y
 | 
			
		||||
--- a/drivers/net/phy/Makefile
 | 
			
		||||
+++ b/drivers/net/phy/Makefile
 | 
			
		||||
@@ -12,6 +12,7 @@
 | 
			
		||||
@@ -12,6 +12,7 @@ obj-$(CONFIG_SMSC_PHY)		+= smsc.o
 | 
			
		||||
 obj-$(CONFIG_VITESSE_PHY)	+= vitesse.o
 | 
			
		||||
 obj-$(CONFIG_BROADCOM_PHY)	+= broadcom.o
 | 
			
		||||
 obj-$(CONFIG_ICPLUS_PHY)	+= icplus.o
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/phy_device.c
 | 
			
		||||
+++ b/drivers/net/phy/phy_device.c
 | 
			
		||||
@@ -143,6 +143,18 @@
 | 
			
		||||
@@ -143,6 +143,18 @@ int phy_scan_fixups(struct phy_device *p
 | 
			
		||||
 }
 | 
			
		||||
 EXPORT_SYMBOL(phy_scan_fixups);
 | 
			
		||||
 
 | 
			
		||||
@ -19,7 +19,7 @@
 | 
			
		||||
 struct phy_device* phy_device_create(struct mii_bus *bus, int addr, int phy_id)
 | 
			
		||||
 {
 | 
			
		||||
 	struct phy_device *dev;
 | 
			
		||||
@@ -168,6 +180,8 @@
 | 
			
		||||
@@ -168,6 +180,8 @@ struct phy_device* phy_device_create(str
 | 
			
		||||
 	dev->bus = bus;
 | 
			
		||||
 
 | 
			
		||||
 	dev->state = PHY_DOWN;
 | 
			
		||||
@ -30,7 +30,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/include/linux/phy.h
 | 
			
		||||
+++ b/include/linux/phy.h
 | 
			
		||||
@@ -309,6 +309,20 @@
 | 
			
		||||
@@ -309,6 +309,20 @@ struct phy_device {
 | 
			
		||||
 	void (*adjust_link)(struct net_device *dev);
 | 
			
		||||
 
 | 
			
		||||
 	void (*adjust_state)(struct net_device *dev);
 | 
			
		||||
@ -53,7 +53,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/include/linux/netdevice.h
 | 
			
		||||
+++ b/include/linux/netdevice.h
 | 
			
		||||
@@ -613,6 +613,7 @@
 | 
			
		||||
@@ -613,6 +613,7 @@ struct net_device
 | 
			
		||||
 	void			*ax25_ptr;	/* AX.25 specific data */
 | 
			
		||||
 	struct wireless_dev	*ieee80211_ptr;	/* IEEE 802.11 specific data,
 | 
			
		||||
 						   assign before registering */
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/phy/Kconfig
 | 
			
		||||
+++ b/drivers/net/phy/Kconfig
 | 
			
		||||
@@ -70,6 +70,12 @@
 | 
			
		||||
@@ -70,6 +70,12 @@ config ADM6996_PHY
 | 
			
		||||
 	---help---
 | 
			
		||||
 	  Currently supports the ADM6996F switch
 | 
			
		||||
 
 | 
			
		||||
@ -15,7 +15,7 @@
 | 
			
		||||
 	depends on PHYLIB=y
 | 
			
		||||
--- a/drivers/net/phy/Makefile
 | 
			
		||||
+++ b/drivers/net/phy/Makefile
 | 
			
		||||
@@ -13,6 +13,7 @@
 | 
			
		||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_VITESSE_PHY)	+= vitesse.o
 | 
			
		||||
 obj-$(CONFIG_BROADCOM_PHY)	+= broadcom.o
 | 
			
		||||
 obj-$(CONFIG_ICPLUS_PHY)	+= icplus.o
 | 
			
		||||
 obj-$(CONFIG_ADM6996_PHY)	+= adm6996.o
 | 
			
		||||
@ -38,7 +38,7 @@
 | 
			
		||||
 /**
 | 
			
		||||
  * mdiobus_register - bring up all the PHYs on a given bus and attach them to bus
 | 
			
		||||
  * @bus: target mii_bus
 | 
			
		||||
@@ -85,6 +91,7 @@
 | 
			
		||||
@@ -85,6 +91,7 @@ int mdiobus_register(struct mii_bus *bus
 | 
			
		||||
 
 | 
			
		||||
 			phydev->dev.parent = bus->dev;
 | 
			
		||||
 			phydev->dev.bus = &mdio_bus_type;
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/usb/serial/usb-serial.c
 | 
			
		||||
+++ b/drivers/usb/serial/usb-serial.c
 | 
			
		||||
@@ -58,6 +58,7 @@
 | 
			
		||||
@@ -58,6 +58,7 @@ static struct usb_driver usb_serial_driv
 | 
			
		||||
    drivers depend on it.
 | 
			
		||||
 */
 | 
			
		||||
 
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 static int debug;
 | 
			
		||||
 static struct usb_serial *serial_table[SERIAL_TTY_MINORS];	/* initially all NULL */
 | 
			
		||||
 static DEFINE_MUTEX(table_lock);
 | 
			
		||||
@@ -814,7 +815,7 @@
 | 
			
		||||
@@ -814,7 +815,7 @@ int usb_serial_probe(struct usb_interfac
 | 
			
		||||
 			dev_err(&interface->dev, "No free urbs available\n");
 | 
			
		||||
 			goto probe_error;
 | 
			
		||||
 		}
 | 
			
		||||
@ -17,7 +17,7 @@
 | 
			
		||||
 		port->bulk_in_size = buffer_size;
 | 
			
		||||
 		port->bulk_in_endpointAddress = endpoint->bEndpointAddress;
 | 
			
		||||
 		port->bulk_in_buffer = kmalloc (buffer_size, GFP_KERNEL);
 | 
			
		||||
@@ -1228,3 +1229,5 @@
 | 
			
		||||
@@ -1228,3 +1229,5 @@ MODULE_LICENSE("GPL");
 | 
			
		||||
 
 | 
			
		||||
 module_param(debug, bool, S_IRUGO | S_IWUSR);
 | 
			
		||||
 MODULE_PARM_DESC(debug, "Debug enabled or not");
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/init/main.c
 | 
			
		||||
+++ b/init/main.c
 | 
			
		||||
@@ -803,7 +803,7 @@
 | 
			
		||||
@@ -803,7 +803,7 @@ static int noinline init_post(void)
 | 
			
		||||
 	numa_default_policy();
 | 
			
		||||
 
 | 
			
		||||
 	if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
 #include <linux/types.h>
 | 
			
		||||
 
 | 
			
		||||
 #ifdef __KERNEL__
 | 
			
		||||
@@ -228,4 +232,6 @@
 | 
			
		||||
@@ -228,4 +232,6 @@ struct itimerval {
 | 
			
		||||
  */
 | 
			
		||||
 #define TIMER_ABSTIME			0x01
 | 
			
		||||
 
 | 
			
		||||
@ -35,7 +35,7 @@
 | 
			
		||||
 #ifdef	__KERNEL__
 | 
			
		||||
 
 | 
			
		||||
 #define DECLARE_BITMAP(name,bits) \
 | 
			
		||||
@@ -161,6 +169,8 @@
 | 
			
		||||
@@ -161,6 +169,8 @@ typedef unsigned long blkcnt_t;
 | 
			
		||||
 
 | 
			
		||||
 #endif /* __KERNEL_STRICT_NAMES */
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
@ -62,7 +62,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/scripts/kconfig/Makefile
 | 
			
		||||
+++ b/scripts/kconfig/Makefile
 | 
			
		||||
@@ -93,6 +93,9 @@
 | 
			
		||||
@@ -93,6 +93,9 @@ check-lxdialog  := $(srctree)/$(src)/lxd
 | 
			
		||||
 # we really need to do so. (Do not call gcc as part of make mrproper)
 | 
			
		||||
 HOST_EXTRACFLAGS = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags)
 | 
			
		||||
 HOST_LOADLIBES   = $(shell $(CONFIG_SHELL) $(check-lxdialog) -ldflags $(HOSTCC))
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/drivers/net/wireless/hostap/hostap_ap.c
 | 
			
		||||
+++ b/drivers/net/wireless/hostap/hostap_ap.c
 | 
			
		||||
@@ -2397,13 +2397,13 @@
 | 
			
		||||
@@ -2397,13 +2397,13 @@ int prism2_ap_get_sta_qual(local_info_t 
 | 
			
		||||
 		addr[count].sa_family = ARPHRD_ETHER;
 | 
			
		||||
 		memcpy(addr[count].sa_data, sta->addr, ETH_ALEN);
 | 
			
		||||
 		if (sta->last_rx_silence == 0)
 | 
			
		||||
@ -20,7 +20,7 @@
 | 
			
		||||
 		qual[count].updated = sta->last_rx_updated;
 | 
			
		||||
 
 | 
			
		||||
 		sta->last_rx_updated = IW_QUAL_DBM;
 | 
			
		||||
@@ -2468,13 +2468,13 @@
 | 
			
		||||
@@ -2468,13 +2468,13 @@ int prism2_ap_translate_scan(struct net_
 | 
			
		||||
 		memset(&iwe, 0, sizeof(iwe));
 | 
			
		||||
 		iwe.cmd = IWEVQUAL;
 | 
			
		||||
 		if (sta->last_rx_silence == 0)
 | 
			
		||||
@ -54,7 +54,7 @@
 | 
			
		||||
 #endif /* HOSTAP_CONFIG_H */
 | 
			
		||||
--- a/drivers/net/wireless/hostap/hostap.h
 | 
			
		||||
+++ b/drivers/net/wireless/hostap/hostap.h
 | 
			
		||||
@@ -89,6 +89,7 @@
 | 
			
		||||
@@ -89,6 +89,7 @@ extern const struct iw_handler_def hosta
 | 
			
		||||
 extern const struct ethtool_ops prism2_ethtool_ops;
 | 
			
		||||
 
 | 
			
		||||
 int hostap_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
 | 
			
		||||
@ -64,7 +64,7 @@
 | 
			
		||||
 #endif /* HOSTAP_H */
 | 
			
		||||
--- a/drivers/net/wireless/hostap/hostap_hw.c
 | 
			
		||||
+++ b/drivers/net/wireless/hostap/hostap_hw.c
 | 
			
		||||
@@ -933,6 +933,7 @@
 | 
			
		||||
@@ -933,6 +933,7 @@ static int hfa384x_set_rid(struct net_de
 | 
			
		||||
 			prism2_hw_reset(dev);
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@ -74,7 +74,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/net/wireless/hostap/hostap_info.c
 | 
			
		||||
+++ b/drivers/net/wireless/hostap/hostap_info.c
 | 
			
		||||
@@ -434,6 +434,11 @@
 | 
			
		||||
@@ -434,6 +434,11 @@ static void handle_info_queue_linkstatus
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 	/* Get BSSID if we have a valid AP address */
 | 
			
		||||
@ -88,7 +88,7 @@
 | 
			
		||||
 		netif_carrier_on(local->ddev);
 | 
			
		||||
--- a/drivers/net/wireless/hostap/hostap_ioctl.c
 | 
			
		||||
+++ b/drivers/net/wireless/hostap/hostap_ioctl.c
 | 
			
		||||
@@ -1500,23 +1500,20 @@
 | 
			
		||||
@@ -1500,23 +1500,20 @@ static int prism2_txpower_hfa386x_to_dBm
 | 
			
		||||
 		val = 255;
 | 
			
		||||
 
 | 
			
		||||
 	tmp = val;
 | 
			
		||||
@ -116,7 +116,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	return (unsigned char) tmp;
 | 
			
		||||
 }
 | 
			
		||||
@@ -4076,3 +4073,35 @@
 | 
			
		||||
@@ -4076,3 +4073,35 @@ int hostap_ioctl(struct net_device *dev,
 | 
			
		||||
 
 | 
			
		||||
 	return ret;
 | 
			
		||||
 }
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/include/linux/stddef.h
 | 
			
		||||
+++ b/include/linux/stddef.h
 | 
			
		||||
@@ -16,6 +16,7 @@
 | 
			
		||||
@@ -16,6 +16,7 @@ enum {
 | 
			
		||||
 	false	= 0,
 | 
			
		||||
 	true	= 1
 | 
			
		||||
 };
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #undef offsetof
 | 
			
		||||
 #ifdef __compiler_offsetof
 | 
			
		||||
@@ -23,6 +24,5 @@
 | 
			
		||||
@@ -23,6 +24,5 @@ enum {
 | 
			
		||||
 #else
 | 
			
		||||
 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
 | 
			
		||||
 #endif
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
--- a/crypto/Kconfig
 | 
			
		||||
+++ b/crypto/Kconfig
 | 
			
		||||
@@ -65,6 +65,7 @@
 | 
			
		||||
@@ -65,6 +65,7 @@ config CRYPTO_NULL
 | 
			
		||||
 config CRYPTO_CRYPTD
 | 
			
		||||
 	tristate "Software async crypto daemon"
 | 
			
		||||
 	select CRYPTO_BLKCIPHER
 | 
			
		||||
@ -8,7 +8,7 @@
 | 
			
		||||
 	select CRYPTO_MANAGER
 | 
			
		||||
 	help
 | 
			
		||||
 	  This is a generic software asynchronous crypto daemon that
 | 
			
		||||
@@ -212,7 +213,7 @@
 | 
			
		||||
@@ -212,7 +213,7 @@ comment "Digest"
 | 
			
		||||
 
 | 
			
		||||
 config CRYPTO_CRC32C
 | 
			
		||||
 	tristate "CRC32c CRC algorithm"
 | 
			
		||||
@ -17,7 +17,7 @@
 | 
			
		||||
 	select LIBCRC32C
 | 
			
		||||
 	help
 | 
			
		||||
 	  Castagnoli, et al Cyclic Redundancy-Check Algorithm.  Used
 | 
			
		||||
@@ -241,6 +242,57 @@
 | 
			
		||||
@@ -241,6 +242,57 @@ config CRYPTO_MICHAEL_MIC
 | 
			
		||||
 	  should not be used for other purposes because of the weakness
 | 
			
		||||
 	  of the algorithm.
 | 
			
		||||
 
 | 
			
		||||
@ -75,7 +75,7 @@
 | 
			
		||||
 config CRYPTO_SHA1
 | 
			
		||||
 	tristate "SHA1 digest algorithm"
 | 
			
		||||
 	select CRYPTO_ALGAPI
 | 
			
		||||
@@ -614,6 +666,15 @@
 | 
			
		||||
@@ -614,6 +666,15 @@ config CRYPTO_LZO
 | 
			
		||||
 	help
 | 
			
		||||
 	  This is the LZO algorithm.
 | 
			
		||||
 
 | 
			
		||||
@ -93,7 +93,7 @@
 | 
			
		||||
 endif	# if CRYPTO
 | 
			
		||||
--- a/crypto/Makefile
 | 
			
		||||
+++ b/crypto/Makefile
 | 
			
		||||
@@ -19,6 +19,7 @@
 | 
			
		||||
@@ -19,6 +19,7 @@ obj-$(CONFIG_CRYPTO_BLKCIPHER) += crypto
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_SEQIV) += seqiv.o
 | 
			
		||||
 
 | 
			
		||||
 crypto_hash-objs := hash.o
 | 
			
		||||
@ -101,7 +101,7 @@
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_HASH) += crypto_hash.o
 | 
			
		||||
 
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_MANAGER) += cryptomgr.o
 | 
			
		||||
@@ -27,6 +28,10 @@
 | 
			
		||||
@@ -27,6 +28,10 @@ obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_MD4) += md4.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_MD5) += md5.o
 | 
			
		||||
@ -112,7 +112,7 @@
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_SHA1) += sha1_generic.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_SHA256) += sha256_generic.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_SHA512) += sha512_generic.o
 | 
			
		||||
@@ -64,7 +69,7 @@
 | 
			
		||||
@@ -64,7 +69,7 @@ obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += mich
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_AUTHENC) += authenc.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_LZO) += lzo.o
 | 
			
		||||
@ -320,7 +320,7 @@
 | 
			
		||||
+MODULE_DESCRIPTION("Asynchronous cryptographic hash type");
 | 
			
		||||
--- a/crypto/api.c
 | 
			
		||||
+++ b/crypto/api.c
 | 
			
		||||
@@ -235,8 +235,12 @@
 | 
			
		||||
@@ -235,8 +235,12 @@ static int crypto_init_ops(struct crypto
 | 
			
		||||
 		return crypto_init_cipher_ops(tfm);
 | 
			
		||||
 		
 | 
			
		||||
 	case CRYPTO_ALG_TYPE_DIGEST:
 | 
			
		||||
@ -346,7 +346,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static const u32 camellia_sp1110[256] = {
 | 
			
		||||
 	0x70707000,0x82828200,0x2c2c2c00,0xececec00,
 | 
			
		||||
@@ -335,20 +337,6 @@
 | 
			
		||||
@@ -335,20 +337,6 @@ static const u32 camellia_sp4404[256] = 
 | 
			
		||||
 /*
 | 
			
		||||
  *  macros
 | 
			
		||||
  */
 | 
			
		||||
@ -367,7 +367,7 @@
 | 
			
		||||
 #define ROLDQ(ll, lr, rl, rr, w0, w1, bits)		\
 | 
			
		||||
     do {						\
 | 
			
		||||
 	w0 = ll;					\
 | 
			
		||||
@@ -383,7 +371,7 @@
 | 
			
		||||
@@ -383,7 +371,7 @@ static const u32 camellia_sp4404[256] = 
 | 
			
		||||
 	   ^ camellia_sp3033[(u8)(il >> 8)]			\
 | 
			
		||||
 	   ^ camellia_sp4404[(u8)(il     )];			\
 | 
			
		||||
 	yl ^= yr;						\
 | 
			
		||||
@ -376,7 +376,7 @@
 | 
			
		||||
 	yr ^= yl;						\
 | 
			
		||||
     } while(0)
 | 
			
		||||
 
 | 
			
		||||
@@ -405,7 +393,7 @@
 | 
			
		||||
@@ -405,7 +393,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	subL[7] ^= subL[1]; subR[7] ^= subR[1];
 | 
			
		||||
 	subL[1] ^= subR[1] & ~subR[9];
 | 
			
		||||
 	dw = subL[1] & subL[9],
 | 
			
		||||
@ -385,7 +385,7 @@
 | 
			
		||||
 	/* round 8 */
 | 
			
		||||
 	subL[11] ^= subL[1]; subR[11] ^= subR[1];
 | 
			
		||||
 	/* round 10 */
 | 
			
		||||
@@ -414,7 +402,7 @@
 | 
			
		||||
@@ -414,7 +402,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	subL[15] ^= subL[1]; subR[15] ^= subR[1];
 | 
			
		||||
 	subL[1] ^= subR[1] & ~subR[17];
 | 
			
		||||
 	dw = subL[1] & subL[17],
 | 
			
		||||
@ -394,7 +394,7 @@
 | 
			
		||||
 	/* round 14 */
 | 
			
		||||
 	subL[19] ^= subL[1]; subR[19] ^= subR[1];
 | 
			
		||||
 	/* round 16 */
 | 
			
		||||
@@ -430,7 +418,7 @@
 | 
			
		||||
@@ -430,7 +418,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	} else {
 | 
			
		||||
 		subL[1] ^= subR[1] & ~subR[25];
 | 
			
		||||
 		dw = subL[1] & subL[25],
 | 
			
		||||
@ -403,7 +403,7 @@
 | 
			
		||||
 		/* round 20 */
 | 
			
		||||
 		subL[27] ^= subL[1]; subR[27] ^= subR[1];
 | 
			
		||||
 		/* round 22 */
 | 
			
		||||
@@ -450,7 +438,7 @@
 | 
			
		||||
@@ -450,7 +438,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 		subL[26] ^= kw4l; subR[26] ^= kw4r;
 | 
			
		||||
 		kw4l ^= kw4r & ~subR[24];
 | 
			
		||||
 		dw = kw4l & subL[24],
 | 
			
		||||
@ -412,7 +412,7 @@
 | 
			
		||||
 	}
 | 
			
		||||
 	/* round 17 */
 | 
			
		||||
 	subL[22] ^= kw4l; subR[22] ^= kw4r;
 | 
			
		||||
@@ -460,7 +448,7 @@
 | 
			
		||||
@@ -460,7 +448,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	subL[18] ^= kw4l; subR[18] ^= kw4r;
 | 
			
		||||
 	kw4l ^= kw4r & ~subR[16];
 | 
			
		||||
 	dw = kw4l & subL[16],
 | 
			
		||||
@ -421,7 +421,7 @@
 | 
			
		||||
 	/* round 11 */
 | 
			
		||||
 	subL[14] ^= kw4l; subR[14] ^= kw4r;
 | 
			
		||||
 	/* round 9 */
 | 
			
		||||
@@ -469,7 +457,7 @@
 | 
			
		||||
@@ -469,7 +457,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	subL[10] ^= kw4l; subR[10] ^= kw4r;
 | 
			
		||||
 	kw4l ^= kw4r & ~subR[8];
 | 
			
		||||
 	dw = kw4l & subL[8],
 | 
			
		||||
@ -430,7 +430,7 @@
 | 
			
		||||
 	/* round 5 */
 | 
			
		||||
 	subL[6] ^= kw4l; subR[6] ^= kw4r;
 | 
			
		||||
 	/* round 3 */
 | 
			
		||||
@@ -494,7 +482,7 @@
 | 
			
		||||
@@ -494,7 +482,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	SUBKEY_R(6) = subR[5] ^ subR[7];
 | 
			
		||||
 	tl = subL[10] ^ (subR[10] & ~subR[8]);
 | 
			
		||||
 	dw = tl & subL[8],  /* FL(kl1) */
 | 
			
		||||
@ -439,7 +439,7 @@
 | 
			
		||||
 	SUBKEY_L(7) = subL[6] ^ tl; /* round 6 */
 | 
			
		||||
 	SUBKEY_R(7) = subR[6] ^ tr;
 | 
			
		||||
 	SUBKEY_L(8) = subL[8];       /* FL(kl1) */
 | 
			
		||||
@@ -503,7 +491,7 @@
 | 
			
		||||
@@ -503,7 +491,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	SUBKEY_R(9) = subR[9];
 | 
			
		||||
 	tl = subL[7] ^ (subR[7] & ~subR[9]);
 | 
			
		||||
 	dw = tl & subL[9],  /* FLinv(kl2) */
 | 
			
		||||
@ -448,7 +448,7 @@
 | 
			
		||||
 	SUBKEY_L(10) = tl ^ subL[11]; /* round 7 */
 | 
			
		||||
 	SUBKEY_R(10) = tr ^ subR[11];
 | 
			
		||||
 	SUBKEY_L(11) = subL[10] ^ subL[12]; /* round 8 */
 | 
			
		||||
@@ -516,7 +504,7 @@
 | 
			
		||||
@@ -516,7 +504,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	SUBKEY_R(14) = subR[13] ^ subR[15];
 | 
			
		||||
 	tl = subL[18] ^ (subR[18] & ~subR[16]);
 | 
			
		||||
 	dw = tl & subL[16], /* FL(kl3) */
 | 
			
		||||
@ -457,7 +457,7 @@
 | 
			
		||||
 	SUBKEY_L(15) = subL[14] ^ tl; /* round 12 */
 | 
			
		||||
 	SUBKEY_R(15) = subR[14] ^ tr;
 | 
			
		||||
 	SUBKEY_L(16) = subL[16];     /* FL(kl3) */
 | 
			
		||||
@@ -525,7 +513,7 @@
 | 
			
		||||
@@ -525,7 +513,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	SUBKEY_R(17) = subR[17];
 | 
			
		||||
 	tl = subL[15] ^ (subR[15] & ~subR[17]);
 | 
			
		||||
 	dw = tl & subL[17], /* FLinv(kl4) */
 | 
			
		||||
@ -466,7 +466,7 @@
 | 
			
		||||
 	SUBKEY_L(18) = tl ^ subL[19]; /* round 13 */
 | 
			
		||||
 	SUBKEY_R(18) = tr ^ subR[19];
 | 
			
		||||
 	SUBKEY_L(19) = subL[18] ^ subL[20]; /* round 14 */
 | 
			
		||||
@@ -544,7 +532,7 @@
 | 
			
		||||
@@ -544,7 +532,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	} else {
 | 
			
		||||
 		tl = subL[26] ^ (subR[26] & ~subR[24]);
 | 
			
		||||
 		dw = tl & subL[24], /* FL(kl5) */
 | 
			
		||||
@ -475,7 +475,7 @@
 | 
			
		||||
 		SUBKEY_L(23) = subL[22] ^ tl; /* round 18 */
 | 
			
		||||
 		SUBKEY_R(23) = subR[22] ^ tr;
 | 
			
		||||
 		SUBKEY_L(24) = subL[24];     /* FL(kl5) */
 | 
			
		||||
@@ -553,7 +541,7 @@
 | 
			
		||||
@@ -553,7 +541,7 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 		SUBKEY_R(25) = subR[25];
 | 
			
		||||
 		tl = subL[23] ^ (subR[23] & ~subR[25]);
 | 
			
		||||
 		dw = tl & subL[25], /* FLinv(kl6) */
 | 
			
		||||
@ -484,7 +484,7 @@
 | 
			
		||||
 		SUBKEY_L(26) = tl ^ subL[27]; /* round 19 */
 | 
			
		||||
 		SUBKEY_R(26) = tr ^ subR[27];
 | 
			
		||||
 		SUBKEY_L(27) = subL[26] ^ subL[28]; /* round 20 */
 | 
			
		||||
@@ -573,17 +561,17 @@
 | 
			
		||||
@@ -573,17 +561,17 @@ static void camellia_setup_tail(u32 *sub
 | 
			
		||||
 	/* apply the inverse of the last half of P-function */
 | 
			
		||||
 	i = 2;
 | 
			
		||||
 	do {
 | 
			
		||||
@ -508,7 +508,7 @@
 | 
			
		||||
 		SUBKEY_R(i + 5) = SUBKEY_L(i + 5) ^ dw; SUBKEY_L(i + 5) = dw;
 | 
			
		||||
 		i += 8;
 | 
			
		||||
 	} while (i < max);
 | 
			
		||||
@@ -599,10 +587,10 @@
 | 
			
		||||
@@ -599,10 +587,10 @@ static void camellia_setup128(const unsi
 | 
			
		||||
 	/**
 | 
			
		||||
 	 *  k == kll || klr || krl || krr (|| is concatenation)
 | 
			
		||||
 	 */
 | 
			
		||||
@ -523,7 +523,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	/* generate KL dependent subkeys */
 | 
			
		||||
 	/* kw1 */
 | 
			
		||||
@@ -707,14 +695,14 @@
 | 
			
		||||
@@ -707,14 +695,14 @@ static void camellia_setup256(const unsi
 | 
			
		||||
 	 *  key = (kll || klr || krl || krr || krll || krlr || krrl || krrr)
 | 
			
		||||
 	 *  (|| is concatenation)
 | 
			
		||||
 	 */
 | 
			
		||||
@ -546,7 +546,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	/* generate KL dependent subkeys */
 | 
			
		||||
 	/* kw1 */
 | 
			
		||||
@@ -870,13 +858,13 @@
 | 
			
		||||
@@ -870,13 +858,13 @@ static void camellia_setup192(const unsi
 | 
			
		||||
 	t0 &= ll;							\
 | 
			
		||||
 	t2 |= rr;							\
 | 
			
		||||
 	rl ^= t2;							\
 | 
			
		||||
@ -562,7 +562,7 @@
 | 
			
		||||
     } while(0)
 | 
			
		||||
 
 | 
			
		||||
 #define CAMELLIA_ROUNDSM(xl, xr, kl, kr, yl, yr, il, ir)		\
 | 
			
		||||
@@ -892,7 +880,7 @@
 | 
			
		||||
@@ -892,7 +880,7 @@ static void camellia_setup192(const unsi
 | 
			
		||||
 	il ^= kl;							\
 | 
			
		||||
 	ir ^= il ^ kr;							\
 | 
			
		||||
 	yl ^= ir;							\
 | 
			
		||||
@ -605,7 +605,7 @@
 | 
			
		||||
 #define CHKSUM_DIGEST_SIZE	4
 | 
			
		||||
 
 | 
			
		||||
 struct chksum_ctx {
 | 
			
		||||
@@ -27,7 +30,7 @@
 | 
			
		||||
@@ -27,7 +30,7 @@ struct chksum_ctx {
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
@ -614,7 +614,7 @@
 | 
			
		||||
  * crc using table.
 | 
			
		||||
  */
 | 
			
		||||
 
 | 
			
		||||
@@ -67,11 +70,11 @@
 | 
			
		||||
@@ -67,11 +70,11 @@ static void chksum_update(struct crypto_
 | 
			
		||||
 static void chksum_final(struct crypto_tfm *tfm, u8 *out)
 | 
			
		||||
 {
 | 
			
		||||
 	struct chksum_ctx *mctx = crypto_tfm_ctx(tfm);
 | 
			
		||||
@ -628,7 +628,7 @@
 | 
			
		||||
 {
 | 
			
		||||
 	struct chksum_ctx *mctx = crypto_tfm_ctx(tfm);
 | 
			
		||||
 
 | 
			
		||||
@@ -79,14 +82,14 @@
 | 
			
		||||
@@ -79,14 +82,14 @@ static int crc32c_cra_init(struct crypto
 | 
			
		||||
 	return 0;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -646,7 +646,7 @@
 | 
			
		||||
 	.cra_u		=	{
 | 
			
		||||
 		.digest = {
 | 
			
		||||
 			 .dia_digestsize=	CHKSUM_DIGEST_SIZE,
 | 
			
		||||
@@ -98,14 +101,125 @@
 | 
			
		||||
@@ -98,14 +101,125 @@ static struct crypto_alg alg = {
 | 
			
		||||
 	}
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -783,7 +783,7 @@
 | 
			
		||||
 #include <linux/err.h>
 | 
			
		||||
 #include <linux/init.h>
 | 
			
		||||
 #include <linux/kernel.h>
 | 
			
		||||
@@ -45,6 +46,13 @@
 | 
			
		||||
@@ -45,6 +46,13 @@ struct cryptd_blkcipher_request_ctx {
 | 
			
		||||
 	crypto_completion_t complete;
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -797,7 +797,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static inline struct cryptd_state *cryptd_get_state(struct crypto_tfm *tfm)
 | 
			
		||||
 {
 | 
			
		||||
@@ -82,10 +90,8 @@
 | 
			
		||||
@@ -82,10 +90,8 @@ static void cryptd_blkcipher_crypt(struc
 | 
			
		||||
 
 | 
			
		||||
 	rctx = ablkcipher_request_ctx(req);
 | 
			
		||||
 
 | 
			
		||||
@ -810,7 +810,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	desc.tfm = child;
 | 
			
		||||
 	desc.info = req->info;
 | 
			
		||||
@@ -95,8 +101,9 @@
 | 
			
		||||
@@ -95,8 +101,9 @@ static void cryptd_blkcipher_crypt(struc
 | 
			
		||||
 
 | 
			
		||||
 	req->base.complete = rctx->complete;
 | 
			
		||||
 
 | 
			
		||||
@ -821,7 +821,7 @@
 | 
			
		||||
 	local_bh_enable();
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@@ -261,6 +268,240 @@
 | 
			
		||||
@@ -261,6 +268,240 @@ out_put_alg:
 | 
			
		||||
 	return inst;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -1062,7 +1062,7 @@
 | 
			
		||||
 static struct cryptd_state state;
 | 
			
		||||
 
 | 
			
		||||
 static struct crypto_instance *cryptd_alloc(struct rtattr **tb)
 | 
			
		||||
@@ -274,6 +515,8 @@
 | 
			
		||||
@@ -274,6 +515,8 @@ static struct crypto_instance *cryptd_al
 | 
			
		||||
 	switch (algt->type & algt->mask & CRYPTO_ALG_TYPE_MASK) {
 | 
			
		||||
 	case CRYPTO_ALG_TYPE_BLKCIPHER:
 | 
			
		||||
 		return cryptd_alloc_blkcipher(tb, &state);
 | 
			
		||||
@ -1081,7 +1081,7 @@
 | 
			
		||||
 #include <crypto/scatterwalk.h>
 | 
			
		||||
 #include <linux/mm.h>
 | 
			
		||||
 #include <linux/errno.h>
 | 
			
		||||
@@ -141,7 +142,7 @@
 | 
			
		||||
@@ -141,7 +142,7 @@ int crypto_init_digest_ops(struct crypto
 | 
			
		||||
 	struct hash_tfm *ops = &tfm->crt_hash;
 | 
			
		||||
 	struct digest_alg *dalg = &tfm->__crt_alg->cra_digest;
 | 
			
		||||
 
 | 
			
		||||
@ -1090,7 +1090,7 @@
 | 
			
		||||
 		return -EINVAL;
 | 
			
		||||
 	
 | 
			
		||||
 	ops->init	= init;
 | 
			
		||||
@@ -157,3 +158,83 @@
 | 
			
		||||
@@ -157,3 +158,83 @@ int crypto_init_digest_ops(struct crypto
 | 
			
		||||
 void crypto_exit_digest_ops(struct crypto_tfm *tfm)
 | 
			
		||||
 {
 | 
			
		||||
 }
 | 
			
		||||
@ -1184,7 +1184,7 @@
 | 
			
		||||
 #include <linux/errno.h>
 | 
			
		||||
 #include <linux/kernel.h>
 | 
			
		||||
 #include <linux/module.h>
 | 
			
		||||
@@ -59,24 +60,107 @@
 | 
			
		||||
@@ -59,24 +60,107 @@ static int hash_setkey(struct crypto_has
 | 
			
		||||
 	return alg->setkey(crt, key, keylen);
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -1303,7 +1303,7 @@
 | 
			
		||||
 static void crypto_hash_show(struct seq_file *m, struct crypto_alg *alg)
 | 
			
		||||
--- a/crypto/hmac.c
 | 
			
		||||
+++ b/crypto/hmac.c
 | 
			
		||||
@@ -226,6 +226,7 @@
 | 
			
		||||
@@ -226,6 +226,7 @@ static struct crypto_instance *hmac_allo
 | 
			
		||||
 	struct crypto_instance *inst;
 | 
			
		||||
 	struct crypto_alg *alg;
 | 
			
		||||
 	int err;
 | 
			
		||||
@ -1311,7 +1311,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	err = crypto_check_attr_type(tb, CRYPTO_ALG_TYPE_HASH);
 | 
			
		||||
 	if (err)
 | 
			
		||||
@@ -236,6 +237,13 @@
 | 
			
		||||
@@ -236,6 +237,13 @@ static struct crypto_instance *hmac_allo
 | 
			
		||||
 	if (IS_ERR(alg))
 | 
			
		||||
 		return ERR_CAST(alg);
 | 
			
		||||
 
 | 
			
		||||
@ -1325,7 +1325,7 @@
 | 
			
		||||
 	inst = crypto_alloc_instance("hmac", alg);
 | 
			
		||||
 	if (IS_ERR(inst))
 | 
			
		||||
 		goto out_put_alg;
 | 
			
		||||
@@ -246,14 +254,10 @@
 | 
			
		||||
@@ -246,14 +254,10 @@ static struct crypto_instance *hmac_allo
 | 
			
		||||
 	inst->alg.cra_alignmask = alg->cra_alignmask;
 | 
			
		||||
 	inst->alg.cra_type = &crypto_hash_type;
 | 
			
		||||
 
 | 
			
		||||
@ -1344,7 +1344,7 @@
 | 
			
		||||
 	inst->alg.cra_init = hmac_init_tfm;
 | 
			
		||||
--- a/crypto/internal.h
 | 
			
		||||
+++ b/crypto/internal.h
 | 
			
		||||
@@ -86,6 +86,7 @@
 | 
			
		||||
@@ -86,6 +86,7 @@ struct crypto_alg *__crypto_alg_lookup(c
 | 
			
		||||
 struct crypto_alg *crypto_alg_mod_lookup(const char *name, u32 type, u32 mask);
 | 
			
		||||
 
 | 
			
		||||
 int crypto_init_digest_ops(struct crypto_tfm *tfm);
 | 
			
		||||
@ -3329,7 +3329,7 @@
 | 
			
		||||
 #define IDX2		32400
 | 
			
		||||
 #define IDX3		1
 | 
			
		||||
 #define IDX4		8193
 | 
			
		||||
@@ -83,7 +76,8 @@
 | 
			
		||||
@@ -83,7 +76,8 @@ static char *check[] = {
 | 
			
		||||
 	"blowfish", "twofish", "serpent", "sha384", "sha512", "md4", "aes",
 | 
			
		||||
 	"cast6", "arc4", "michael_mic", "deflate", "crc32c", "tea", "xtea",
 | 
			
		||||
 	"khazad", "wp512", "wp384", "wp256", "tnepres", "xeta",  "fcrypt",
 | 
			
		||||
@ -3339,7 +3339,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 static void hexdump(unsigned char *buf, unsigned int len)
 | 
			
		||||
@@ -110,22 +104,30 @@
 | 
			
		||||
@@ -110,22 +104,30 @@ static void test_hash(char *algo, struct
 | 
			
		||||
 	unsigned int i, j, k, temp;
 | 
			
		||||
 	struct scatterlist sg[8];
 | 
			
		||||
 	char result[64];
 | 
			
		||||
@ -3375,7 +3375,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	for (i = 0; i < tcount; i++) {
 | 
			
		||||
 		printk("test %u:\n", i + 1);
 | 
			
		||||
@@ -139,8 +141,9 @@
 | 
			
		||||
@@ -139,8 +141,9 @@ static void test_hash(char *algo, struct
 | 
			
		||||
 		sg_init_one(&sg[0], hash_buff, template[i].psize);
 | 
			
		||||
 
 | 
			
		||||
 		if (template[i].ksize) {
 | 
			
		||||
@ -3387,7 +3387,7 @@
 | 
			
		||||
 			if (ret) {
 | 
			
		||||
 				printk("setkey() failed ret=%d\n", ret);
 | 
			
		||||
 				kfree(hash_buff);
 | 
			
		||||
@@ -148,17 +151,30 @@
 | 
			
		||||
@@ -148,17 +151,30 @@ static void test_hash(char *algo, struct
 | 
			
		||||
 			}
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
@ -3422,7 +3422,7 @@
 | 
			
		||||
 		       "fail" : "pass");
 | 
			
		||||
 		kfree(hash_buff);
 | 
			
		||||
 	}
 | 
			
		||||
@@ -187,8 +203,9 @@
 | 
			
		||||
@@ -187,8 +203,9 @@ static void test_hash(char *algo, struct
 | 
			
		||||
 			}
 | 
			
		||||
 
 | 
			
		||||
 			if (template[i].ksize) {
 | 
			
		||||
@ -3434,7 +3434,7 @@
 | 
			
		||||
 
 | 
			
		||||
 				if (ret) {
 | 
			
		||||
 					printk("setkey() failed ret=%d\n", ret);
 | 
			
		||||
@@ -196,29 +213,44 @@
 | 
			
		||||
@@ -196,29 +213,44 @@ static void test_hash(char *algo, struct
 | 
			
		||||
 				}
 | 
			
		||||
 			}
 | 
			
		||||
 
 | 
			
		||||
@ -3486,7 +3486,7 @@
 | 
			
		||||
 	char *q;
 | 
			
		||||
 	struct crypto_aead *tfm;
 | 
			
		||||
 	char *key;
 | 
			
		||||
@@ -344,13 +376,12 @@
 | 
			
		||||
@@ -344,13 +376,12 @@ static void test_aead(char *algo, int en
 | 
			
		||||
 				goto next_one;
 | 
			
		||||
 			}
 | 
			
		||||
 
 | 
			
		||||
@ -3501,7 +3501,7 @@
 | 
			
		||||
 next_one:
 | 
			
		||||
 			if (!template[i].key)
 | 
			
		||||
 				kfree(key);
 | 
			
		||||
@@ -360,7 +391,6 @@
 | 
			
		||||
@@ -360,7 +391,6 @@ next_one:
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 	printk(KERN_INFO "\ntesting %s %s across pages (chunking)\n", algo, e);
 | 
			
		||||
@ -3509,7 +3509,7 @@
 | 
			
		||||
 	memset(axbuf, 0, XBUFSIZE);
 | 
			
		||||
 
 | 
			
		||||
 	for (i = 0, j = 0; i < tcount; i++) {
 | 
			
		||||
@@ -388,6 +418,7 @@
 | 
			
		||||
@@ -388,6 +418,7 @@ next_one:
 | 
			
		||||
 					goto out;
 | 
			
		||||
 			}
 | 
			
		||||
 
 | 
			
		||||
@ -3517,7 +3517,7 @@
 | 
			
		||||
 			sg_init_table(sg, template[i].np);
 | 
			
		||||
 			for (k = 0, temp = 0; k < template[i].np; k++) {
 | 
			
		||||
 				memcpy(&xbuf[IDX[k]],
 | 
			
		||||
@@ -450,7 +481,7 @@
 | 
			
		||||
@@ -450,7 +481,7 @@ next_one:
 | 
			
		||||
 
 | 
			
		||||
 			for (k = 0, temp = 0; k < template[i].np; k++) {
 | 
			
		||||
 				printk(KERN_INFO "page %u\n", k);
 | 
			
		||||
@ -3526,7 +3526,7 @@
 | 
			
		||||
 				hexdump(q, template[i].tap[k]);
 | 
			
		||||
 				printk(KERN_INFO "%s\n",
 | 
			
		||||
 				       memcmp(q, template[i].result + temp,
 | 
			
		||||
@@ -459,8 +490,15 @@
 | 
			
		||||
@@ -459,8 +490,15 @@ next_one:
 | 
			
		||||
 					       0 : authsize)) ?
 | 
			
		||||
 				       "fail" : "pass");
 | 
			
		||||
 
 | 
			
		||||
@ -3543,7 +3543,7 @@
 | 
			
		||||
 			}
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
@@ -473,7 +511,7 @@
 | 
			
		||||
@@ -473,7 +511,7 @@ out:
 | 
			
		||||
 static void test_cipher(char *algo, int enc,
 | 
			
		||||
 			struct cipher_testvec *template, unsigned int tcount)
 | 
			
		||||
 {
 | 
			
		||||
@ -3552,7 +3552,7 @@
 | 
			
		||||
 	char *q;
 | 
			
		||||
 	struct crypto_ablkcipher *tfm;
 | 
			
		||||
 	struct ablkcipher_request *req;
 | 
			
		||||
@@ -569,19 +607,17 @@
 | 
			
		||||
@@ -569,19 +607,17 @@ static void test_cipher(char *algo, int 
 | 
			
		||||
 				goto out;
 | 
			
		||||
 			}
 | 
			
		||||
 
 | 
			
		||||
@ -3573,7 +3573,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	j = 0;
 | 
			
		||||
 	for (i = 0; i < tcount; i++) {
 | 
			
		||||
@@ -596,6 +632,7 @@
 | 
			
		||||
@@ -596,6 +632,7 @@ static void test_cipher(char *algo, int 
 | 
			
		||||
 			printk("test %u (%d bit key):\n",
 | 
			
		||||
 			j, template[i].klen * 8);
 | 
			
		||||
 
 | 
			
		||||
@ -3581,7 +3581,7 @@
 | 
			
		||||
 			crypto_ablkcipher_clear_flags(tfm, ~0);
 | 
			
		||||
 			if (template[i].wk)
 | 
			
		||||
 				crypto_ablkcipher_set_flags(
 | 
			
		||||
@@ -649,14 +686,21 @@
 | 
			
		||||
@@ -649,14 +686,21 @@ static void test_cipher(char *algo, int 
 | 
			
		||||
 			temp = 0;
 | 
			
		||||
 			for (k = 0; k < template[i].np; k++) {
 | 
			
		||||
 				printk("page %u\n", k);
 | 
			
		||||
@ -3605,7 +3605,7 @@
 | 
			
		||||
 			}
 | 
			
		||||
 		}
 | 
			
		||||
 	}
 | 
			
		||||
@@ -1172,6 +1216,14 @@
 | 
			
		||||
@@ -1172,6 +1216,14 @@ static void do_test(void)
 | 
			
		||||
 		test_cipher("ecb(des3_ede)", DECRYPT, des3_ede_dec_tv_template,
 | 
			
		||||
 			    DES3_EDE_DEC_TEST_VECTORS);
 | 
			
		||||
 
 | 
			
		||||
@ -3620,7 +3620,7 @@
 | 
			
		||||
 		test_hash("md4", md4_tv_template, MD4_TEST_VECTORS);
 | 
			
		||||
 
 | 
			
		||||
 		test_hash("sha224", sha224_tv_template, SHA224_TEST_VECTORS);
 | 
			
		||||
@@ -1382,6 +1434,14 @@
 | 
			
		||||
@@ -1382,6 +1434,14 @@ static void do_test(void)
 | 
			
		||||
 			    DES3_EDE_ENC_TEST_VECTORS);
 | 
			
		||||
 		test_cipher("ecb(des3_ede)", DECRYPT, des3_ede_dec_tv_template,
 | 
			
		||||
 			    DES3_EDE_DEC_TEST_VECTORS);
 | 
			
		||||
@ -3635,7 +3635,7 @@
 | 
			
		||||
 		break;
 | 
			
		||||
 
 | 
			
		||||
 	case 5:
 | 
			
		||||
@@ -1550,7 +1610,7 @@
 | 
			
		||||
@@ -1550,7 +1610,7 @@ static void do_test(void)
 | 
			
		||||
 	case 29:
 | 
			
		||||
 		test_hash("tgr128", tgr128_tv_template, TGR128_TEST_VECTORS);
 | 
			
		||||
 		break;
 | 
			
		||||
@ -3644,7 +3644,7 @@
 | 
			
		||||
 	case 30:
 | 
			
		||||
 		test_cipher("ecb(xeta)", ENCRYPT, xeta_enc_tv_template,
 | 
			
		||||
 			    XETA_ENC_TEST_VECTORS);
 | 
			
		||||
@@ -1615,6 +1675,22 @@
 | 
			
		||||
@@ -1615,6 +1675,22 @@ static void do_test(void)
 | 
			
		||||
 			    CTS_MODE_DEC_TEST_VECTORS);
 | 
			
		||||
 		break;
 | 
			
		||||
 
 | 
			
		||||
@ -3667,7 +3667,7 @@
 | 
			
		||||
 	case 100:
 | 
			
		||||
 		test_hash("hmac(md5)", hmac_md5_tv_template,
 | 
			
		||||
 			  HMAC_MD5_TEST_VECTORS);
 | 
			
		||||
@@ -1650,6 +1726,16 @@
 | 
			
		||||
@@ -1650,6 +1726,16 @@ static void do_test(void)
 | 
			
		||||
 			  XCBC_AES_TEST_VECTORS);
 | 
			
		||||
 		break;
 | 
			
		||||
 
 | 
			
		||||
@ -3684,7 +3684,7 @@
 | 
			
		||||
 	case 200:
 | 
			
		||||
 		test_cipher_speed("ecb(aes)", ENCRYPT, sec, NULL, 0,
 | 
			
		||||
 				speed_template_16_24_32);
 | 
			
		||||
@@ -1788,6 +1874,22 @@
 | 
			
		||||
@@ -1788,6 +1874,22 @@ static void do_test(void)
 | 
			
		||||
 		test_hash_speed("sha224", sec, generic_hash_speed_template);
 | 
			
		||||
 		if (mode > 300 && mode < 400) break;
 | 
			
		||||
 
 | 
			
		||||
@ -3722,7 +3722,7 @@
 | 
			
		||||
  */
 | 
			
		||||
 #ifndef _CRYPTO_TCRYPT_H
 | 
			
		||||
 #define _CRYPTO_TCRYPT_H
 | 
			
		||||
@@ -168,6 +162,271 @@
 | 
			
		||||
@@ -168,6 +162,271 @@ static struct hash_testvec md5_tv_templa
 | 
			
		||||
 		.digest	= "\x57\xed\xf4\xa2\x2b\xe3\xc9\x55"
 | 
			
		||||
 			  "\xac\x49\xda\x2e\x21\x07\xb6\x7a",
 | 
			
		||||
 	}
 | 
			
		||||
@ -3994,7 +3994,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
@@ -817,6 +1076,168 @@
 | 
			
		||||
@@ -817,6 +1076,168 @@ static struct hash_testvec hmac_md5_tv_t
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
@ -4163,7 +4163,7 @@
 | 
			
		||||
  * HMAC-SHA1 test vectors from RFC2202
 | 
			
		||||
  */
 | 
			
		||||
 #define HMAC_SHA1_TEST_VECTORS	7
 | 
			
		||||
@@ -1442,6 +1863,8 @@
 | 
			
		||||
@@ -1442,6 +1863,8 @@ static struct hash_testvec hmac_sha512_t
 | 
			
		||||
 #define DES_CBC_DEC_TEST_VECTORS	4
 | 
			
		||||
 #define DES3_EDE_ENC_TEST_VECTORS	3
 | 
			
		||||
 #define DES3_EDE_DEC_TEST_VECTORS	3
 | 
			
		||||
@ -4172,7 +4172,7 @@
 | 
			
		||||
 
 | 
			
		||||
 static struct cipher_testvec des_enc_tv_template[] = {
 | 
			
		||||
 	{ /* From Applied Cryptography */
 | 
			
		||||
@@ -1680,9 +2103,6 @@
 | 
			
		||||
@@ -1680,9 +2103,6 @@ static struct cipher_testvec des_cbc_dec
 | 
			
		||||
 	},
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -4182,7 +4182,7 @@
 | 
			
		||||
 static struct cipher_testvec des3_ede_enc_tv_template[] = {
 | 
			
		||||
 	{ /* These are from openssl */
 | 
			
		||||
 		.key	= "\x01\x23\x45\x67\x89\xab\xcd\xef"
 | 
			
		||||
@@ -1745,6 +2165,94 @@
 | 
			
		||||
@@ -1745,6 +2165,94 @@ static struct cipher_testvec des3_ede_de
 | 
			
		||||
 	},
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -4279,7 +4279,7 @@
 | 
			
		||||
  */
 | 
			
		||||
--- a/drivers/crypto/Kconfig
 | 
			
		||||
+++ b/drivers/crypto/Kconfig
 | 
			
		||||
@@ -174,4 +174,30 @@
 | 
			
		||||
@@ -174,4 +174,30 @@ config CRYPTO_DEV_HIFN_795X_RNG
 | 
			
		||||
 	  Select this option if you want to enable the random number generator
 | 
			
		||||
 	  on the HIFN 795x crypto adapters.
 | 
			
		||||
 
 | 
			
		||||
@ -4312,7 +4312,7 @@
 | 
			
		||||
 endif # CRYPTO_HW
 | 
			
		||||
--- a/drivers/crypto/Makefile
 | 
			
		||||
+++ b/drivers/crypto/Makefile
 | 
			
		||||
@@ -2,3 +2,5 @@
 | 
			
		||||
@@ -2,3 +2,5 @@ obj-$(CONFIG_CRYPTO_DEV_PADLOCK_AES) += 
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_DEV_PADLOCK_SHA) += padlock-sha.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode-aes.o
 | 
			
		||||
 obj-$(CONFIG_CRYPTO_DEV_HIFN_795X) += hifn_795x.o
 | 
			
		||||
@ -4328,7 +4328,7 @@
 | 
			
		||||
 #include <linux/crypto.h>
 | 
			
		||||
 #include <linux/hw_random.h>
 | 
			
		||||
 #include <linux/ktime.h>
 | 
			
		||||
@@ -369,7 +368,9 @@
 | 
			
		||||
@@ -369,7 +368,9 @@ static atomic_t hifn_dev_number;
 | 
			
		||||
 #define	HIFN_D_DST_RSIZE		80*4
 | 
			
		||||
 #define	HIFN_D_RES_RSIZE		24*4
 | 
			
		||||
 
 | 
			
		||||
@ -4339,7 +4339,7 @@
 | 
			
		||||
 
 | 
			
		||||
 #define AES_MIN_KEY_SIZE		16
 | 
			
		||||
 #define AES_MAX_KEY_SIZE		32
 | 
			
		||||
@@ -535,10 +536,10 @@
 | 
			
		||||
@@ -535,10 +536,10 @@ struct hifn_crypt_command
 | 
			
		||||
  */
 | 
			
		||||
 struct hifn_mac_command
 | 
			
		||||
 {
 | 
			
		||||
@ -4354,7 +4354,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define	HIFN_MAC_CMD_ALG_MASK		0x0001
 | 
			
		||||
@@ -564,10 +565,10 @@
 | 
			
		||||
@@ -564,10 +565,10 @@ struct hifn_mac_command
 | 
			
		||||
 
 | 
			
		||||
 struct hifn_comp_command
 | 
			
		||||
 {
 | 
			
		||||
@ -4369,7 +4369,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define	HIFN_COMP_CMD_SRCLEN_M		0xc000
 | 
			
		||||
@@ -583,10 +584,10 @@
 | 
			
		||||
@@ -583,10 +584,10 @@ struct hifn_comp_command
 | 
			
		||||
 
 | 
			
		||||
 struct hifn_base_result
 | 
			
		||||
 {
 | 
			
		||||
@ -4384,7 +4384,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define	HIFN_BASE_RES_DSTOVERRUN	0x0200	/* destination overrun */
 | 
			
		||||
@@ -597,8 +598,8 @@
 | 
			
		||||
@@ -597,8 +598,8 @@ struct hifn_base_result
 | 
			
		||||
 
 | 
			
		||||
 struct hifn_comp_result
 | 
			
		||||
 {
 | 
			
		||||
@ -4395,7 +4395,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define	HIFN_COMP_RES_LCB_M		0xff00	/* longitudinal check byte */
 | 
			
		||||
@@ -609,8 +610,8 @@
 | 
			
		||||
@@ -609,8 +610,8 @@ struct hifn_comp_result
 | 
			
		||||
 
 | 
			
		||||
 struct hifn_mac_result
 | 
			
		||||
 {
 | 
			
		||||
@ -4406,7 +4406,7 @@
 | 
			
		||||
 	/* followed by 0, 6, 8, or 10 u16's of the MAC, then crypt */
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@@ -619,8 +620,8 @@
 | 
			
		||||
@@ -619,8 +620,8 @@ struct hifn_mac_result
 | 
			
		||||
 
 | 
			
		||||
 struct hifn_crypt_result
 | 
			
		||||
 {
 | 
			
		||||
@ -4417,7 +4417,7 @@
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
 #define	HIFN_CRYPT_RES_SRC_NOTZERO	0x0001	/* source expired */
 | 
			
		||||
@@ -686,12 +687,12 @@
 | 
			
		||||
@@ -686,12 +687,12 @@ static inline u32 hifn_read_1(struct hif
 | 
			
		||||
 
 | 
			
		||||
 static inline void hifn_write_0(struct hifn_device *dev, u32 reg, u32 val)
 | 
			
		||||
 {
 | 
			
		||||
@ -4432,7 +4432,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 static void hifn_wait_puc(struct hifn_device *dev)
 | 
			
		||||
@@ -894,7 +895,7 @@
 | 
			
		||||
@@ -894,7 +895,7 @@ static int hifn_enable_crypto(struct hif
 | 
			
		||||
 	char *offtbl = NULL;
 | 
			
		||||
 	int i;
 | 
			
		||||
 
 | 
			
		||||
@ -4441,7 +4441,7 @@
 | 
			
		||||
 		if (pci2id[i].pci_vendor == dev->pdev->vendor &&
 | 
			
		||||
 				pci2id[i].pci_prod == dev->pdev->device) {
 | 
			
		||||
 			offtbl = pci2id[i].card_id;
 | 
			
		||||
@@ -1037,14 +1038,14 @@
 | 
			
		||||
@@ -1037,14 +1038,14 @@ static void hifn_init_registers(struct h
 | 
			
		||||
 	hifn_write_0(dev, HIFN_0_PUIER, HIFN_PUIER_DSTOVER);
 | 
			
		||||
 
 | 
			
		||||
 	/* write all 4 ring address registers */
 | 
			
		||||
@ -4464,7 +4464,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	mdelay(2);
 | 
			
		||||
 #if 0
 | 
			
		||||
@@ -1166,109 +1167,15 @@
 | 
			
		||||
@@ -1166,109 +1167,15 @@ static int hifn_setup_crypto_command(str
 | 
			
		||||
 	return cmd_len;
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
@ -4577,7 +4577,7 @@
 | 
			
		||||
 	buf_pos = buf = dma->command_bufs[dma->cmdi];
 | 
			
		||||
 
 | 
			
		||||
 	mask = 0;
 | 
			
		||||
@@ -1370,16 +1277,113 @@
 | 
			
		||||
@@ -1370,16 +1277,113 @@ static int hifn_setup_dma(struct hifn_de
 | 
			
		||||
 		hifn_write_1(dev, HIFN_1_DMA_CSR, HIFN_DMACSR_C_CTRL_ENA);
 | 
			
		||||
 		dev->flags |= HIFN_FLAG_CMD_BUSY;
 | 
			
		||||
 	}
 | 
			
		||||
@ -4695,7 +4695,7 @@
 | 
			
		||||
 static int ablkcipher_walk_init(struct ablkcipher_walk *w,
 | 
			
		||||
 		int num, gfp_t gfp_flags)
 | 
			
		||||
 {
 | 
			
		||||
@@ -1431,7 +1435,7 @@
 | 
			
		||||
@@ -1431,7 +1435,7 @@ static int ablkcipher_add(void *daddr, u
 | 
			
		||||
 		return -EINVAL;
 | 
			
		||||
 
 | 
			
		||||
 	while (size) {
 | 
			
		||||
@ -4704,7 +4704,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		saddr = kmap_atomic(sg_page(src), KM_SOFTIRQ1);
 | 
			
		||||
 		memcpy(daddr, saddr + src->offset, copy);
 | 
			
		||||
@@ -1458,10 +1462,6 @@
 | 
			
		||||
@@ -1458,10 +1462,6 @@ static int ablkcipher_add(void *daddr, u
 | 
			
		||||
 static int ablkcipher_walk(struct ablkcipher_request *req,
 | 
			
		||||
 		struct ablkcipher_walk *w)
 | 
			
		||||
 {
 | 
			
		||||
@ -4715,7 +4715,7 @@
 | 
			
		||||
 	struct scatterlist *src, *dst, *t;
 | 
			
		||||
 	void *daddr;
 | 
			
		||||
 	unsigned int nbytes = req->nbytes, offset, copy, diff;
 | 
			
		||||
@@ -1477,16 +1477,14 @@
 | 
			
		||||
@@ -1477,16 +1477,14 @@ static int ablkcipher_walk(struct ablkci
 | 
			
		||||
 		dst = &req->dst[idx];
 | 
			
		||||
 
 | 
			
		||||
 		dprintk("\n%s: slen: %u, dlen: %u, soff: %u, doff: %u, offset: %u, "
 | 
			
		||||
@ -4738,7 +4738,7 @@
 | 
			
		||||
 			unsigned dlen = PAGE_SIZE;
 | 
			
		||||
 
 | 
			
		||||
 			t = &w->cache[idx];
 | 
			
		||||
@@ -1498,8 +1496,8 @@
 | 
			
		||||
@@ -1498,8 +1496,8 @@ static int ablkcipher_walk(struct ablkci
 | 
			
		||||
 
 | 
			
		||||
 			idx += err;
 | 
			
		||||
 
 | 
			
		||||
@ -4749,7 +4749,7 @@
 | 
			
		||||
 
 | 
			
		||||
 			if (dlen < nbytes) {
 | 
			
		||||
 				/*
 | 
			
		||||
@@ -1507,7 +1505,7 @@
 | 
			
		||||
@@ -1507,7 +1505,7 @@ static int ablkcipher_walk(struct ablkci
 | 
			
		||||
 				 * to put there additional blocksized chunk,
 | 
			
		||||
 				 * so we mark that page as containing only
 | 
			
		||||
 				 * blocksize aligned chunks:
 | 
			
		||||
@ -4758,7 +4758,7 @@
 | 
			
		||||
 				 * and increase number of bytes to be processed
 | 
			
		||||
 				 * in next chunk:
 | 
			
		||||
 				 * 	nbytes += diff;
 | 
			
		||||
@@ -1544,7 +1542,7 @@
 | 
			
		||||
@@ -1544,7 +1542,7 @@ static int ablkcipher_walk(struct ablkci
 | 
			
		||||
 
 | 
			
		||||
 			kunmap_atomic(daddr, KM_SOFTIRQ0);
 | 
			
		||||
 		} else {
 | 
			
		||||
@ -4767,7 +4767,7 @@
 | 
			
		||||
 			idx++;
 | 
			
		||||
 		}
 | 
			
		||||
 
 | 
			
		||||
@@ -1563,14 +1561,10 @@
 | 
			
		||||
@@ -1563,14 +1561,10 @@ static int hifn_setup_session(struct abl
 | 
			
		||||
 	struct hifn_context *ctx = crypto_tfm_ctx(req->base.tfm);
 | 
			
		||||
 	struct hifn_device *dev = ctx->dev;
 | 
			
		||||
 	struct page *spage, *dpage;
 | 
			
		||||
@ -4783,7 +4783,7 @@
 | 
			
		||||
 
 | 
			
		||||
 	if (ctx->iv && !ctx->ivsize && ctx->mode != ACRYPTO_MODE_ECB)
 | 
			
		||||
 		goto err_out_exit;
 | 
			
		||||
@@ -1578,17 +1572,14 @@
 | 
			
		||||
@@ -1578,17 +1572,14 @@ static int hifn_setup_session(struct abl
 | 
			
		||||
 	ctx->walk.flags = 0;
 | 
			
		||||
 
 | 
			
		||||
 	while (nbytes) {
 | 
			
		||||
@ -4805,7 +4805,7 @@
 | 
			
		||||
 		idx++;
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
@@ -1602,7 +1593,10 @@
 | 
			
		||||
@@ -1602,7 +1593,10 @@ static int hifn_setup_session(struct abl
 | 
			
		||||
 	idx = 0;
 | 
			
		||||
 
 | 
			
		||||
 	sg_num = ablkcipher_walk(req, &ctx->walk);
 | 
			
		||||
@ -4817,7 +4817,7 @@
 | 
			
		||||
 	atomic_set(&ctx->sg_num, sg_num);
 | 
			
		||||
 
 | 
			
		||||
 	spin_lock_irqsave(&dev->lock, flags);
 | 
			
		||||
@@ -1640,7 +1634,7 @@
 | 
			
		||||
@@ -1640,7 +1634,7 @@ static int hifn_setup_session(struct abl
 | 
			
		||||
 		if (err)
 | 
			
		||||
 			goto err_out;
 | 
			
		||||
 
 | 
			
		||||
@ -4826,7 +4826,7 @@
 | 
			
		||||
 	}
 | 
			
		||||
 
 | 
			
		||||
 	dev->active = HIFN_DEFAULT_ACTIVE_NUM;
 | 
			
		||||
@@ -1651,7 +1645,7 @@
 | 
			
		||||
@@ -1651,7 +1645,7 @@ static int hifn_setup_session(struct abl
 | 
			
		||||
 err_out:
 | 
			
		||||
 	spin_unlock_irqrestore(&dev->lock, flags);
 | 
			
		||||
 err_out_exit:
 | 
			
		||||
@ -4835,7 +4835,7 @@
 | 
			
		||||
 		dprintk("%s: iv: %p [%d], key: %p [%d], mode: %u, op: %u, "
 | 
			
		||||
 				"type: %u, err: %d.\n",
 | 
			
		||||
 			dev->name, ctx->iv, ctx->ivsize,
 | 
			
		||||
@@ -1745,8 +1739,7 @@
 | 
			
		||||
@@ -1745,8 +1739,7 @@ static int ablkcipher_get(void *saddr, u
 | 
			
		||||
 		return -EINVAL;
 | 
			
		||||
 
 | 
			
		||||
 	while (size) {
 | 
			
		||||
@ -4845,7 +4845,7 @@
 | 
			
		||||
 
 | 
			
		||||
 		daddr = kmap_atomic(sg_page(dst), KM_IRQ0);
 | 
			
		||||
 		memcpy(daddr + dst->offset + offset, saddr, copy);
 | 
			
		||||
@@ -1803,7 +1796,7 @@
 | 
			
		||||
@@ -1803,7 +1796,7 @@ static void hifn_process_ready(struct ab
 | 
			
		||||
 					sg_page(dst), dst->length, nbytes);
 | 
			
		||||
 
 | 
			
		||||
 				if (!t->length) {
 | 
			
		||||
@ -4854,7 +4854,7 @@
 | 
			
		||||
 					idx++;
 | 
			
		||||
 					continue;
 | 
			
		||||
 				}
 | 
			
		||||
@@ -2202,9 +2195,9 @@
 | 
			
		||||
@@ -2202,9 +2195,9 @@ static int hifn_setup_crypto(struct ablk
 | 
			
		||||
 		return err;
 | 
			
		||||
 
 | 
			
		||||
 	if (dev->started < HIFN_QUEUE_LENGTH &&	dev->queue.qlen)
 | 
			
		||||
@ -4866,7 +4866,7 @@
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 /*
 | 
			
		||||
@@ -2364,7 +2357,7 @@
 | 
			
		||||
@@ -2364,7 +2357,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 	 * 3DES ECB, CBC, CFB and OFB modes.
 | 
			
		||||
 	 */
 | 
			
		||||
 	{
 | 
			
		||||
@ -4875,7 +4875,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
@@ -2374,7 +2367,7 @@
 | 
			
		||||
@@ -2374,7 +2367,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4884,7 +4884,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
@@ -2384,8 +2377,9 @@
 | 
			
		||||
@@ -2384,8 +2377,9 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4895,7 +4895,7 @@
 | 
			
		||||
 			.min_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
 			.setkey		=	hifn_setkey,
 | 
			
		||||
@@ -2394,7 +2388,7 @@
 | 
			
		||||
@@ -2394,7 +2388,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4904,7 +4904,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_3DES_KEY_LENGTH,
 | 
			
		||||
@@ -2408,7 +2402,7 @@
 | 
			
		||||
@@ -2408,7 +2402,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 	 * DES ECB, CBC, CFB and OFB modes.
 | 
			
		||||
 	 */
 | 
			
		||||
 	{
 | 
			
		||||
@ -4913,7 +4913,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
@@ -2418,7 +2412,7 @@
 | 
			
		||||
@@ -2418,7 +2412,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4922,7 +4922,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
@@ -2428,8 +2422,9 @@
 | 
			
		||||
@@ -2428,8 +2422,9 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4933,7 +4933,7 @@
 | 
			
		||||
 			.min_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
 			.setkey		=	hifn_setkey,
 | 
			
		||||
@@ -2438,7 +2433,7 @@
 | 
			
		||||
@@ -2438,7 +2433,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4942,7 +4942,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
 			.max_keysize	=	HIFN_DES_KEY_LENGTH,
 | 
			
		||||
@@ -2452,7 +2447,7 @@
 | 
			
		||||
@@ -2452,7 +2447,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 	 * AES ECB, CBC, CFB and OFB modes.
 | 
			
		||||
 	 */
 | 
			
		||||
 	{
 | 
			
		||||
@ -4951,7 +4951,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	AES_MIN_KEY_SIZE,
 | 
			
		||||
 			.max_keysize	=	AES_MAX_KEY_SIZE,
 | 
			
		||||
@@ -2462,8 +2457,9 @@
 | 
			
		||||
@@ -2462,8 +2457,9 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4962,7 +4962,7 @@
 | 
			
		||||
 			.min_keysize	=	AES_MIN_KEY_SIZE,
 | 
			
		||||
 			.max_keysize	=	AES_MAX_KEY_SIZE,
 | 
			
		||||
 			.setkey		=	hifn_setkey,
 | 
			
		||||
@@ -2472,7 +2468,7 @@
 | 
			
		||||
@@ -2472,7 +2468,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4971,7 +4971,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	AES_MIN_KEY_SIZE,
 | 
			
		||||
 			.max_keysize	=	AES_MAX_KEY_SIZE,
 | 
			
		||||
@@ -2482,7 +2478,7 @@
 | 
			
		||||
@@ -2482,7 +2478,7 @@ static struct hifn_alg_template hifn_alg
 | 
			
		||||
 		},
 | 
			
		||||
 	},
 | 
			
		||||
 	{
 | 
			
		||||
@ -4980,7 +4980,7 @@
 | 
			
		||||
 		.ablkcipher = {
 | 
			
		||||
 			.min_keysize	=	AES_MIN_KEY_SIZE,
 | 
			
		||||
 			.max_keysize	=	AES_MAX_KEY_SIZE,
 | 
			
		||||
@@ -2514,15 +2510,14 @@
 | 
			
		||||
@@ -2514,15 +2510,14 @@ static int hifn_alg_alloc(struct hifn_de
 | 
			
		||||
 		return -ENOMEM;
 | 
			
		||||
 
 | 
			
		||||
 	snprintf(alg->alg.cra_name, CRYPTO_MAX_ALG_NAME, "%s", t->name);
 | 
			
		||||
@ -6510,7 +6510,7 @@
 | 
			
		||||
+
 | 
			
		||||
--- a/drivers/crypto/padlock-aes.c
 | 
			
		||||
+++ b/drivers/crypto/padlock-aes.c
 | 
			
		||||
@@ -411,12 +411,12 @@
 | 
			
		||||
@@ -411,12 +411,12 @@ static int __init padlock_init(void)
 | 
			
		||||
 	int ret;
 | 
			
		||||
 
 | 
			
		||||
 	if (!cpu_has_xcrypt) {
 | 
			
		||||
@ -6527,7 +6527,7 @@
 | 
			
		||||
 
 | 
			
		||||
--- a/drivers/crypto/padlock-sha.c
 | 
			
		||||
+++ b/drivers/crypto/padlock-sha.c
 | 
			
		||||
@@ -263,12 +263,12 @@
 | 
			
		||||
@@ -263,12 +263,12 @@ static int __init padlock_init(void)
 | 
			
		||||
 	int rc = -ENODEV;
 | 
			
		||||
 
 | 
			
		||||
 	if (!cpu_has_phe) {
 | 
			
		||||
@ -8606,7 +8606,7 @@
 | 
			
		||||
 #define CRYPTO_ALG_TYPE_BLKCIPHER_MASK	0x0000000c
 | 
			
		||||
 
 | 
			
		||||
 #define CRYPTO_ALG_LARVAL		0x00000010
 | 
			
		||||
@@ -102,6 +104,7 @@
 | 
			
		||||
@@ -102,6 +104,7 @@ struct crypto_async_request;
 | 
			
		||||
 struct crypto_aead;
 | 
			
		||||
 struct crypto_blkcipher;
 | 
			
		||||
 struct crypto_hash;
 | 
			
		||||
@ -8614,7 +8614,7 @@
 | 
			
		||||
 struct crypto_tfm;
 | 
			
		||||
 struct crypto_type;
 | 
			
		||||
 struct aead_givcrypt_request;
 | 
			
		||||
@@ -131,6 +134,16 @@
 | 
			
		||||
@@ -131,6 +134,16 @@ struct ablkcipher_request {
 | 
			
		||||
 	void *__ctx[] CRYPTO_MINALIGN_ATTR;
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -8631,7 +8631,7 @@
 | 
			
		||||
 /**
 | 
			
		||||
  *	struct aead_request - AEAD request
 | 
			
		||||
  *	@base: Common attributes for async crypto requests
 | 
			
		||||
@@ -195,6 +208,17 @@
 | 
			
		||||
@@ -195,6 +208,17 @@ struct ablkcipher_alg {
 | 
			
		||||
 	unsigned int ivsize;
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -8649,7 +8649,7 @@
 | 
			
		||||
 struct aead_alg {
 | 
			
		||||
 	int (*setkey)(struct crypto_aead *tfm, const u8 *key,
 | 
			
		||||
 	              unsigned int keylen);
 | 
			
		||||
@@ -272,6 +296,7 @@
 | 
			
		||||
@@ -272,6 +296,7 @@ struct compress_alg {
 | 
			
		||||
 #define cra_cipher	cra_u.cipher
 | 
			
		||||
 #define cra_digest	cra_u.digest
 | 
			
		||||
 #define cra_hash	cra_u.hash
 | 
			
		||||
@ -8657,7 +8657,7 @@
 | 
			
		||||
 #define cra_compress	cra_u.compress
 | 
			
		||||
 
 | 
			
		||||
 struct crypto_alg {
 | 
			
		||||
@@ -298,6 +323,7 @@
 | 
			
		||||
@@ -298,6 +323,7 @@ struct crypto_alg {
 | 
			
		||||
 		struct cipher_alg cipher;
 | 
			
		||||
 		struct digest_alg digest;
 | 
			
		||||
 		struct hash_alg hash;
 | 
			
		||||
@ -8665,7 +8665,7 @@
 | 
			
		||||
 		struct compress_alg compress;
 | 
			
		||||
 	} cra_u;
 | 
			
		||||
 
 | 
			
		||||
@@ -383,6 +409,18 @@
 | 
			
		||||
@@ -383,6 +409,18 @@ struct hash_tfm {
 | 
			
		||||
 	unsigned int digestsize;
 | 
			
		||||
 };
 | 
			
		||||
 
 | 
			
		||||
@ -8684,7 +8684,7 @@
 | 
			
		||||
 struct compress_tfm {
 | 
			
		||||
 	int (*cot_compress)(struct crypto_tfm *tfm,
 | 
			
		||||
 	                    const u8 *src, unsigned int slen,
 | 
			
		||||
@@ -397,6 +435,7 @@
 | 
			
		||||
@@ -397,6 +435,7 @@ struct compress_tfm {
 | 
			
		||||
 #define crt_blkcipher	crt_u.blkcipher
 | 
			
		||||
 #define crt_cipher	crt_u.cipher
 | 
			
		||||
 #define crt_hash	crt_u.hash
 | 
			
		||||
@ -8692,7 +8692,7 @@
 | 
			
		||||
 #define crt_compress	crt_u.compress
 | 
			
		||||
 
 | 
			
		||||
 struct crypto_tfm {
 | 
			
		||||
@@ -409,6 +448,7 @@
 | 
			
		||||
@@ -409,6 +448,7 @@ struct crypto_tfm {
 | 
			
		||||
 		struct blkcipher_tfm blkcipher;
 | 
			
		||||
 		struct cipher_tfm cipher;
 | 
			
		||||
 		struct hash_tfm hash;
 | 
			
		||||
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
		Reference in New Issue
	
	Block a user