Browse Source

Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

Pull in the 'net' tree to get Daniel Borkmann's flow dissector
infrastructure change.

Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller 12 years ago
parent
commit
61816596d1
100 changed files with 288 additions and 237 deletions
  1. 8 0
      CREDITS
  2. 1 5
      Documentation/devicetree/bindings/mfd/ab8500.txt
  3. 3 0
      Documentation/devicetree/bindings/tty/serial/of-serial.txt
  4. 1 1
      Documentation/hwmon/lm75
  5. 7 0
      Documentation/networking/ipvs-sysctl.txt
  6. 27 15
      MAINTAINERS
  7. 1 1
      Makefile
  8. 0 7
      arch/Kconfig
  9. 1 1
      arch/alpha/Kconfig
  10. 11 11
      arch/arm/Kconfig
  11. 1 1
      arch/arm/Kconfig.debug
  12. 1 1
      arch/arm/boot/Makefile
  13. 8 0
      arch/arm/boot/dts/armada-370-rd.dts
  14. 2 3
      arch/arm/boot/dts/armada-370-xp.dtsi
  15. 2 2
      arch/arm/boot/dts/armada-xp.dtsi
  16. 26 2
      arch/arm/boot/dts/at91sam9x5.dtsi
  17. 1 1
      arch/arm/boot/dts/bcm2835.dtsi
  18. 1 2
      arch/arm/boot/dts/dbx5x0.dtsi
  19. 5 0
      arch/arm/boot/dts/dove.dtsi
  20. 9 0
      arch/arm/boot/dts/exynos4.dtsi
  21. 6 0
      arch/arm/boot/dts/exynos5440.dtsi
  22. 1 1
      arch/arm/boot/dts/href.dtsi
  23. 1 1
      arch/arm/boot/dts/hrefv60plus.dts
  24. 1 2
      arch/arm/boot/dts/imx53-mba53.dts
  25. 0 2
      arch/arm/boot/dts/kirkwood-dns320.dts
  26. 0 1
      arch/arm/boot/dts/kirkwood-dns325.dts
  27. 0 1
      arch/arm/boot/dts/kirkwood-dockstar.dts
  28. 0 1
      arch/arm/boot/dts/kirkwood-dreamplug.dts
  29. 0 1
      arch/arm/boot/dts/kirkwood-goflexnet.dts
  30. 0 1
      arch/arm/boot/dts/kirkwood-ib62x0.dts
  31. 0 1
      arch/arm/boot/dts/kirkwood-iconnect.dts
  32. 0 1
      arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts
  33. 0 1
      arch/arm/boot/dts/kirkwood-km_kirkwood.dts
  34. 0 1
      arch/arm/boot/dts/kirkwood-lschlv2.dts
  35. 0 1
      arch/arm/boot/dts/kirkwood-lsxhl.dts
  36. 0 1
      arch/arm/boot/dts/kirkwood-mplcec4.dts
  37. 0 1
      arch/arm/boot/dts/kirkwood-ns2-common.dtsi
  38. 0 1
      arch/arm/boot/dts/kirkwood-nsa310.dts
  39. 0 2
      arch/arm/boot/dts/kirkwood-openblocks_a6.dts
  40. 0 1
      arch/arm/boot/dts/kirkwood-topkick.dts
  41. 3 2
      arch/arm/boot/dts/kirkwood.dtsi
  42. 1 1
      arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts
  43. 1 1
      arch/arm/boot/dts/snowball.dts
  44. 3 0
      arch/arm/boot/dts/socfpga.dtsi
  45. 1 0
      arch/arm/boot/dts/tegra20.dtsi
  46. 1 0
      arch/arm/boot/dts/tegra30.dtsi
  47. 1 0
      arch/arm/configs/mxs_defconfig
  48. 2 0
      arch/arm/configs/omap2plus_defconfig
  49. 4 21
      arch/arm/include/asm/xen/events.h
  50. 1 1
      arch/arm/kernel/smp.c
  51. 13 20
      arch/arm/lib/memset.S
  52. 1 0
      arch/arm/mach-at91/board-foxg20.c
  53. 1 0
      arch/arm/mach-at91/board-stamp9g20.c
  54. 8 0
      arch/arm/mach-at91/include/mach/gpio.h
  55. 8 12
      arch/arm/mach-at91/irq.c
  56. 8 2
      arch/arm/mach-at91/pm.c
  57. 3 0
      arch/arm/mach-davinci/dma.c
  58. 1 0
      arch/arm/mach-footbridge/Kconfig
  59. 1 0
      arch/arm/mach-imx/clk-imx35.c
  60. 1 1
      arch/arm/mach-imx/clk-imx6q.c
  61. 9 9
      arch/arm/mach-imx/headsmp.S
  62. 5 0
      arch/arm/mach-imx/imx25-dt.c
  63. 0 15
      arch/arm/mach-imx/pm-imx6q.c
  64. 1 0
      arch/arm/mach-ixp4xx/vulcan-setup.c
  65. 18 7
      arch/arm/mach-kirkwood/board-dt.c
  66. 1 0
      arch/arm/mach-mmp/gplugd.c
  67. 1 1
      arch/arm/mach-mxs/icoll.c
  68. 5 5
      arch/arm/mach-mxs/mach-mxs.c
  69. 1 0
      arch/arm/mach-mxs/mm.c
  70. 1 0
      arch/arm/mach-mxs/ocotp.c
  71. 2 0
      arch/arm/mach-omap1/common.h
  72. 0 6
      arch/arm/mach-omap2/Kconfig
  73. 2 0
      arch/arm/mach-omap2/board-generic.c
  74. 2 0
      arch/arm/mach-omap2/board-rx51.c
  75. 0 1
      arch/arm/mach-omap2/common.h
  76. 3 3
      arch/arm/mach-omap2/gpmc.c
  77. 5 4
      arch/arm/mach-omap2/mux.c
  78. 1 0
      arch/arm/mach-pxa/raumfeld.c
  79. 18 18
      arch/arm/mach-s5pv210/clock.c
  80. 1 1
      arch/arm/mach-s5pv210/mach-goni.c
  81. 1 0
      arch/arm/mach-shmobile/board-marzen.c
  82. 1 1
      arch/arm/mach-spear3xx/spear3xx.c
  83. 3 2
      arch/arm/mm/dma-mapping.c
  84. 1 1
      arch/arm/net/bpf_jit_32.c
  85. 5 2
      arch/arm/plat-orion/addr-map.c
  86. 1 1
      arch/arm/plat-spear/Kconfig
  87. 0 1
      arch/arm64/Kconfig
  88. 0 11
      arch/arm64/Kconfig.debug
  89. 0 1
      arch/arm64/configs/defconfig
  90. 1 1
      arch/arm64/include/asm/ucontext.h
  91. 2 0
      arch/arm64/kernel/arm64ksyms.c
  92. 0 1
      arch/arm64/kernel/signal32.c
  93. 1 1
      arch/avr32/Kconfig
  94. 1 1
      arch/blackfin/Kconfig
  95. 1 1
      arch/cris/Kconfig
  96. 1 1
      arch/frv/Kconfig
  97. 1 1
      arch/h8300/Kconfig
  98. 1 1
      arch/ia64/Kconfig
  99. 1 1
      arch/m32r/Kconfig
  100. 2 2
      arch/m32r/include/uapi/asm/stat.h

+ 8 - 0
CREDITS

@@ -1510,6 +1510,14 @@ D: Natsemi ethernet
 D: Cobalt Networks (x86) support
 D: Cobalt Networks (x86) support
 D: This-and-That
 D: This-and-That
 
 
+N: Mark M. Hoffman
+E: mhoffman@lightlink.com
+D: asb100, lm93 and smsc47b397 hardware monitoring drivers
+D: hwmon subsystem core
+D: hwmon subsystem maintainer
+D: i2c-sis96x and i2c-stub SMBus drivers
+S: USA
+
 N: Dirk Hohndel
 N: Dirk Hohndel
 E: hohndel@suse.de
 E: hohndel@suse.de
 D: The XFree86[tm] Project
 D: The XFree86[tm] Project

+ 1 - 5
Documentation/devicetree/bindings/mfd/ab8500.txt

@@ -13,9 +13,6 @@ Required parent device properties:
                                   4 = active high level-sensitive
                                   4 = active high level-sensitive
                                   8 = active low level-sensitive
                                   8 = active low level-sensitive
 
 
-Optional parent device properties:
-- reg                    : contains the PRCMU mailbox address for the AB8500 i2c port
-
 The AB8500 consists of a large and varied group of sub-devices:
 The AB8500 consists of a large and varied group of sub-devices:
 
 
 Device                     IRQ Names              Supply Names   Description
 Device                     IRQ Names              Supply Names   Description
@@ -86,9 +83,8 @@ Non-standard child device properties:
    - stericsson,amic2-bias-vamic1           : Analoge Mic wishes to use a non-standard Vamic
    - stericsson,amic2-bias-vamic1           : Analoge Mic wishes to use a non-standard Vamic
    - stericsson,earpeice-cmv                : Earpeice voltage (only: 950 | 1100 | 1270 | 1580)
    - stericsson,earpeice-cmv                : Earpeice voltage (only: 950 | 1100 | 1270 | 1580)
 
 
-ab8500@5 {
+ab8500 {
          compatible = "stericsson,ab8500";
          compatible = "stericsson,ab8500";
-         reg = <5>; /* mailbox 5 is i2c */
          interrupts = <0 40 0x4>;
          interrupts = <0 40 0x4>;
          interrupt-controller;
          interrupt-controller;
          #interrupt-cells = <2>;
          #interrupt-cells = <2>;

+ 3 - 0
Documentation/devicetree/bindings/tty/serial/of-serial.txt

@@ -11,6 +11,9 @@ Required properties:
 	- "nvidia,tegra20-uart"
 	- "nvidia,tegra20-uart"
 	- "nxp,lpc3220-uart"
 	- "nxp,lpc3220-uart"
 	- "ibm,qpace-nwp-serial"
 	- "ibm,qpace-nwp-serial"
+	- "altr,16550-FIFO32"
+	- "altr,16550-FIFO64"
+	- "altr,16550-FIFO128"
 	- "serial" if the port type is unknown.
 	- "serial" if the port type is unknown.
 - reg : offset and length of the register set for the device.
 - reg : offset and length of the register set for the device.
 - interrupts : should contain uart interrupt.
 - interrupts : should contain uart interrupt.

+ 1 - 1
Documentation/hwmon/lm75

@@ -23,7 +23,7 @@ Supported chips:
     Datasheet: Publicly available at the Maxim website
     Datasheet: Publicly available at the Maxim website
                http://www.maxim-ic.com/
                http://www.maxim-ic.com/
   * Microchip (TelCom) TCN75
   * Microchip (TelCom) TCN75
-    Prefix: 'lm75'
+    Prefix: 'tcn75'
     Addresses scanned: none
     Addresses scanned: none
     Datasheet: Publicly available at the Microchip website
     Datasheet: Publicly available at the Microchip website
                http://www.microchip.com/
                http://www.microchip.com/

+ 7 - 0
Documentation/networking/ipvs-sysctl.txt

@@ -15,6 +15,13 @@ amemthresh - INTEGER
         enabled and the variable is automatically set to 2, otherwise
         enabled and the variable is automatically set to 2, otherwise
         the strategy is disabled and the variable is  set  to 1.
         the strategy is disabled and the variable is  set  to 1.
 
 
+backup_only - BOOLEAN
+	0 - disabled (default)
+	not 0 - enabled
+
+	If set, disable the director function while the server is
+	in backup mode to avoid packet loops for DR/TUN methods.
+
 conntrack - BOOLEAN
 conntrack - BOOLEAN
 	0 - disabled (default)
 	0 - disabled (default)
 	not 0 - enabled
 	not 0 - enabled

+ 27 - 15
MAINTAINERS

@@ -1338,12 +1338,6 @@ S:	Maintained
 F:	drivers/platform/x86/asus*.c
 F:	drivers/platform/x86/asus*.c
 F:	drivers/platform/x86/eeepc*.c
 F:	drivers/platform/x86/eeepc*.c
 
 
-ASUS ASB100 HARDWARE MONITOR DRIVER
-M:	"Mark M. Hoffman" <mhoffman@lightlink.com>
-L:	lm-sensors@lm-sensors.org
-S:	Maintained
-F:	drivers/hwmon/asb100.c
-
 ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
 ASYNCHRONOUS TRANSFERS/TRANSFORMS (IOAT) API
 M:	Dan Williams <djbw@fb.com>
 M:	Dan Williams <djbw@fb.com>
 W:	http://sourceforge.net/projects/xscaleiop
 W:	http://sourceforge.net/projects/xscaleiop
@@ -3851,7 +3845,7 @@ F:	drivers/i2c/busses/i2c-ismt.c
 F:	Documentation/i2c/busses/i2c-ismt
 F:	Documentation/i2c/busses/i2c-ismt
 
 
 I2C/SMBUS STUB DRIVER
 I2C/SMBUS STUB DRIVER
-M:	"Mark M. Hoffman" <mhoffman@lightlink.com>
+M:	Jean Delvare <khali@linux-fr.org>
 L:	linux-i2c@vger.kernel.org
 L:	linux-i2c@vger.kernel.org
 S:	Maintained
 S:	Maintained
 F:	drivers/i2c/i2c-stub.c
 F:	drivers/i2c/i2c-stub.c
@@ -4005,6 +3999,22 @@ M:	Stanislaw Gruszka <stf_xl@wp.pl>
 S:	Maintained
 S:	Maintained
 F:	drivers/usb/atm/ueagle-atm.c
 F:	drivers/usb/atm/ueagle-atm.c
 
 
+INA209 HARDWARE MONITOR DRIVER
+M:	Guenter Roeck <linux@roeck-us.net>
+L:	lm-sensors@lm-sensors.org
+S:	Maintained
+F:	Documentation/hwmon/ina209
+F:	Documentation/devicetree/bindings/i2c/ina209.txt
+F:	drivers/hwmon/ina209.c
+
+INA2XX HARDWARE MONITOR DRIVER
+M:	Guenter Roeck <linux@roeck-us.net>
+L:	lm-sensors@lm-sensors.org
+S:	Maintained
+F:	Documentation/hwmon/ina2xx
+F:	drivers/hwmon/ina2xx.c
+F:	include/linux/platform_data/ina2xx.h
+
 INDUSTRY PACK SUBSYSTEM (IPACK)
 INDUSTRY PACK SUBSYSTEM (IPACK)
 M:	Samuel Iglesias Gonsalvez <siglesias@igalia.com>
 M:	Samuel Iglesias Gonsalvez <siglesias@igalia.com>
 M:	Jens Taprogge <jens.taprogge@taprogge.org>
 M:	Jens Taprogge <jens.taprogge@taprogge.org>
@@ -5098,6 +5108,15 @@ S:	Maintained
 F:	Documentation/hwmon/max6650
 F:	Documentation/hwmon/max6650
 F:	drivers/hwmon/max6650.c
 F:	drivers/hwmon/max6650.c
 
 
+MAX6697 HARDWARE MONITOR DRIVER
+M:	Guenter Roeck <linux@roeck-us.net>
+L:	lm-sensors@lm-sensors.org
+S:	Maintained
+F:	Documentation/hwmon/max6697
+F:	Documentation/devicetree/bindings/i2c/max6697.txt
+F:	drivers/hwmon/max6697.c
+F:	include/linux/platform_data/max6697.h
+
 MAXIRADIO FM RADIO RECEIVER DRIVER
 MAXIRADIO FM RADIO RECEIVER DRIVER
 M:	Hans Verkuil <hverkuil@xs4all.nl>
 M:	Hans Verkuil <hverkuil@xs4all.nl>
 L:	linux-media@vger.kernel.org
 L:	linux-media@vger.kernel.org
@@ -7173,13 +7192,6 @@ L:	netdev@vger.kernel.org
 S:	Maintained
 S:	Maintained
 F:	drivers/net/ethernet/sis/sis900.*
 F:	drivers/net/ethernet/sis/sis900.*
 
 
-SIS 96X I2C/SMBUS DRIVER
-M:	"Mark M. Hoffman" <mhoffman@lightlink.com>
-L:	linux-i2c@vger.kernel.org
-S:	Maintained
-F:	Documentation/i2c/busses/i2c-sis96x
-F:	drivers/i2c/busses/i2c-sis96x.c
-
 SIS FRAMEBUFFER DRIVER
 SIS FRAMEBUFFER DRIVER
 M:	Thomas Winischhofer <thomas@winischhofer.net>
 M:	Thomas Winischhofer <thomas@winischhofer.net>
 W:	http://www.winischhofer.net/linuxsisvga.shtml
 W:	http://www.winischhofer.net/linuxsisvga.shtml
@@ -7257,7 +7269,7 @@ F:	Documentation/hwmon/sch5627
 F:	drivers/hwmon/sch5627.c
 F:	drivers/hwmon/sch5627.c
 
 
 SMSC47B397 HARDWARE MONITOR DRIVER
 SMSC47B397 HARDWARE MONITOR DRIVER
-M:	"Mark M. Hoffman" <mhoffman@lightlink.com>
+M:	Jean Delvare <khali@linux-fr.org>
 L:	lm-sensors@lm-sensors.org
 L:	lm-sensors@lm-sensors.org
 S:	Maintained
 S:	Maintained
 F:	Documentation/hwmon/smsc47b397
 F:	Documentation/hwmon/smsc47b397

+ 1 - 1
Makefile

@@ -1,7 +1,7 @@
 VERSION = 3
 VERSION = 3
 PATCHLEVEL = 9
 PATCHLEVEL = 9
 SUBLEVEL = 0
 SUBLEVEL = 0
-EXTRAVERSION = -rc2
+EXTRAVERSION = -rc3
 NAME = Unicycling Gorilla
 NAME = Unicycling Gorilla
 
 
 # *DOCUMENTATION*
 # *DOCUMENTATION*

+ 0 - 7
arch/Kconfig

@@ -319,13 +319,6 @@ config ARCH_WANT_OLD_COMPAT_IPC
 	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
 	select ARCH_WANT_COMPAT_IPC_PARSE_VERSION
 	bool
 	bool
 
 
-config HAVE_VIRT_TO_BUS
-	bool
-	help
-	  An architecture should select this if it implements the
-	  deprecated interface virt_to_bus().  All new architectures
-	  should probably not select this.
-
 config HAVE_ARCH_SECCOMP_FILTER
 config HAVE_ARCH_SECCOMP_FILTER
 	bool
 	bool
 	help
 	help

+ 1 - 1
arch/alpha/Kconfig

@@ -9,7 +9,7 @@ config ALPHA
 	select HAVE_PERF_EVENTS
 	select HAVE_PERF_EVENTS
 	select HAVE_DMA_ATTRS
 	select HAVE_DMA_ATTRS
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_PROBE
 	select AUTO_IRQ_AFFINITY if SMP
 	select AUTO_IRQ_AFFINITY if SMP
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW

+ 11 - 11
arch/arm/Kconfig

@@ -49,7 +49,6 @@ config ARM
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_REGS_AND_STACK_ACCESS_API
 	select HAVE_SYSCALL_TRACEPOINTS
 	select HAVE_SYSCALL_TRACEPOINTS
 	select HAVE_UID16
 	select HAVE_UID16
-	select HAVE_VIRT_TO_BUS
 	select KTIME_SCALAR
 	select KTIME_SCALAR
 	select PERF_USE_VMALLOC
 	select PERF_USE_VMALLOC
 	select RTC_LIB
 	select RTC_LIB
@@ -556,7 +555,6 @@ config ARCH_IXP4XX
 config ARCH_DOVE
 config ARCH_DOVE
 	bool "Marvell Dove"
 	bool "Marvell Dove"
 	select ARCH_REQUIRE_GPIOLIB
 	select ARCH_REQUIRE_GPIOLIB
-	select COMMON_CLK_DOVE
 	select CPU_V7
 	select CPU_V7
 	select GENERIC_CLOCKEVENTS
 	select GENERIC_CLOCKEVENTS
 	select MIGHT_HAVE_PCI
 	select MIGHT_HAVE_PCI
@@ -744,6 +742,7 @@ config ARCH_RPC
 	select NEED_MACH_IO_H
 	select NEED_MACH_IO_H
 	select NEED_MACH_MEMORY_H
 	select NEED_MACH_MEMORY_H
 	select NO_IOPORT
 	select NO_IOPORT
+	select VIRT_TO_BUS
 	help
 	help
 	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
 	  On the Acorn Risc-PC, Linux can support the internal IDE disk and
 	  CD-ROM interface, serial and parallel port, and the floppy drive.
 	  CD-ROM interface, serial and parallel port, and the floppy drive.
@@ -879,6 +878,7 @@ config ARCH_SHARK
 	select ISA_DMA
 	select ISA_DMA
 	select NEED_MACH_MEMORY_H
 	select NEED_MACH_MEMORY_H
 	select PCI
 	select PCI
+	select VIRT_TO_BUS
 	select ZONE_DMA
 	select ZONE_DMA
 	help
 	help
 	  Support for the StrongARM based Digital DNARD machine, also known
 	  Support for the StrongARM based Digital DNARD machine, also known
@@ -1006,12 +1006,12 @@ config ARCH_MULTI_V4_V5
 	bool
 	bool
 
 
 config ARCH_MULTI_V6
 config ARCH_MULTI_V6
-	bool "ARMv6 based platforms (ARM11, Scorpion, ...)"
+	bool "ARMv6 based platforms (ARM11)"
 	select ARCH_MULTI_V6_V7
 	select ARCH_MULTI_V6_V7
 	select CPU_V6
 	select CPU_V6
 
 
 config ARCH_MULTI_V7
 config ARCH_MULTI_V7
-	bool "ARMv7 based platforms (Cortex-A, PJ4, Krait)"
+	bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
 	default y
 	default y
 	select ARCH_MULTI_V6_V7
 	select ARCH_MULTI_V6_V7
 	select ARCH_VEXPRESS
 	select ARCH_VEXPRESS
@@ -1462,10 +1462,6 @@ config ISA_DMA
 	bool
 	bool
 	select ISA_DMA_API
 	select ISA_DMA_API
 
 
-config ARCH_NO_VIRT_TO_BUS
-	def_bool y
-	depends on !ARCH_RPC && !ARCH_NETWINDER && !ARCH_SHARK
-
 # Select ISA DMA interface
 # Select ISA DMA interface
 config ISA_DMA_API
 config ISA_DMA_API
 	bool
 	bool
@@ -1657,13 +1653,16 @@ config LOCAL_TIMERS
 	  accounting to be spread across the timer interval, preventing a
 	  accounting to be spread across the timer interval, preventing a
 	  "thundering herd" at every timer tick.
 	  "thundering herd" at every timer tick.
 
 
+# The GPIO number here must be sorted by descending number. In case of
+# a multiplatform kernel, we just want the highest value required by the
+# selected platforms.
 config ARCH_NR_GPIO
 config ARCH_NR_GPIO
 	int
 	int
 	default 1024 if ARCH_SHMOBILE || ARCH_TEGRA
 	default 1024 if ARCH_SHMOBILE || ARCH_TEGRA
-	default 355 if ARCH_U8500
-	default 264 if MACH_H4700
 	default 512 if SOC_OMAP5
 	default 512 if SOC_OMAP5
+	default 355 if ARCH_U8500
 	default 288 if ARCH_VT8500 || ARCH_SUNXI
 	default 288 if ARCH_VT8500 || ARCH_SUNXI
+	default 264 if MACH_H4700
 	default 0
 	default 0
 	help
 	help
 	  Maximum number of GPIOs in the system.
 	  Maximum number of GPIOs in the system.
@@ -1887,8 +1886,9 @@ config XEN_DOM0
 
 
 config XEN
 config XEN
 	bool "Xen guest support on ARM (EXPERIMENTAL)"
 	bool "Xen guest support on ARM (EXPERIMENTAL)"
-	depends on ARM && OF
+	depends on ARM && AEABI && OF
 	depends on CPU_V7 && !CPU_V6
 	depends on CPU_V7 && !CPU_V6
+	depends on !GENERIC_ATOMIC64
 	help
 	help
 	  Say Y if you want to run Linux in a Virtual Machine on Xen on ARM.
 	  Say Y if you want to run Linux in a Virtual Machine on Xen on ARM.
 
 

+ 1 - 1
arch/arm/Kconfig.debug

@@ -492,7 +492,7 @@ config DEBUG_IMX_UART_PORT
 						DEBUG_IMX31_UART || \
 						DEBUG_IMX31_UART || \
 						DEBUG_IMX35_UART || \
 						DEBUG_IMX35_UART || \
 						DEBUG_IMX51_UART || \
 						DEBUG_IMX51_UART || \
-						DEBUG_IMX50_IMX53_UART || \
+						DEBUG_IMX53_UART || \
 						DEBUG_IMX6Q_UART
 						DEBUG_IMX6Q_UART
 	default 1
 	default 1
 	help
 	help

+ 1 - 1
arch/arm/boot/Makefile

@@ -115,4 +115,4 @@ i:
 	$(CONFIG_SHELL) $(srctree)/$(src)/install.sh $(KERNELRELEASE) \
 	$(CONFIG_SHELL) $(srctree)/$(src)/install.sh $(KERNELRELEASE) \
 	$(obj)/Image System.map "$(INSTALL_PATH)"
 	$(obj)/Image System.map "$(INSTALL_PATH)"
 
 
-subdir-	    := bootp compressed
+subdir-	    := bootp compressed dts

+ 8 - 0
arch/arm/boot/dts/armada-370-rd.dts

@@ -64,5 +64,13 @@
 			status = "okay";
 			status = "okay";
 			/* No CD or WP GPIOs */
 			/* No CD or WP GPIOs */
 		};
 		};
+
+		usb@d0050000 {
+			status = "okay";
+		};
+
+		usb@d0051000 {
+			status = "okay";
+		};
 	};
 	};
 };
 };

+ 2 - 3
arch/arm/boot/dts/armada-370-xp.dtsi

@@ -31,7 +31,6 @@
 	mpic: interrupt-controller@d0020000 {
 	mpic: interrupt-controller@d0020000 {
 	      compatible = "marvell,mpic";
 	      compatible = "marvell,mpic";
 	      #interrupt-cells = <1>;
 	      #interrupt-cells = <1>;
-	      #address-cells = <1>;
 	      #size-cells = <1>;
 	      #size-cells = <1>;
 	      interrupt-controller;
 	      interrupt-controller;
 	};
 	};
@@ -54,7 +53,7 @@
 				reg = <0xd0012000 0x100>;
 				reg = <0xd0012000 0x100>;
 				reg-shift = <2>;
 				reg-shift = <2>;
 				interrupts = <41>;
 				interrupts = <41>;
-				reg-io-width = <4>;
+				reg-io-width = <1>;
 				status = "disabled";
 				status = "disabled";
 		};
 		};
 		serial@d0012100 {
 		serial@d0012100 {
@@ -62,7 +61,7 @@
 				reg = <0xd0012100 0x100>;
 				reg = <0xd0012100 0x100>;
 				reg-shift = <2>;
 				reg-shift = <2>;
 				interrupts = <42>;
 				interrupts = <42>;
-				reg-io-width = <4>;
+				reg-io-width = <1>;
 				status = "disabled";
 				status = "disabled";
 		};
 		};
 
 

+ 2 - 2
arch/arm/boot/dts/armada-xp.dtsi

@@ -46,7 +46,7 @@
 				reg = <0xd0012200 0x100>;
 				reg = <0xd0012200 0x100>;
 				reg-shift = <2>;
 				reg-shift = <2>;
 				interrupts = <43>;
 				interrupts = <43>;
-				reg-io-width = <4>;
+				reg-io-width = <1>;
 				status = "disabled";
 				status = "disabled";
 		};
 		};
 		serial@d0012300 {
 		serial@d0012300 {
@@ -54,7 +54,7 @@
 				reg = <0xd0012300 0x100>;
 				reg = <0xd0012300 0x100>;
 				reg-shift = <2>;
 				reg-shift = <2>;
 				interrupts = <44>;
 				interrupts = <44>;
-				reg-io-width = <4>;
+				reg-io-width = <1>;
 				status = "disabled";
 				status = "disabled";
 		};
 		};
 
 

+ 26 - 2
arch/arm/boot/dts/at91sam9x5.dtsi

@@ -238,8 +238,32 @@
 				nand {
 				nand {
 					pinctrl_nand: nand-0 {
 					pinctrl_nand: nand-0 {
 						atmel,pins =
 						atmel,pins =
-							<3 4 0x0 0x1	/* PD5 gpio RDY pin pull_up */
-							 3 5 0x0 0x1>;	/* PD4 gpio enable pin pull_up */
+							<3 0 0x1 0x0	/* PD0 periph A Read Enable */
+							 3 1 0x1 0x0	/* PD1 periph A Write Enable */
+							 3 2 0x1 0x0	/* PD2 periph A Address Latch Enable */
+							 3 3 0x1 0x0	/* PD3 periph A Command Latch Enable */
+							 3 4 0x0 0x1	/* PD4 gpio Chip Enable pin pull_up */
+							 3 5 0x0 0x1	/* PD5 gpio RDY/BUSY pin pull_up */
+							 3 6 0x1 0x0	/* PD6 periph A Data bit 0 */
+							 3 7 0x1 0x0	/* PD7 periph A Data bit 1 */
+							 3 8 0x1 0x0	/* PD8 periph A Data bit 2 */
+							 3 9 0x1 0x0	/* PD9 periph A Data bit 3 */
+							 3 10 0x1 0x0	/* PD10 periph A Data bit 4 */
+							 3 11 0x1 0x0	/* PD11 periph A Data bit 5 */
+							 3 12 0x1 0x0	/* PD12 periph A Data bit 6 */
+							 3 13 0x1 0x0>;	/* PD13 periph A Data bit 7 */
+					};
+
+					pinctrl_nand_16bits: nand_16bits-0 {
+						atmel,pins =
+							<3 14 0x1 0x0	/* PD14 periph A Data bit 8 */
+							 3 15 0x1 0x0	/* PD15 periph A Data bit 9 */
+							 3 16 0x1 0x0	/* PD16 periph A Data bit 10 */
+							 3 17 0x1 0x0	/* PD17 periph A Data bit 11 */
+							 3 18 0x1 0x0	/* PD18 periph A Data bit 12 */
+							 3 19 0x1 0x0	/* PD19 periph A Data bit 13 */
+							 3 20 0x1 0x0	/* PD20 periph A Data bit 14 */
+							 3 21 0x1 0x0>;	/* PD21 periph A Data bit 15 */
 					};
 					};
 				};
 				};
 
 

+ 1 - 1
arch/arm/boot/dts/bcm2835.dtsi

@@ -105,7 +105,7 @@
 			compatible = "fixed-clock";
 			compatible = "fixed-clock";
 			reg = <1>;
 			reg = <1>;
 			#clock-cells = <0>;
 			#clock-cells = <0>;
-			clock-frequency = <150000000>;
+			clock-frequency = <250000000>;
 		};
 		};
 	};
 	};
 };
 };

+ 1 - 2
arch/arm/boot/dts/dbx5x0.dtsi

@@ -319,9 +319,8 @@
 				};
 				};
 			};
 			};
 
 
-			ab8500@5 {
+			ab8500 {
 				compatible = "stericsson,ab8500";
 				compatible = "stericsson,ab8500";
-				reg = <5>; /* mailbox 5 is i2c */
 				interrupt-parent = <&intc>;
 				interrupt-parent = <&intc>;
 				interrupts = <0 40 0x4>;
 				interrupts = <0 40 0x4>;
 				interrupt-controller;
 				interrupt-controller;

+ 5 - 0
arch/arm/boot/dts/dove.dtsi

@@ -197,6 +197,11 @@
 			status = "disabled";
 			status = "disabled";
 		};
 		};
 
 
+		rtc@d8500 {
+			compatible = "marvell,orion-rtc";
+			reg = <0xd8500 0x20>;
+		};
+
 		crypto: crypto@30000 {
 		crypto: crypto@30000 {
 			compatible = "marvell,orion-crypto";
 			compatible = "marvell,orion-crypto";
 			reg = <0x30000 0x10000>,
 			reg = <0x30000 0x10000>,

+ 9 - 0
arch/arm/boot/dts/exynos4.dtsi

@@ -275,18 +275,27 @@
 			compatible = "arm,pl330", "arm,primecell";
 			compatible = "arm,pl330", "arm,primecell";
 			reg = <0x12680000 0x1000>;
 			reg = <0x12680000 0x1000>;
 			interrupts = <0 35 0>;
 			interrupts = <0 35 0>;
+			#dma-cells = <1>;
+			#dma-channels = <8>;
+			#dma-requests = <32>;
 		};
 		};
 
 
 		pdma1: pdma@12690000 {
 		pdma1: pdma@12690000 {
 			compatible = "arm,pl330", "arm,primecell";
 			compatible = "arm,pl330", "arm,primecell";
 			reg = <0x12690000 0x1000>;
 			reg = <0x12690000 0x1000>;
 			interrupts = <0 36 0>;
 			interrupts = <0 36 0>;
+			#dma-cells = <1>;
+			#dma-channels = <8>;
+			#dma-requests = <32>;
 		};
 		};
 
 
 		mdma1: mdma@12850000 {
 		mdma1: mdma@12850000 {
 			compatible = "arm,pl330", "arm,primecell";
 			compatible = "arm,pl330", "arm,primecell";
 			reg = <0x12850000 0x1000>;
 			reg = <0x12850000 0x1000>;
 			interrupts = <0 34 0>;
 			interrupts = <0 34 0>;
+			#dma-cells = <1>;
+			#dma-channels = <8>;
+			#dma-requests = <1>;
 		};
 		};
 	};
 	};
 };
 };

+ 6 - 0
arch/arm/boot/dts/exynos5440.dtsi

@@ -142,12 +142,18 @@
 			compatible = "arm,pl330", "arm,primecell";
 			compatible = "arm,pl330", "arm,primecell";
 			reg = <0x120000 0x1000>;
 			reg = <0x120000 0x1000>;
 			interrupts = <0 34 0>;
 			interrupts = <0 34 0>;
+			#dma-cells = <1>;
+			#dma-channels = <8>;
+			#dma-requests = <32>;
 		};
 		};
 
 
 		pdma1: pdma@121B0000 {
 		pdma1: pdma@121B0000 {
 			compatible = "arm,pl330", "arm,primecell";
 			compatible = "arm,pl330", "arm,primecell";
 			reg = <0x121000 0x1000>;
 			reg = <0x121000 0x1000>;
 			interrupts = <0 35 0>;
 			interrupts = <0 35 0>;
+			#dma-cells = <1>;
+			#dma-channels = <8>;
+			#dma-requests = <32>;
 		};
 		};
 	};
 	};
 
 

+ 1 - 1
arch/arm/boot/dts/href.dtsi

@@ -221,7 +221,7 @@
 				};
 				};
 			};
 			};
 
 
-			ab8500@5 {
+			ab8500 {
 				ab8500-regulators {
 				ab8500-regulators {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 						regulator-name = "V-DISPLAY";
 						regulator-name = "V-DISPLAY";

+ 1 - 1
arch/arm/boot/dts/hrefv60plus.dts

@@ -158,7 +158,7 @@
 				};
 				};
 			};
 			};
 
 
-			ab8500@5 {
+			ab8500 {
 				ab8500-regulators {
 				ab8500-regulators {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 						regulator-name = "V-DISPLAY";
 						regulator-name = "V-DISPLAY";

+ 1 - 2
arch/arm/boot/dts/imx53-mba53.dts

@@ -42,10 +42,9 @@
 			fsl,pins = <689 0x10000		/* DISP1_DRDY	*/
 			fsl,pins = <689 0x10000		/* DISP1_DRDY	*/
 				    482 0x10000		/* DISP1_HSYNC	*/
 				    482 0x10000		/* DISP1_HSYNC	*/
 				    489 0x10000		/* DISP1_VSYNC	*/
 				    489 0x10000		/* DISP1_VSYNC	*/
-				    684 0x10000		/* DISP1_DAT_0	*/
 				    515 0x10000		/* DISP1_DAT_22	*/
 				    515 0x10000		/* DISP1_DAT_22	*/
 				    523 0x10000		/* DISP1_DAT_23	*/
 				    523 0x10000		/* DISP1_DAT_23	*/
-				    543 0x10000		/* DISP1_DAT_21	*/
+				    545 0x10000		/* DISP1_DAT_21	*/
 				    553 0x10000		/* DISP1_DAT_20	*/
 				    553 0x10000		/* DISP1_DAT_20	*/
 				    558 0x10000		/* DISP1_DAT_19	*/
 				    558 0x10000		/* DISP1_DAT_19	*/
 				    564 0x10000		/* DISP1_DAT_18	*/
 				    564 0x10000		/* DISP1_DAT_18	*/

+ 0 - 2
arch/arm/boot/dts/kirkwood-dns320.dts

@@ -42,12 +42,10 @@
 
 
 	ocp@f1000000 {
 	ocp@f1000000 {
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <166666667>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 
 
 		serial@12100 {
 		serial@12100 {
-			clock-frequency = <166666667>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 	};
 	};

+ 0 - 1
arch/arm/boot/dts/kirkwood-dns325.dts

@@ -50,7 +50,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 	};
 	};

+ 0 - 1
arch/arm/boot/dts/kirkwood-dockstar.dts

@@ -37,7 +37,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-dreamplug.dts

@@ -38,7 +38,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-goflexnet.dts

@@ -73,7 +73,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-ib62x0.dts

@@ -51,7 +51,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-iconnect.dts

@@ -78,7 +78,6 @@
 			};
 			};
 		};
 		};
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-iomega_ix2_200.dts

@@ -115,7 +115,6 @@
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-km_kirkwood.dts

@@ -34,7 +34,6 @@
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-lschlv2.dts

@@ -13,7 +13,6 @@
 
 
 	ocp@f1000000 {
 	ocp@f1000000 {
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <166666667>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 	};
 	};

+ 0 - 1
arch/arm/boot/dts/kirkwood-lsxhl.dts

@@ -13,7 +13,6 @@
 
 
 	ocp@f1000000 {
 	ocp@f1000000 {
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 	};
 	};

+ 0 - 1
arch/arm/boot/dts/kirkwood-mplcec4.dts

@@ -90,7 +90,6 @@
                 };
                 };
 
 
                 serial@12000 {
                 serial@12000 {
-                        clock-frequency = <200000000>;
                         status = "ok";
                         status = "ok";
                 };
                 };
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-ns2-common.dtsi

@@ -23,7 +23,6 @@
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <166666667>;
 			status = "okay";
 			status = "okay";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-nsa310.dts

@@ -117,7 +117,6 @@
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 2
arch/arm/boot/dts/kirkwood-openblocks_a6.dts

@@ -18,12 +18,10 @@
 
 
 	ocp@f1000000 {
 	ocp@f1000000 {
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 
 		serial@12100 {
 		serial@12100 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 0 - 1
arch/arm/boot/dts/kirkwood-topkick.dts

@@ -108,7 +108,6 @@
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
-			clock-frequency = <200000000>;
 			status = "ok";
 			status = "ok";
 		};
 		};
 
 

+ 3 - 2
arch/arm/boot/dts/kirkwood.dtsi

@@ -38,6 +38,7 @@
 			interrupt-controller;
 			interrupt-controller;
 			#interrupt-cells = <2>;
 			#interrupt-cells = <2>;
 			interrupts = <35>, <36>, <37>, <38>;
 			interrupts = <35>, <36>, <37>, <38>;
+			clocks = <&gate_clk 7>;
 		};
 		};
 
 
 		gpio1: gpio@10140 {
 		gpio1: gpio@10140 {
@@ -49,6 +50,7 @@
 			interrupt-controller;
 			interrupt-controller;
 			#interrupt-cells = <2>;
 			#interrupt-cells = <2>;
 			interrupts = <39>, <40>, <41>;
 			interrupts = <39>, <40>, <41>;
+			clocks = <&gate_clk 7>;
 		};
 		};
 
 
 		serial@12000 {
 		serial@12000 {
@@ -57,7 +59,6 @@
 			reg-shift = <2>;
 			reg-shift = <2>;
 			interrupts = <33>;
 			interrupts = <33>;
 			clocks = <&gate_clk 7>;
 			clocks = <&gate_clk 7>;
-			/* set clock-frequency in board dts */
 			status = "disabled";
 			status = "disabled";
 		};
 		};
 
 
@@ -67,7 +68,6 @@
 			reg-shift = <2>;
 			reg-shift = <2>;
 			interrupts = <34>;
 			interrupts = <34>;
 			clocks = <&gate_clk 7>;
 			clocks = <&gate_clk 7>;
-			/* set clock-frequency in board dts */
 			status = "disabled";
 			status = "disabled";
 		};
 		};
 
 
@@ -75,6 +75,7 @@
 			compatible = "marvell,kirkwood-rtc", "marvell,orion-rtc";
 			compatible = "marvell,kirkwood-rtc", "marvell,orion-rtc";
 			reg = <0x10300 0x20>;
 			reg = <0x10300 0x20>;
 			interrupts = <53>;
 			interrupts = <53>;
+			clocks = <&gate_clk 7>;
 		};
 		};
 
 
 		spi@10600 {
 		spi@10600 {

+ 1 - 1
arch/arm/boot/dts/orion5x-lacie-ethernet-disk-mini-v2.dts

@@ -11,7 +11,7 @@
 
 
 / {
 / {
 	model = "LaCie Ethernet Disk mini V2";
 	model = "LaCie Ethernet Disk mini V2";
-	compatible = "lacie,ethernet-disk-mini-v2", "marvell-orion5x-88f5182", "marvell,orion5x";
+	compatible = "lacie,ethernet-disk-mini-v2", "marvell,orion5x-88f5182", "marvell,orion5x";
 
 
 	memory {
 	memory {
 		reg = <0x00000000 0x4000000>; /* 64 MB */
 		reg = <0x00000000 0x4000000>; /* 64 MB */

+ 1 - 1
arch/arm/boot/dts/snowball.dts

@@ -298,7 +298,7 @@
 				};
 				};
 			};
 			};
 
 
-			ab8500@5 {
+			ab8500 {
 				ab8500-regulators {
 				ab8500-regulators {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
 						regulator-name = "V-DISPLAY";
 						regulator-name = "V-DISPLAY";

+ 3 - 0
arch/arm/boot/dts/socfpga.dtsi

@@ -75,6 +75,9 @@
 				compatible = "arm,pl330", "arm,primecell";
 				compatible = "arm,pl330", "arm,primecell";
 				reg = <0xffe01000 0x1000>;
 				reg = <0xffe01000 0x1000>;
 				interrupts = <0 180 4>;
 				interrupts = <0 180 4>;
+				#dma-cells = <1>;
+				#dma-channels = <8>;
+				#dma-requests = <32>;
 			};
 			};
 		};
 		};
 
 

+ 1 - 0
arch/arm/boot/dts/tegra20.dtsi

@@ -118,6 +118,7 @@
 		compatible = "arm,cortex-a9-twd-timer";
 		compatible = "arm,cortex-a9-twd-timer";
 		reg = <0x50040600 0x20>;
 		reg = <0x50040600 0x20>;
 		interrupts = <1 13 0x304>;
 		interrupts = <1 13 0x304>;
+		clocks = <&tegra_car 132>;
 	};
 	};
 
 
 	intc: interrupt-controller {
 	intc: interrupt-controller {

+ 1 - 0
arch/arm/boot/dts/tegra30.dtsi

@@ -119,6 +119,7 @@
 		compatible = "arm,cortex-a9-twd-timer";
 		compatible = "arm,cortex-a9-twd-timer";
 		reg = <0x50040600 0x20>;
 		reg = <0x50040600 0x20>;
 		interrupts = <1 13 0xf04>;
 		interrupts = <1 13 0xf04>;
+		clocks = <&tegra_car 214>;
 	};
 	};
 
 
 	intc: interrupt-controller {
 	intc: interrupt-controller {

+ 1 - 0
arch/arm/configs/mxs_defconfig

@@ -116,6 +116,7 @@ CONFIG_SND_SOC=y
 CONFIG_SND_MXS_SOC=y
 CONFIG_SND_MXS_SOC=y
 CONFIG_SND_SOC_MXS_SGTL5000=y
 CONFIG_SND_SOC_MXS_SGTL5000=y
 CONFIG_USB=y
 CONFIG_USB=y
+CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_CHIPIDEA=y
 CONFIG_USB_CHIPIDEA=y
 CONFIG_USB_CHIPIDEA_HOST=y
 CONFIG_USB_CHIPIDEA_HOST=y
 CONFIG_USB_STORAGE=y
 CONFIG_USB_STORAGE=y

+ 2 - 0
arch/arm/configs/omap2plus_defconfig

@@ -126,6 +126,8 @@ CONFIG_INPUT_MISC=y
 CONFIG_INPUT_TWL4030_PWRBUTTON=y
 CONFIG_INPUT_TWL4030_PWRBUTTON=y
 CONFIG_VT_HW_CONSOLE_BINDING=y
 CONFIG_VT_HW_CONSOLE_BINDING=y
 # CONFIG_LEGACY_PTYS is not set
 # CONFIG_LEGACY_PTYS is not set
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_SERIAL_8250_NR_UARTS=32
 CONFIG_SERIAL_8250_NR_UARTS=32
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_EXTENDED=y
 CONFIG_SERIAL_8250_MANY_PORTS=y
 CONFIG_SERIAL_8250_MANY_PORTS=y

+ 4 - 21
arch/arm/include/asm/xen/events.h

@@ -2,6 +2,7 @@
 #define _ASM_ARM_XEN_EVENTS_H
 #define _ASM_ARM_XEN_EVENTS_H
 
 
 #include <asm/ptrace.h>
 #include <asm/ptrace.h>
+#include <asm/atomic.h>
 
 
 enum ipi_vector {
 enum ipi_vector {
 	XEN_PLACEHOLDER_VECTOR,
 	XEN_PLACEHOLDER_VECTOR,
@@ -15,26 +16,8 @@ static inline int xen_irqs_disabled(struct pt_regs *regs)
 	return raw_irqs_disabled_flags(regs->ARM_cpsr);
 	return raw_irqs_disabled_flags(regs->ARM_cpsr);
 }
 }
 
 
-/*
- * We cannot use xchg because it does not support 8-byte
- * values. However it is safe to use {ldr,dtd}exd directly because all
- * platforms which Xen can run on support those instructions.
- */
-static inline xen_ulong_t xchg_xen_ulong(xen_ulong_t *ptr, xen_ulong_t val)
-{
-	xen_ulong_t oldval;
-	unsigned int tmp;
-
-	wmb();
-	asm volatile("@ xchg_xen_ulong\n"
-		"1:     ldrexd  %0, %H0, [%3]\n"
-		"       strexd  %1, %2, %H2, [%3]\n"
-		"       teq     %1, #0\n"
-		"       bne     1b"
-		: "=&r" (oldval), "=&r" (tmp)
-		: "r" (val), "r" (ptr)
-		: "memory", "cc");
-	return oldval;
-}
+#define xchg_xen_ulong(ptr, val) atomic64_xchg(container_of((ptr),	\
+							    atomic64_t,	\
+							    counter), (val))
 
 
 #endif /* _ASM_ARM_XEN_EVENTS_H */
 #endif /* _ASM_ARM_XEN_EVENTS_H */

+ 1 - 1
arch/arm/kernel/smp.c

@@ -480,7 +480,7 @@ static void __cpuinit broadcast_timer_setup(struct clock_event_device *evt)
 	evt->features	= CLOCK_EVT_FEAT_ONESHOT |
 	evt->features	= CLOCK_EVT_FEAT_ONESHOT |
 			  CLOCK_EVT_FEAT_PERIODIC |
 			  CLOCK_EVT_FEAT_PERIODIC |
 			  CLOCK_EVT_FEAT_DUMMY;
 			  CLOCK_EVT_FEAT_DUMMY;
-	evt->rating	= 400;
+	evt->rating	= 100;
 	evt->mult	= 1;
 	evt->mult	= 1;
 	evt->set_mode	= broadcast_timer_set_mode;
 	evt->set_mode	= broadcast_timer_set_mode;
 
 

+ 13 - 20
arch/arm/lib/memset.S

@@ -14,31 +14,15 @@
 
 
 	.text
 	.text
 	.align	5
 	.align	5
-	.word	0
-
-1:	subs	r2, r2, #4		@ 1 do we have enough
-	blt	5f			@ 1 bytes to align with?
-	cmp	r3, #2			@ 1
-	strltb	r1, [ip], #1		@ 1
-	strleb	r1, [ip], #1		@ 1
-	strb	r1, [ip], #1		@ 1
-	add	r2, r2, r3		@ 1 (r2 = r2 - (4 - r3))
-/*
- * The pointer is now aligned and the length is adjusted.  Try doing the
- * memset again.
- */
 
 
 ENTRY(memset)
 ENTRY(memset)
-/*
- * Preserve the contents of r0 for the return value.
- */
-	mov	ip, r0
-	ands	r3, ip, #3		@ 1 unaligned?
-	bne	1b			@ 1
+	ands	r3, r0, #3		@ 1 unaligned?
+	mov	ip, r0			@ preserve r0 as return value
+	bne	6f			@ 1
 /*
 /*
  * we know that the pointer in ip is aligned to a word boundary.
  * we know that the pointer in ip is aligned to a word boundary.
  */
  */
-	orr	r1, r1, r1, lsl #8
+1:	orr	r1, r1, r1, lsl #8
 	orr	r1, r1, r1, lsl #16
 	orr	r1, r1, r1, lsl #16
 	mov	r3, r1
 	mov	r3, r1
 	cmp	r2, #16
 	cmp	r2, #16
@@ -127,4 +111,13 @@ ENTRY(memset)
 	tst	r2, #1
 	tst	r2, #1
 	strneb	r1, [ip], #1
 	strneb	r1, [ip], #1
 	mov	pc, lr
 	mov	pc, lr
+
+6:	subs	r2, r2, #4		@ 1 do we have enough
+	blt	5b			@ 1 bytes to align with?
+	cmp	r3, #2			@ 1
+	strltb	r1, [ip], #1		@ 1
+	strleb	r1, [ip], #1		@ 1
+	strb	r1, [ip], #1		@ 1
+	add	r2, r2, r3		@ 1 (r2 = r2 - (4 - r3))
+	b	1b
 ENDPROC(memset)
 ENDPROC(memset)

+ 1 - 0
arch/arm/mach-at91/board-foxg20.c

@@ -176,6 +176,7 @@ static struct w1_gpio_platform_data w1_gpio_pdata = {
 	/* If you choose to use a pin other than PB16 it needs to be 3.3V */
 	/* If you choose to use a pin other than PB16 it needs to be 3.3V */
 	.pin		= AT91_PIN_PB16,
 	.pin		= AT91_PIN_PB16,
 	.is_open_drain  = 1,
 	.is_open_drain  = 1,
+	.ext_pullup_enable_pin	= -EINVAL,
 };
 };
 
 
 static struct platform_device w1_device = {
 static struct platform_device w1_device = {

+ 1 - 0
arch/arm/mach-at91/board-stamp9g20.c

@@ -188,6 +188,7 @@ static struct spi_board_info portuxg20_spi_devices[] = {
 static struct w1_gpio_platform_data w1_gpio_pdata = {
 static struct w1_gpio_platform_data w1_gpio_pdata = {
 	.pin		= AT91_PIN_PA29,
 	.pin		= AT91_PIN_PA29,
 	.is_open_drain	= 1,
 	.is_open_drain	= 1,
+	.ext_pullup_enable_pin	= -EINVAL,
 };
 };
 
 
 static struct platform_device w1_device = {
 static struct platform_device w1_device = {

+ 8 - 0
arch/arm/mach-at91/include/mach/gpio.h

@@ -209,6 +209,14 @@ extern int at91_get_gpio_value(unsigned pin);
 extern void at91_gpio_suspend(void);
 extern void at91_gpio_suspend(void);
 extern void at91_gpio_resume(void);
 extern void at91_gpio_resume(void);
 
 
+#ifdef CONFIG_PINCTRL_AT91
+extern void at91_pinctrl_gpio_suspend(void);
+extern void at91_pinctrl_gpio_resume(void);
+#else
+static inline void at91_pinctrl_gpio_suspend(void) {}
+static inline void at91_pinctrl_gpio_resume(void) {}
+#endif
+
 #endif	/* __ASSEMBLY__ */
 #endif	/* __ASSEMBLY__ */
 
 
 #endif
 #endif

+ 8 - 12
arch/arm/mach-at91/irq.c

@@ -92,23 +92,21 @@ static int at91_aic_set_wake(struct irq_data *d, unsigned value)
 
 
 void at91_irq_suspend(void)
 void at91_irq_suspend(void)
 {
 {
-	int i = 0, bit;
+	int bit = -1;
 
 
 	if (has_aic5()) {
 	if (has_aic5()) {
 		/* disable enabled irqs */
 		/* disable enabled irqs */
-		while ((bit = find_next_bit(backups, n_irqs, i)) < n_irqs) {
+		while ((bit = find_next_bit(backups, n_irqs, bit + 1)) < n_irqs) {
 			at91_aic_write(AT91_AIC5_SSR,
 			at91_aic_write(AT91_AIC5_SSR,
 				       bit & AT91_AIC5_INTSEL_MSK);
 				       bit & AT91_AIC5_INTSEL_MSK);
 			at91_aic_write(AT91_AIC5_IDCR, 1);
 			at91_aic_write(AT91_AIC5_IDCR, 1);
-			i = bit;
 		}
 		}
 		/* enable wakeup irqs */
 		/* enable wakeup irqs */
-		i = 0;
-		while ((bit = find_next_bit(wakeups, n_irqs, i)) < n_irqs) {
+		bit = -1;
+		while ((bit = find_next_bit(wakeups, n_irqs, bit + 1)) < n_irqs) {
 			at91_aic_write(AT91_AIC5_SSR,
 			at91_aic_write(AT91_AIC5_SSR,
 				       bit & AT91_AIC5_INTSEL_MSK);
 				       bit & AT91_AIC5_INTSEL_MSK);
 			at91_aic_write(AT91_AIC5_IECR, 1);
 			at91_aic_write(AT91_AIC5_IECR, 1);
-			i = bit;
 		}
 		}
 	} else {
 	} else {
 		at91_aic_write(AT91_AIC_IDCR, *backups);
 		at91_aic_write(AT91_AIC_IDCR, *backups);
@@ -118,23 +116,21 @@ void at91_irq_suspend(void)
 
 
 void at91_irq_resume(void)
 void at91_irq_resume(void)
 {
 {
-	int i = 0, bit;
+	int bit = -1;
 
 
 	if (has_aic5()) {
 	if (has_aic5()) {
 		/* disable wakeup irqs */
 		/* disable wakeup irqs */
-		while ((bit = find_next_bit(wakeups, n_irqs, i)) < n_irqs) {
+		while ((bit = find_next_bit(wakeups, n_irqs, bit + 1)) < n_irqs) {
 			at91_aic_write(AT91_AIC5_SSR,
 			at91_aic_write(AT91_AIC5_SSR,
 				       bit & AT91_AIC5_INTSEL_MSK);
 				       bit & AT91_AIC5_INTSEL_MSK);
 			at91_aic_write(AT91_AIC5_IDCR, 1);
 			at91_aic_write(AT91_AIC5_IDCR, 1);
-			i = bit;
 		}
 		}
 		/* enable irqs disabled for suspend */
 		/* enable irqs disabled for suspend */
-		i = 0;
-		while ((bit = find_next_bit(backups, n_irqs, i)) < n_irqs) {
+		bit = -1;
+		while ((bit = find_next_bit(backups, n_irqs, bit + 1)) < n_irqs) {
 			at91_aic_write(AT91_AIC5_SSR,
 			at91_aic_write(AT91_AIC5_SSR,
 				       bit & AT91_AIC5_INTSEL_MSK);
 				       bit & AT91_AIC5_INTSEL_MSK);
 			at91_aic_write(AT91_AIC5_IECR, 1);
 			at91_aic_write(AT91_AIC5_IECR, 1);
-			i = bit;
 		}
 		}
 	} else {
 	} else {
 		at91_aic_write(AT91_AIC_IDCR, *wakeups);
 		at91_aic_write(AT91_AIC_IDCR, *wakeups);

+ 8 - 2
arch/arm/mach-at91/pm.c

@@ -201,7 +201,10 @@ extern u32 at91_slow_clock_sz;
 
 
 static int at91_pm_enter(suspend_state_t state)
 static int at91_pm_enter(suspend_state_t state)
 {
 {
-	at91_gpio_suspend();
+	if (of_have_populated_dt())
+		at91_pinctrl_gpio_suspend();
+	else
+		at91_gpio_suspend();
 	at91_irq_suspend();
 	at91_irq_suspend();
 
 
 	pr_debug("AT91: PM - wake mask %08x, pm state %d\n",
 	pr_debug("AT91: PM - wake mask %08x, pm state %d\n",
@@ -286,7 +289,10 @@ static int at91_pm_enter(suspend_state_t state)
 error:
 error:
 	target_state = PM_SUSPEND_ON;
 	target_state = PM_SUSPEND_ON;
 	at91_irq_resume();
 	at91_irq_resume();
-	at91_gpio_resume();
+	if (of_have_populated_dt())
+		at91_pinctrl_gpio_resume();
+	else
+		at91_gpio_resume();
 	return 0;
 	return 0;
 }
 }
 
 

+ 3 - 0
arch/arm/mach-davinci/dma.c

@@ -743,6 +743,9 @@ EXPORT_SYMBOL(edma_free_channel);
  */
  */
 int edma_alloc_slot(unsigned ctlr, int slot)
 int edma_alloc_slot(unsigned ctlr, int slot)
 {
 {
+	if (!edma_cc[ctlr])
+		return -EINVAL;
+
 	if (slot >= 0)
 	if (slot >= 0)
 		slot = EDMA_CHAN_SLOT(slot);
 		slot = EDMA_CHAN_SLOT(slot);
 
 

+ 1 - 0
arch/arm/mach-footbridge/Kconfig

@@ -67,6 +67,7 @@ config ARCH_NETWINDER
 	select ISA
 	select ISA
 	select ISA_DMA
 	select ISA_DMA
 	select PCI
 	select PCI
+	select VIRT_TO_BUS
 	help
 	help
 	  Say Y here if you intend to run this kernel on the Rebel.COM
 	  Say Y here if you intend to run this kernel on the Rebel.COM
 	  NetWinder.  Information about this machine can be found at:
 	  NetWinder.  Information about this machine can be found at:

+ 1 - 0
arch/arm/mach-imx/clk-imx35.c

@@ -264,6 +264,7 @@ int __init mx35_clocks_init(void)
 	clk_prepare_enable(clk[gpio3_gate]);
 	clk_prepare_enable(clk[gpio3_gate]);
 	clk_prepare_enable(clk[iim_gate]);
 	clk_prepare_enable(clk[iim_gate]);
 	clk_prepare_enable(clk[emi_gate]);
 	clk_prepare_enable(clk[emi_gate]);
+	clk_prepare_enable(clk[max_gate]);
 
 
 	/*
 	/*
 	 * SCC is needed to boot via mmc after a watchdog reset. The clock code
 	 * SCC is needed to boot via mmc after a watchdog reset. The clock code

+ 1 - 1
arch/arm/mach-imx/clk-imx6q.c

@@ -172,7 +172,7 @@ static struct clk *clk[clk_max];
 static struct clk_onecell_data clk_data;
 static struct clk_onecell_data clk_data;
 
 
 static enum mx6q_clks const clks_init_on[] __initconst = {
 static enum mx6q_clks const clks_init_on[] __initconst = {
-	mmdc_ch0_axi, rom,
+	mmdc_ch0_axi, rom, pll1_sys,
 };
 };
 
 
 static struct clk_div_table clk_enet_ref_table[] = {
 static struct clk_div_table clk_enet_ref_table[] = {

+ 9 - 9
arch/arm/mach-imx/headsmp.S

@@ -26,16 +26,16 @@ ENDPROC(v7_secondary_startup)
 
 
 #ifdef CONFIG_PM
 #ifdef CONFIG_PM
 /*
 /*
- * The following code is located into the .data section.  This is to
- * allow phys_l2x0_saved_regs to be accessed with a relative load
- * as we are running on physical address here.
+ * The following code must assume it is running from physical address
+ * where absolute virtual addresses to the data section have to be
+ * turned into relative ones.
  */
  */
-	.data
-	.align
 
 
 #ifdef CONFIG_CACHE_L2X0
 #ifdef CONFIG_CACHE_L2X0
 	.macro	pl310_resume
 	.macro	pl310_resume
-	ldr	r2, phys_l2x0_saved_regs
+	adr	r0, l2x0_saved_regs_offset
+	ldr	r2, [r0]
+	add	r2, r2, r0
 	ldr	r0, [r2, #L2X0_R_PHY_BASE]	@ get physical base of l2x0
 	ldr	r0, [r2, #L2X0_R_PHY_BASE]	@ get physical base of l2x0
 	ldr	r1, [r2, #L2X0_R_AUX_CTRL]	@ get aux_ctrl value
 	ldr	r1, [r2, #L2X0_R_AUX_CTRL]	@ get aux_ctrl value
 	str	r1, [r0, #L2X0_AUX_CTRL]	@ restore aux_ctrl
 	str	r1, [r0, #L2X0_AUX_CTRL]	@ restore aux_ctrl
@@ -43,9 +43,9 @@ ENDPROC(v7_secondary_startup)
 	str	r1, [r0, #L2X0_CTRL]		@ re-enable L2
 	str	r1, [r0, #L2X0_CTRL]		@ re-enable L2
 	.endm
 	.endm
 
 
-	.globl	phys_l2x0_saved_regs
-phys_l2x0_saved_regs:
-        .long   0
+l2x0_saved_regs_offset:
+	.word	l2x0_saved_regs - .
+
 #else
 #else
 	.macro	pl310_resume
 	.macro	pl310_resume
 	.endm
 	.endm

+ 5 - 0
arch/arm/mach-imx/imx25-dt.c

@@ -27,6 +27,11 @@ static const char * const imx25_dt_board_compat[] __initconst = {
 	NULL
 	NULL
 };
 };
 
 
+static void __init imx25_timer_init(void)
+{
+	mx25_clocks_init_dt();
+}
+
 DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)")
 DT_MACHINE_START(IMX25_DT, "Freescale i.MX25 (Device Tree Support)")
 	.map_io		= mx25_map_io,
 	.map_io		= mx25_map_io,
 	.init_early	= imx25_init_early,
 	.init_early	= imx25_init_early,

+ 0 - 15
arch/arm/mach-imx/pm-imx6q.c

@@ -22,8 +22,6 @@
 #include "common.h"
 #include "common.h"
 #include "hardware.h"
 #include "hardware.h"
 
 
-extern unsigned long phys_l2x0_saved_regs;
-
 static int imx6q_suspend_finish(unsigned long val)
 static int imx6q_suspend_finish(unsigned long val)
 {
 {
 	cpu_do_idle();
 	cpu_do_idle();
@@ -57,18 +55,5 @@ static const struct platform_suspend_ops imx6q_pm_ops = {
 
 
 void __init imx6q_pm_init(void)
 void __init imx6q_pm_init(void)
 {
 {
-	/*
-	 * The l2x0 core code provides an infrastucture to save and restore
-	 * l2x0 registers across suspend/resume cycle.  But because imx6q
-	 * retains L2 content during suspend and needs to resume L2 before
-	 * MMU is enabled, it can only utilize register saving support and
-	 * have to take care of restoring on its own.  So we save physical
-	 * address of the data structure used by l2x0 core to save registers,
-	 * and later restore the necessary ones in imx6q resume entry.
-	 */
-#ifdef CONFIG_CACHE_L2X0
-	phys_l2x0_saved_regs = __pa(&l2x0_saved_regs);
-#endif
-
 	suspend_set_ops(&imx6q_pm_ops);
 	suspend_set_ops(&imx6q_pm_ops);
 }
 }

+ 1 - 0
arch/arm/mach-ixp4xx/vulcan-setup.c

@@ -163,6 +163,7 @@ static struct platform_device vulcan_max6369 = {
 
 
 static struct w1_gpio_platform_data vulcan_w1_gpio_pdata = {
 static struct w1_gpio_platform_data vulcan_w1_gpio_pdata = {
 	.pin			= 14,
 	.pin			= 14,
+	.ext_pullup_enable_pin	= -EINVAL,
 };
 };
 
 
 static struct platform_device vulcan_w1_gpio = {
 static struct platform_device vulcan_w1_gpio = {

+ 18 - 7
arch/arm/mach-kirkwood/board-dt.c

@@ -41,16 +41,12 @@ static void __init kirkwood_legacy_clk_init(void)
 
 
 	struct device_node *np = of_find_compatible_node(
 	struct device_node *np = of_find_compatible_node(
 		NULL, NULL, "marvell,kirkwood-gating-clock");
 		NULL, NULL, "marvell,kirkwood-gating-clock");
-
 	struct of_phandle_args clkspec;
 	struct of_phandle_args clkspec;
+	struct clk *clk;
 
 
 	clkspec.np = np;
 	clkspec.np = np;
 	clkspec.args_count = 1;
 	clkspec.args_count = 1;
 
 
-	clkspec.args[0] = CGC_BIT_GE0;
-	orion_clkdev_add(NULL, "mv643xx_eth_port.0",
-			 of_clk_get_from_provider(&clkspec));
-
 	clkspec.args[0] = CGC_BIT_PEX0;
 	clkspec.args[0] = CGC_BIT_PEX0;
 	orion_clkdev_add("0", "pcie",
 	orion_clkdev_add("0", "pcie",
 			 of_clk_get_from_provider(&clkspec));
 			 of_clk_get_from_provider(&clkspec));
@@ -59,9 +55,24 @@ static void __init kirkwood_legacy_clk_init(void)
 	orion_clkdev_add("1", "pcie",
 	orion_clkdev_add("1", "pcie",
 			 of_clk_get_from_provider(&clkspec));
 			 of_clk_get_from_provider(&clkspec));
 
 
-	clkspec.args[0] = CGC_BIT_GE1;
-	orion_clkdev_add(NULL, "mv643xx_eth_port.1",
+	clkspec.args[0] = CGC_BIT_SDIO;
+	orion_clkdev_add(NULL, "mvsdio",
 			 of_clk_get_from_provider(&clkspec));
 			 of_clk_get_from_provider(&clkspec));
+
+	/*
+	 * The ethernet interfaces forget the MAC address assigned by
+	 * u-boot if the clocks are turned off. Until proper DT support
+	 * is available we always enable them for now.
+	 */
+	clkspec.args[0] = CGC_BIT_GE0;
+	clk = of_clk_get_from_provider(&clkspec);
+	orion_clkdev_add(NULL, "mv643xx_eth_port.0", clk);
+	clk_prepare_enable(clk);
+
+	clkspec.args[0] = CGC_BIT_GE1;
+	clk = of_clk_get_from_provider(&clkspec);
+	orion_clkdev_add(NULL, "mv643xx_eth_port.1", clk);
+	clk_prepare_enable(clk);
 }
 }
 
 
 static void __init kirkwood_of_clk_init(void)
 static void __init kirkwood_of_clk_init(void)

+ 1 - 0
arch/arm/mach-mmp/gplugd.c

@@ -9,6 +9,7 @@
  */
  */
 
 
 #include <linux/init.h>
 #include <linux/init.h>
+#include <linux/platform_device.h>
 #include <linux/gpio.h>
 #include <linux/gpio.h>
 
 
 #include <asm/mach/arch.h>
 #include <asm/mach/arch.h>

+ 1 - 1
arch/arm/mach-mxs/icoll.c

@@ -100,7 +100,7 @@ static struct irq_domain_ops icoll_irq_domain_ops = {
 	.xlate = irq_domain_xlate_onecell,
 	.xlate = irq_domain_xlate_onecell,
 };
 };
 
 
-void __init icoll_of_init(struct device_node *np,
+static void __init icoll_of_init(struct device_node *np,
 			  struct device_node *interrupt_parent)
 			  struct device_node *interrupt_parent)
 {
 {
 	/*
 	/*

+ 5 - 5
arch/arm/mach-mxs/mach-mxs.c

@@ -402,17 +402,17 @@ static void __init cfa10049_init(void)
 {
 {
 	enable_clk_enet_out();
 	enable_clk_enet_out();
 	update_fec_mac_prop(OUI_CRYSTALFONTZ);
 	update_fec_mac_prop(OUI_CRYSTALFONTZ);
+
+	mxsfb_pdata.mode_list = cfa10049_video_modes;
+	mxsfb_pdata.mode_count = ARRAY_SIZE(cfa10049_video_modes);
+	mxsfb_pdata.default_bpp = 32;
+	mxsfb_pdata.ld_intf_width = STMLCDIF_18BIT;
 }
 }
 
 
 static void __init cfa10037_init(void)
 static void __init cfa10037_init(void)
 {
 {
 	enable_clk_enet_out();
 	enable_clk_enet_out();
 	update_fec_mac_prop(OUI_CRYSTALFONTZ);
 	update_fec_mac_prop(OUI_CRYSTALFONTZ);
-
-	mxsfb_pdata.mode_list = cfa10049_video_modes;
-	mxsfb_pdata.mode_count = ARRAY_SIZE(cfa10049_video_modes);
-	mxsfb_pdata.default_bpp = 32;
-	mxsfb_pdata.ld_intf_width = STMLCDIF_18BIT;
 }
 }
 
 
 static void __init apf28_init(void)
 static void __init apf28_init(void)

+ 1 - 0
arch/arm/mach-mxs/mm.c

@@ -18,6 +18,7 @@
 
 
 #include <mach/mx23.h>
 #include <mach/mx23.h>
 #include <mach/mx28.h>
 #include <mach/mx28.h>
+#include <mach/common.h>
 
 
 /*
 /*
  * Define the MX23 memory map.
  * Define the MX23 memory map.

+ 1 - 0
arch/arm/mach-mxs/ocotp.c

@@ -19,6 +19,7 @@
 #include <asm/processor.h>	/* for cpu_relax() */
 #include <asm/processor.h>	/* for cpu_relax() */
 
 
 #include <mach/mxs.h>
 #include <mach/mxs.h>
+#include <mach/common.h>
 
 
 #define OCOTP_WORD_OFFSET		0x20
 #define OCOTP_WORD_OFFSET		0x20
 #define OCOTP_WORD_COUNT		0x20
 #define OCOTP_WORD_COUNT		0x20

+ 2 - 0
arch/arm/mach-omap1/common.h

@@ -31,6 +31,8 @@
 
 
 #include <plat/i2c.h>
 #include <plat/i2c.h>
 
 
+#include <mach/irqs.h>
+
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)
 #if defined(CONFIG_ARCH_OMAP730) || defined(CONFIG_ARCH_OMAP850)
 void omap7xx_map_io(void);
 void omap7xx_map_io(void);
 #else
 #else

+ 0 - 6
arch/arm/mach-omap2/Kconfig

@@ -311,9 +311,6 @@ config MACH_OMAP_ZOOM2
 	default y
 	default y
 	select OMAP_PACKAGE_CBB
 	select OMAP_PACKAGE_CBB
 	select REGULATOR_FIXED_VOLTAGE if REGULATOR
 	select REGULATOR_FIXED_VOLTAGE if REGULATOR
-	select SERIAL_8250
-	select SERIAL_8250_CONSOLE
-	select SERIAL_CORE_CONSOLE
 
 
 config MACH_OMAP_ZOOM3
 config MACH_OMAP_ZOOM3
 	bool "OMAP3630 Zoom3 board"
 	bool "OMAP3630 Zoom3 board"
@@ -321,9 +318,6 @@ config MACH_OMAP_ZOOM3
 	default y
 	default y
 	select OMAP_PACKAGE_CBP
 	select OMAP_PACKAGE_CBP
 	select REGULATOR_FIXED_VOLTAGE if REGULATOR
 	select REGULATOR_FIXED_VOLTAGE if REGULATOR
-	select SERIAL_8250
-	select SERIAL_8250_CONSOLE
-	select SERIAL_CORE_CONSOLE
 
 
 config MACH_CM_T35
 config MACH_CM_T35
 	bool "CompuLab CM-T35/CM-T3730 modules"
 	bool "CompuLab CM-T35/CM-T3730 modules"

+ 2 - 0
arch/arm/mach-omap2/board-generic.c

@@ -102,6 +102,7 @@ DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)")
 	.init_irq	= omap_intc_of_init,
 	.init_irq	= omap_intc_of_init,
 	.handle_irq	= omap3_intc_handle_irq,
 	.handle_irq	= omap3_intc_handle_irq,
 	.init_machine	= omap_generic_init,
 	.init_machine	= omap_generic_init,
+	.init_late	= omap3_init_late,
 	.init_time	= omap3_sync32k_timer_init,
 	.init_time	= omap3_sync32k_timer_init,
 	.dt_compat	= omap3_boards_compat,
 	.dt_compat	= omap3_boards_compat,
 	.restart	= omap3xxx_restart,
 	.restart	= omap3xxx_restart,
@@ -119,6 +120,7 @@ DT_MACHINE_START(OMAP3_GP_DT, "Generic OMAP3-GP (Flattened Device Tree)")
 	.init_irq	= omap_intc_of_init,
 	.init_irq	= omap_intc_of_init,
 	.handle_irq	= omap3_intc_handle_irq,
 	.handle_irq	= omap3_intc_handle_irq,
 	.init_machine	= omap_generic_init,
 	.init_machine	= omap_generic_init,
+	.init_late	= omap3_init_late,
 	.init_time	= omap3_secure_sync32k_timer_init,
 	.init_time	= omap3_secure_sync32k_timer_init,
 	.dt_compat	= omap3_gp_boards_compat,
 	.dt_compat	= omap3_gp_boards_compat,
 	.restart	= omap3xxx_restart,
 	.restart	= omap3xxx_restart,

+ 2 - 0
arch/arm/mach-omap2/board-rx51.c

@@ -17,6 +17,7 @@
 #include <linux/io.h>
 #include <linux/io.h>
 #include <linux/gpio.h>
 #include <linux/gpio.h>
 #include <linux/leds.h>
 #include <linux/leds.h>
+#include <linux/usb/phy.h>
 #include <linux/usb/musb.h>
 #include <linux/usb/musb.h>
 #include <linux/platform_data/spi-omap2-mcspi.h>
 #include <linux/platform_data/spi-omap2-mcspi.h>
 
 
@@ -98,6 +99,7 @@ static void __init rx51_init(void)
 	sdrc_params = nokia_get_sdram_timings();
 	sdrc_params = nokia_get_sdram_timings();
 	omap_sdrc_init(sdrc_params, sdrc_params);
 	omap_sdrc_init(sdrc_params, sdrc_params);
 
 
+	usb_bind_phy("musb-hdrc.0.auto", 0, "twl4030_usb");
 	usb_musb_init(&musb_board_data);
 	usb_musb_init(&musb_board_data);
 	rx51_peripherals_init();
 	rx51_peripherals_init();
 
 

+ 0 - 1
arch/arm/mach-omap2/common.h

@@ -108,7 +108,6 @@ void omap35xx_init_late(void);
 void omap3630_init_late(void);
 void omap3630_init_late(void);
 void am35xx_init_late(void);
 void am35xx_init_late(void);
 void ti81xx_init_late(void);
 void ti81xx_init_late(void);
-void omap4430_init_late(void);
 int omap2_common_pm_late_init(void);
 int omap2_common_pm_late_init(void);
 
 
 #if defined(CONFIG_SOC_OMAP2420) || defined(CONFIG_SOC_OMAP2430)
 #if defined(CONFIG_SOC_OMAP2420) || defined(CONFIG_SOC_OMAP2430)

+ 3 - 3
arch/arm/mach-omap2/gpmc.c

@@ -1122,9 +1122,6 @@ int gpmc_calc_timings(struct gpmc_timings *gpmc_t,
 	/* TODO: remove, see function definition */
 	/* TODO: remove, see function definition */
 	gpmc_convert_ps_to_ns(gpmc_t);
 	gpmc_convert_ps_to_ns(gpmc_t);
 
 
-	/* Now the GPMC is initialised, unreserve the chip-selects */
-	gpmc_cs_map = 0;
-
 	return 0;
 	return 0;
 }
 }
 
 
@@ -1383,6 +1380,9 @@ static int gpmc_probe(struct platform_device *pdev)
 	if (IS_ERR_VALUE(gpmc_setup_irq()))
 	if (IS_ERR_VALUE(gpmc_setup_irq()))
 		dev_warn(gpmc_dev, "gpmc_setup_irq failed\n");
 		dev_warn(gpmc_dev, "gpmc_setup_irq failed\n");
 
 
+	/* Now the GPMC is initialised, unreserve the chip-selects */
+	gpmc_cs_map = 0;
+
 	rc = gpmc_probe_dt(pdev);
 	rc = gpmc_probe_dt(pdev);
 	if (rc < 0) {
 	if (rc < 0) {
 		clk_disable_unprepare(gpmc_l3_clk);
 		clk_disable_unprepare(gpmc_l3_clk);

+ 5 - 4
arch/arm/mach-omap2/mux.c

@@ -211,8 +211,6 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition,
 		return -EINVAL;
 		return -EINVAL;
 	}
 	}
 
 
-	pr_err("%s: Could not find signal %s\n", __func__, muxname);
-
 	return -ENODEV;
 	return -ENODEV;
 }
 }
 
 
@@ -234,6 +232,8 @@ int __init omap_mux_get_by_name(const char *muxname,
 		return mux_mode;
 		return mux_mode;
 	}
 	}
 
 
+	pr_err("%s: Could not find signal %s\n", __func__, muxname);
+
 	return -ENODEV;
 	return -ENODEV;
 }
 }
 
 
@@ -739,8 +739,9 @@ static void __init omap_mux_dbg_create_entry(
 	list_for_each_entry(e, &partition->muxmodes, node) {
 	list_for_each_entry(e, &partition->muxmodes, node) {
 		struct omap_mux *m = &e->mux;
 		struct omap_mux *m = &e->mux;
 
 
-		(void)debugfs_create_file(m->muxnames[0], S_IWUSR, mux_dbg_dir,
-					  m, &omap_mux_dbg_signal_fops);
+		(void)debugfs_create_file(m->muxnames[0], S_IWUSR | S_IRUGO,
+					  mux_dbg_dir, m,
+					  &omap_mux_dbg_signal_fops);
 	}
 	}
 }
 }
 
 

+ 1 - 0
arch/arm/mach-pxa/raumfeld.c

@@ -505,6 +505,7 @@ static struct w1_gpio_platform_data w1_gpio_platform_data = {
 	.pin			= GPIO_ONE_WIRE,
 	.pin			= GPIO_ONE_WIRE,
 	.is_open_drain		= 0,
 	.is_open_drain		= 0,
 	.enable_external_pullup	= w1_enable_external_pullup,
 	.enable_external_pullup	= w1_enable_external_pullup,
+	.ext_pullup_enable_pin	= -EINVAL,
 };
 };
 
 
 struct platform_device raumfeld_w1_gpio_device = {
 struct platform_device raumfeld_w1_gpio_device = {

+ 18 - 18
arch/arm/mach-s5pv210/clock.c

@@ -214,11 +214,6 @@ static struct clk clk_pcmcdclk2 = {
 	.name		= "pcmcdclk",
 	.name		= "pcmcdclk",
 };
 };
 
 
-static struct clk dummy_apb_pclk = {
-	.name		= "apb_pclk",
-	.id		= -1,
-};
-
 static struct clk *clkset_vpllsrc_list[] = {
 static struct clk *clkset_vpllsrc_list[] = {
 	[0] = &clk_fin_vpll,
 	[0] = &clk_fin_vpll,
 	[1] = &clk_sclk_hdmi27m,
 	[1] = &clk_sclk_hdmi27m,
@@ -305,18 +300,6 @@ static struct clk_ops clk_fout_apll_ops = {
 
 
 static struct clk init_clocks_off[] = {
 static struct clk init_clocks_off[] = {
 	{
 	{
-		.name		= "dma",
-		.devname	= "dma-pl330.0",
-		.parent		= &clk_hclk_psys.clk,
-		.enable		= s5pv210_clk_ip0_ctrl,
-		.ctrlbit	= (1 << 3),
-	}, {
-		.name		= "dma",
-		.devname	= "dma-pl330.1",
-		.parent		= &clk_hclk_psys.clk,
-		.enable		= s5pv210_clk_ip0_ctrl,
-		.ctrlbit	= (1 << 4),
-	}, {
 		.name		= "rot",
 		.name		= "rot",
 		.parent		= &clk_hclk_dsys.clk,
 		.parent		= &clk_hclk_dsys.clk,
 		.enable		= s5pv210_clk_ip0_ctrl,
 		.enable		= s5pv210_clk_ip0_ctrl,
@@ -573,6 +556,20 @@ static struct clk clk_hsmmc3 = {
 	.ctrlbit	= (1<<19),
 	.ctrlbit	= (1<<19),
 };
 };
 
 
+static struct clk clk_pdma0 = {
+	.name		= "pdma0",
+	.parent		= &clk_hclk_psys.clk,
+	.enable		= s5pv210_clk_ip0_ctrl,
+	.ctrlbit	= (1 << 3),
+};
+
+static struct clk clk_pdma1 = {
+	.name		= "pdma1",
+	.parent		= &clk_hclk_psys.clk,
+	.enable		= s5pv210_clk_ip0_ctrl,
+	.ctrlbit	= (1 << 4),
+};
+
 static struct clk *clkset_uart_list[] = {
 static struct clk *clkset_uart_list[] = {
 	[6] = &clk_mout_mpll.clk,
 	[6] = &clk_mout_mpll.clk,
 	[7] = &clk_mout_epll.clk,
 	[7] = &clk_mout_epll.clk,
@@ -1075,6 +1072,8 @@ static struct clk *clk_cdev[] = {
 	&clk_hsmmc1,
 	&clk_hsmmc1,
 	&clk_hsmmc2,
 	&clk_hsmmc2,
 	&clk_hsmmc3,
 	&clk_hsmmc3,
+	&clk_pdma0,
+	&clk_pdma1,
 };
 };
 
 
 /* Clock initialisation code */
 /* Clock initialisation code */
@@ -1333,6 +1332,8 @@ static struct clk_lookup s5pv210_clk_lookup[] = {
 	CLKDEV_INIT(NULL, "spi_busclk0", &clk_p),
 	CLKDEV_INIT(NULL, "spi_busclk0", &clk_p),
 	CLKDEV_INIT("s5pv210-spi.0", "spi_busclk1", &clk_sclk_spi0.clk),
 	CLKDEV_INIT("s5pv210-spi.0", "spi_busclk1", &clk_sclk_spi0.clk),
 	CLKDEV_INIT("s5pv210-spi.1", "spi_busclk1", &clk_sclk_spi1.clk),
 	CLKDEV_INIT("s5pv210-spi.1", "spi_busclk1", &clk_sclk_spi1.clk),
+	CLKDEV_INIT("dma-pl330.0", "apb_pclk", &clk_pdma0),
+	CLKDEV_INIT("dma-pl330.1", "apb_pclk", &clk_pdma1),
 };
 };
 
 
 void __init s5pv210_register_clocks(void)
 void __init s5pv210_register_clocks(void)
@@ -1361,6 +1362,5 @@ void __init s5pv210_register_clocks(void)
 	for (ptr = 0; ptr < ARRAY_SIZE(clk_cdev); ptr++)
 	for (ptr = 0; ptr < ARRAY_SIZE(clk_cdev); ptr++)
 		s3c_disable_clocks(clk_cdev[ptr], 1);
 		s3c_disable_clocks(clk_cdev[ptr], 1);
 
 
-	s3c24xx_register_clock(&dummy_apb_pclk);
 	s3c_pwmclk_init();
 	s3c_pwmclk_init();
 }
 }

+ 1 - 1
arch/arm/mach-s5pv210/mach-goni.c

@@ -845,7 +845,7 @@ static struct fimc_source_info goni_camera_sensors[] = {
 		.mux_id		= 0,
 		.mux_id		= 0,
 		.flags		= V4L2_MBUS_PCLK_SAMPLE_FALLING |
 		.flags		= V4L2_MBUS_PCLK_SAMPLE_FALLING |
 				  V4L2_MBUS_VSYNC_ACTIVE_LOW,
 				  V4L2_MBUS_VSYNC_ACTIVE_LOW,
-		.bus_type	= FIMC_BUS_TYPE_ITU_601,
+		.fimc_bus_type	= FIMC_BUS_TYPE_ITU_601,
 		.board_info	= &noon010pc30_board_info,
 		.board_info	= &noon010pc30_board_info,
 		.i2c_bus_num	= 0,
 		.i2c_bus_num	= 0,
 		.clk_frequency	= 16000000UL,
 		.clk_frequency	= 16000000UL,

+ 1 - 0
arch/arm/mach-shmobile/board-marzen.c

@@ -32,6 +32,7 @@
 #include <linux/smsc911x.h>
 #include <linux/smsc911x.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/sh_hspi.h>
 #include <linux/spi/sh_hspi.h>
+#include <linux/mmc/host.h>
 #include <linux/mmc/sh_mobile_sdhi.h>
 #include <linux/mmc/sh_mobile_sdhi.h>
 #include <linux/mfd/tmio.h>
 #include <linux/mfd/tmio.h>
 #include <linux/usb/otg.h>
 #include <linux/usb/otg.h>

+ 1 - 1
arch/arm/mach-spear3xx/spear3xx.c

@@ -14,7 +14,7 @@
 #define pr_fmt(fmt) "SPEAr3xx: " fmt
 #define pr_fmt(fmt) "SPEAr3xx: " fmt
 
 
 #include <linux/amba/pl022.h>
 #include <linux/amba/pl022.h>
-#include <linux/amba/pl08x.h>
+#include <linux/amba/pl080.h>
 #include <linux/io.h>
 #include <linux/io.h>
 #include <plat/pl080.h>
 #include <plat/pl080.h>
 #include <mach/generic.h>
 #include <mach/generic.h>

+ 3 - 2
arch/arm/mm/dma-mapping.c

@@ -342,6 +342,7 @@ static int __init atomic_pool_init(void)
 {
 {
 	struct dma_pool *pool = &atomic_pool;
 	struct dma_pool *pool = &atomic_pool;
 	pgprot_t prot = pgprot_dmacoherent(pgprot_kernel);
 	pgprot_t prot = pgprot_dmacoherent(pgprot_kernel);
+	gfp_t gfp = GFP_KERNEL | GFP_DMA;
 	unsigned long nr_pages = pool->size >> PAGE_SHIFT;
 	unsigned long nr_pages = pool->size >> PAGE_SHIFT;
 	unsigned long *bitmap;
 	unsigned long *bitmap;
 	struct page *page;
 	struct page *page;
@@ -361,8 +362,8 @@ static int __init atomic_pool_init(void)
 		ptr = __alloc_from_contiguous(NULL, pool->size, prot, &page,
 		ptr = __alloc_from_contiguous(NULL, pool->size, prot, &page,
 					      atomic_pool_init);
 					      atomic_pool_init);
 	else
 	else
-		ptr = __alloc_remap_buffer(NULL, pool->size, GFP_KERNEL, prot,
-					   &page, atomic_pool_init);
+		ptr = __alloc_remap_buffer(NULL, pool->size, gfp, prot, &page,
+					   atomic_pool_init);
 	if (ptr) {
 	if (ptr) {
 		int i;
 		int i;
 
 

+ 1 - 1
arch/arm/net/bpf_jit_32.c

@@ -576,7 +576,7 @@ load_ind:
 			/* x = ((*(frame + k)) & 0xf) << 2; */
 			/* x = ((*(frame + k)) & 0xf) << 2; */
 			ctx->seen |= SEEN_X | SEEN_DATA | SEEN_CALL;
 			ctx->seen |= SEEN_X | SEEN_DATA | SEEN_CALL;
 			/* the interpreter should deal with the negative K */
 			/* the interpreter should deal with the negative K */
-			if (k < 0)
+			if ((int)k < 0)
 				return -1;
 				return -1;
 			/* offset in r1: we might have to take the slow path */
 			/* offset in r1: we might have to take the slow path */
 			emit_mov_i(r_off, k, ctx);
 			emit_mov_i(r_off, k, ctx);

+ 5 - 2
arch/arm/plat-orion/addr-map.c

@@ -157,9 +157,12 @@ void __init orion_setup_cpu_mbus_target(const struct orion_addr_map_cfg *cfg,
 		u32 size = readl(ddr_window_cpu_base + DDR_SIZE_CS_OFF(i));
 		u32 size = readl(ddr_window_cpu_base + DDR_SIZE_CS_OFF(i));
 
 
 		/*
 		/*
-		 * Chip select enabled?
+		 * We only take care of entries for which the chip
+		 * select is enabled, and that don't have high base
+		 * address bits set (devices can only access the first
+		 * 32 bits of the memory).
 		 */
 		 */
-		if (size & 1) {
+		if ((size & 1) && !(base & 0xF)) {
 			struct mbus_dram_window *w;
 			struct mbus_dram_window *w;
 
 
 			w = &orion_mbus_dram_info.cs[cs++];
 			w = &orion_mbus_dram_info.cs[cs++];

+ 1 - 1
arch/arm/plat-spear/Kconfig

@@ -10,7 +10,7 @@ choice
 
 
 config ARCH_SPEAR13XX
 config ARCH_SPEAR13XX
 	bool "ST SPEAr13xx with Device Tree"
 	bool "ST SPEAr13xx with Device Tree"
-	select ARCH_HAVE_CPUFREQ
+	select ARCH_HAS_CPUFREQ
 	select ARM_GIC
 	select ARM_GIC
 	select CPU_V7
 	select CPU_V7
 	select GPIO_SPEAR_SPICS
 	select GPIO_SPEAR_SPICS

+ 0 - 1
arch/arm64/Kconfig

@@ -9,7 +9,6 @@ config ARM64
 	select CLONE_BACKWARDS
 	select CLONE_BACKWARDS
 	select COMMON_CLK
 	select COMMON_CLK
 	select GENERIC_CLOCKEVENTS
 	select GENERIC_CLOCKEVENTS
-	select GENERIC_HARDIRQS_NO_DEPRECATED
 	select GENERIC_IOMAP
 	select GENERIC_IOMAP
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW

+ 0 - 11
arch/arm64/Kconfig.debug

@@ -6,17 +6,6 @@ config FRAME_POINTER
 	bool
 	bool
 	default y
 	default y
 
 
-config DEBUG_ERRORS
-	bool "Verbose kernel error messages"
-	depends on DEBUG_KERNEL
-	help
-	  This option controls verbose debugging information which can be
-	  printed when the kernel detects an internal error. This debugging
-	  information is useful to kernel hackers when tracking down problems,
-	  but mostly meaningless to other people. It's safe to say Y unless
-	  you are concerned with the code size or don't want to see these
-	  messages.
-
 config DEBUG_STACK_USAGE
 config DEBUG_STACK_USAGE
 	bool "Enable stack utilization instrumentation"
 	bool "Enable stack utilization instrumentation"
 	depends on DEBUG_KERNEL
 	depends on DEBUG_KERNEL

+ 0 - 1
arch/arm64/configs/defconfig

@@ -82,4 +82,3 @@ CONFIG_DEBUG_KERNEL=y
 CONFIG_DEBUG_INFO=y
 CONFIG_DEBUG_INFO=y
 # CONFIG_FTRACE is not set
 # CONFIG_FTRACE is not set
 CONFIG_ATOMIC64_SELFTEST=y
 CONFIG_ATOMIC64_SELFTEST=y
-CONFIG_DEBUG_ERRORS=y

+ 1 - 1
arch/arm64/include/asm/ucontext.h

@@ -22,7 +22,7 @@ struct ucontext {
 	stack_t		  uc_stack;
 	stack_t		  uc_stack;
 	sigset_t	  uc_sigmask;
 	sigset_t	  uc_sigmask;
 	/* glibc uses a 1024-bit sigset_t */
 	/* glibc uses a 1024-bit sigset_t */
-	__u8		  __unused[(1024 - sizeof(sigset_t)) / 8];
+	__u8		  __unused[1024 / 8 - sizeof(sigset_t)];
 	/* last for future expansion */
 	/* last for future expansion */
 	struct sigcontext uc_mcontext;
 	struct sigcontext uc_mcontext;
 };
 };

+ 2 - 0
arch/arm64/kernel/arm64ksyms.c

@@ -40,7 +40,9 @@ EXPORT_SYMBOL(__copy_to_user);
 EXPORT_SYMBOL(__clear_user);
 EXPORT_SYMBOL(__clear_user);
 
 
 	/* bitops */
 	/* bitops */
+#ifdef CONFIG_SMP
 EXPORT_SYMBOL(__atomic_hash);
 EXPORT_SYMBOL(__atomic_hash);
+#endif
 
 
 	/* physical memory */
 	/* physical memory */
 EXPORT_SYMBOL(memstart_addr);
 EXPORT_SYMBOL(memstart_addr);

+ 0 - 1
arch/arm64/kernel/signal32.c

@@ -549,7 +549,6 @@ int compat_setup_rt_frame(int usig, struct k_sigaction *ka, siginfo_t *info,
 			  sigset_t *set, struct pt_regs *regs)
 			  sigset_t *set, struct pt_regs *regs)
 {
 {
 	struct compat_rt_sigframe __user *frame;
 	struct compat_rt_sigframe __user *frame;
-	compat_stack_t stack;
 	int err = 0;
 	int err = 0;
 
 
 	frame = compat_get_sigframe(ka, regs, sizeof(*frame));
 	frame = compat_get_sigframe(ka, regs, sizeof(*frame));

+ 1 - 1
arch/avr32/Kconfig

@@ -7,7 +7,7 @@ config AVR32
 	select HAVE_OPROFILE
 	select HAVE_OPROFILE
 	select HAVE_KPROBES
 	select HAVE_KPROBES
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_PROBE
 	select GENERIC_ATOMIC64
 	select GENERIC_ATOMIC64
 	select HARDIRQS_SW_RESEND
 	select HARDIRQS_SW_RESEND

+ 1 - 1
arch/blackfin/Kconfig

@@ -33,7 +33,7 @@ config BLACKFIN
 	select ARCH_HAVE_CUSTOM_GPIO_H
 	select ARCH_HAVE_CUSTOM_GPIO_H
 	select ARCH_WANT_OPTIONAL_GPIOLIB
 	select ARCH_WANT_OPTIONAL_GPIOLIB
 	select HAVE_UID16
 	select HAVE_UID16
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
 	select GENERIC_ATOMIC64
 	select GENERIC_ATOMIC64

+ 1 - 1
arch/cris/Kconfig

@@ -43,7 +43,7 @@ config CRIS
 	select GENERIC_ATOMIC64
 	select GENERIC_ATOMIC64
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_UID16
 	select HAVE_UID16
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IOMAP
 	select GENERIC_IOMAP

+ 1 - 1
arch/frv/Kconfig

@@ -6,7 +6,7 @@ config FRV
 	select HAVE_PERF_EVENTS
 	select HAVE_PERF_EVENTS
 	select HAVE_UID16
 	select HAVE_UID16
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW
 	select HAVE_DEBUG_BUGVERBOSE
 	select HAVE_DEBUG_BUGVERBOSE
 	select ARCH_HAVE_NMI_SAFE_CMPXCHG
 	select ARCH_HAVE_NMI_SAFE_CMPXCHG

+ 1 - 1
arch/h8300/Kconfig

@@ -5,7 +5,7 @@ config H8300
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
 	select GENERIC_ATOMIC64
 	select GENERIC_ATOMIC64
 	select HAVE_UID16
 	select HAVE_UID16
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW
 	select GENERIC_CPU_DEVICES
 	select GENERIC_CPU_DEVICES

+ 1 - 1
arch/ia64/Kconfig

@@ -26,7 +26,7 @@ config IA64
 	select HAVE_MEMBLOCK
 	select HAVE_MEMBLOCK
 	select HAVE_MEMBLOCK_NODE_MAP
 	select HAVE_MEMBLOCK_NODE_MAP
 	select HAVE_VIRT_CPU_ACCOUNTING
 	select HAVE_VIRT_CPU_ACCOUNTING
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select ARCH_DISCARD_MEMBLOCK
 	select ARCH_DISCARD_MEMBLOCK
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_PROBE
 	select GENERIC_PENDING_IRQ if SMP
 	select GENERIC_PENDING_IRQ if SMP

+ 1 - 1
arch/m32r/Kconfig

@@ -10,7 +10,7 @@ config M32R
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select ARCH_WANT_IPC_PARSE_VERSION
 	select HAVE_DEBUG_BUGVERBOSE
 	select HAVE_DEBUG_BUGVERBOSE
 	select HAVE_GENERIC_HARDIRQS
 	select HAVE_GENERIC_HARDIRQS
-	select HAVE_VIRT_TO_BUS
+	select VIRT_TO_BUS
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_PROBE
 	select GENERIC_IRQ_SHOW
 	select GENERIC_IRQ_SHOW
 	select GENERIC_ATOMIC64
 	select GENERIC_ATOMIC64

+ 2 - 2
arch/m32r/include/uapi/asm/stat.h

@@ -63,10 +63,10 @@ struct stat64 {
 	long long	st_size;
 	long long	st_size;
 	unsigned long	st_blksize;
 	unsigned long	st_blksize;
 
 
-#if defined(__BIG_ENDIAN)
+#if defined(__BYTE_ORDER) ? __BYTE_ORDER == __BIG_ENDIAN : defined(__BIG_ENDIAN)
 	unsigned long	__pad4;		/* future possible st_blocks high bits */
 	unsigned long	__pad4;		/* future possible st_blocks high bits */
 	unsigned long	st_blocks;	/* Number 512-byte blocks allocated. */
 	unsigned long	st_blocks;	/* Number 512-byte blocks allocated. */
-#elif defined(__LITTLE_ENDIAN)
+#elif defined(__BYTE_ORDER) ? __BYTE_ORDER == __LITTLE_ENDIAN : defined(__LITTLE_ENDIAN)
 	unsigned long	st_blocks;	/* Number 512-byte blocks allocated. */
 	unsigned long	st_blocks;	/* Number 512-byte blocks allocated. */
 	unsigned long	__pad4;		/* future possible st_blocks high bits */
 	unsigned long	__pad4;		/* future possible st_blocks high bits */
 #else
 #else

Some files were not shown because too many files changed in this diff