Просмотр исходного кода

Merge commit 'v2.6.28-rc3' into tracing/ftrace

Ingo Molnar 17 лет назад
Родитель
Сommit
36609469c8
100 измененных файлов с 252 добавлено и 415 удалено
  1. 2 0
      .mailmap
  2. 2 2
      Documentation/00-INDEX
  3. 0 13
      Documentation/arm/empeg/README
  4. 0 49
      Documentation/arm/empeg/ir.txt
  5. 0 11
      Documentation/arm/empeg/mkdevs
  6. 3 0
      Documentation/ftrace.txt
  7. 6 6
      Documentation/kernel-parameters.txt
  8. 1 1
      Documentation/lguest/Makefile
  9. 2 2
      Documentation/lguest/lguest.c
  10. 0 2
      Documentation/scheduler/00-INDEX
  11. 1 3
      Documentation/sh/new-machine.txt
  12. 2 2
      Documentation/x86/x86_64/boot-options.txt
  13. 1 1
      Documentation/x86/x86_64/fake-numa-for-cpusets
  14. 7 0
      MAINTAINERS
  15. 8 2
      Makefile
  16. 14 5
      arch/arm/common/sharpsl_pm.c
  17. 1 0
      arch/arm/mach-at91/board-afeb-9260v1.c
  18. 2 0
      arch/arm/mach-at91/include/mach/gpio.h
  19. 4 2
      arch/arm/mach-ep93xx/core.c
  20. 3 0
      arch/arm/mach-imx/include/mach/gpio.h
  21. 3 0
      arch/arm/mach-ixp4xx/include/mach/gpio.h
  22. 3 0
      arch/arm/mach-ks8695/include/mach/gpio.h
  23. 2 0
      arch/arm/mach-mx3/mx31ads.c
  24. 2 2
      arch/arm/mach-mx3/pcm037.c
  25. 2 0
      arch/arm/mach-ns9xxx/gpio.c
  26. 2 0
      arch/arm/mach-orion5x/gpio.c
  27. 3 1
      arch/arm/mach-pxa/corgi_pm.c
  28. 1 0
      arch/arm/mach-pxa/include/mach/sharpsl.h
  29. 12 0
      arch/arm/mach-pxa/spitz.c
  30. 3 1
      arch/arm/mach-pxa/spitz_pm.c
  31. 1 1
      arch/arm/mm/proc-xsc3.S
  32. 1 1
      arch/arm/plat-mxc/gpio.c
  33. 20 0
      arch/arm/plat-mxc/include/mach/io.h
  34. 27 60
      arch/cris/Makefile
  35. 2 0
      arch/cris/arch-v10/boot/.gitignore
  36. 1 1
      arch/cris/arch-v10/boot/compressed/head.S
  37. 1 1
      arch/cris/arch-v10/boot/compressed/misc.c
  38. 1 1
      arch/cris/arch-v10/boot/rescue/head.S
  39. 1 1
      arch/cris/arch-v10/boot/rescue/kimagerescue.S
  40. 1 1
      arch/cris/arch-v10/boot/rescue/testrescue.S
  41. 1 1
      arch/cris/arch-v10/drivers/axisflashmap.c
  42. 2 2
      arch/cris/arch-v10/drivers/ds1302.c
  43. 2 2
      arch/cris/arch-v10/drivers/gpio.c
  44. 2 2
      arch/cris/arch-v10/drivers/i2c.c
  45. 2 2
      arch/cris/arch-v10/drivers/sync_serial.c
  46. 0 47
      arch/cris/arch-v10/kernel/asm-offsets.c
  47. 1 1
      arch/cris/arch-v10/kernel/crisksyms.c
  48. 1 1
      arch/cris/arch-v10/kernel/debugport.c
  49. 1 1
      arch/cris/arch-v10/kernel/dma.c
  50. 1 1
      arch/cris/arch-v10/kernel/entry.S
  51. 1 1
      arch/cris/arch-v10/kernel/fasttimer.c
  52. 1 1
      arch/cris/arch-v10/kernel/head.S
  53. 2 2
      arch/cris/arch-v10/kernel/io_interface_mux.c
  54. 1 1
      arch/cris/arch-v10/kernel/kgdb.c
  55. 1 1
      arch/cris/arch-v10/kernel/process.c
  56. 1 1
      arch/cris/arch-v10/kernel/time.c
  57. 1 1
      arch/cris/arch-v10/kernel/traps.c
  58. 1 1
      arch/cris/arch-v10/mm/fault.c
  59. 1 1
      arch/cris/arch-v10/mm/init.c
  60. 1 1
      arch/cris/arch-v10/mm/tlb.c
  61. 0 118
      arch/cris/arch-v10/vmlinux.lds.S
  62. 16 4
      arch/cris/arch-v32/boot/compressed/head.S
  63. 1 1
      arch/cris/arch-v32/drivers/mach-a3/gpio.c
  64. 1 1
      arch/cris/arch-v32/drivers/mach-a3/nandflash.c
  65. 1 1
      arch/cris/arch-v32/drivers/mach-fs/nandflash.c
  66. 1 1
      arch/cris/arch-v32/drivers/pci/bios.c
  67. 2 2
      arch/cris/arch-v32/kernel/cache.c
  68. 4 4
      arch/cris/arch-v32/kernel/crisksyms.c
  69. 1 1
      arch/cris/arch-v32/kernel/debugport.c
  70. 2 2
      arch/cris/arch-v32/kernel/entry.S
  71. 18 4
      arch/cris/arch-v32/kernel/head.S
  72. 4 4
      arch/cris/arch-v32/kernel/kgdb.c
  73. 1 1
      arch/cris/arch-v32/kernel/kgdb_asm.S
  74. 4 4
      arch/cris/arch-v32/kernel/pinmux.c
  75. 1 1
      arch/cris/arch-v32/kernel/ptrace.c
  76. 2 2
      arch/cris/arch-v32/kernel/signal.c
  77. 5 5
      arch/cris/arch-v32/lib/nand_init.S
  78. 1 1
      arch/cris/arch-v32/mach-a3/dma.c
  79. 1 1
      arch/cris/arch-v32/mach-a3/io.c
  80. 3 3
      arch/cris/arch-v32/mach-fs/cpufreq.c
  81. 1 1
      arch/cris/arch-v32/mach-fs/dma.c
  82. 2 2
      arch/cris/arch-v32/mach-fs/io.c
  83. 2 2
      arch/cris/arch-v32/mach-fs/vcs_hook.c
  84. 2 2
      arch/cris/arch-v32/mm/init.c
  85. 2 2
      arch/cris/arch-v32/mm/tlb.c
  86. 0 0
      arch/cris/include/arch-v10/arch/Kbuild
  87. 0 0
      arch/cris/include/arch-v10/arch/atomic.h
  88. 0 0
      arch/cris/include/arch-v10/arch/bitops.h
  89. 0 0
      arch/cris/include/arch-v10/arch/bug.h
  90. 0 0
      arch/cris/include/arch-v10/arch/byteorder.h
  91. 0 0
      arch/cris/include/arch-v10/arch/cache.h
  92. 0 0
      arch/cris/include/arch-v10/arch/checksum.h
  93. 0 0
      arch/cris/include/arch-v10/arch/delay.h
  94. 0 0
      arch/cris/include/arch-v10/arch/dma.h
  95. 0 0
      arch/cris/include/arch-v10/arch/elf.h
  96. 1 1
      arch/cris/include/arch-v10/arch/io.h
  97. 0 0
      arch/cris/include/arch-v10/arch/io_interface_mux.h
  98. 1 1
      arch/cris/include/arch-v10/arch/irq.h
  99. 0 0
      arch/cris/include/arch-v10/arch/memmap.h
  100. 0 0
      arch/cris/include/arch-v10/arch/mmu.h

+ 2 - 0
.mailmap

@@ -80,6 +80,8 @@ Nguyen Anh Quynh <aquynh@gmail.com>
 Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
 Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
 Patrick Mochel <mochel@digitalimplant.org>
 Patrick Mochel <mochel@digitalimplant.org>
 Peter A Jonsson <pj@ludd.ltu.se>
 Peter A Jonsson <pj@ludd.ltu.se>
+Peter Oruba <peter@oruba.de>
+Peter Oruba <peter.oruba@amd.com>
 Praveen BP <praveenbp@ti.com>
 Praveen BP <praveenbp@ti.com>
 Rajesh Shah <rajesh.shah@intel.com>
 Rajesh Shah <rajesh.shah@intel.com>
 Ralf Baechle <ralf@linux-mips.org>
 Ralf Baechle <ralf@linux-mips.org>

+ 2 - 2
Documentation/00-INDEX

@@ -172,7 +172,7 @@ i2c/
 	- directory with info about the I2C bus/protocol (2 wire, kHz speed).
 	- directory with info about the I2C bus/protocol (2 wire, kHz speed).
 i2o/
 i2o/
 	- directory with info about the Linux I2O subsystem.
 	- directory with info about the Linux I2O subsystem.
-i386/
+x86/i386/
 	- directory with info about Linux on Intel 32 bit architecture.
 	- directory with info about Linux on Intel 32 bit architecture.
 ia64/
 ia64/
 	- directory with info about Linux on Intel 64 bit architecture.
 	- directory with info about Linux on Intel 64 bit architecture.
@@ -382,7 +382,7 @@ w1/
 	- directory with documents regarding the 1-wire (w1) subsystem.
 	- directory with documents regarding the 1-wire (w1) subsystem.
 watchdog/
 watchdog/
 	- how to auto-reboot Linux if it has "fallen and can't get up". ;-)
 	- how to auto-reboot Linux if it has "fallen and can't get up". ;-)
-x86_64/
+x86/x86_64/
 	- directory with info on Linux support for AMD x86-64 (Hammer) machines.
 	- directory with info on Linux support for AMD x86-64 (Hammer) machines.
 zorro.txt
 zorro.txt
 	- info on writing drivers for Zorro bus devices found on Amigas.
 	- info on writing drivers for Zorro bus devices found on Amigas.

+ 0 - 13
Documentation/arm/empeg/README

@@ -1,13 +0,0 @@
-Empeg, Ltd's Empeg MP3 Car Audio Player
-
-The initial design is to go in your car, but you can use it at home, on a
-boat... almost anywhere. The principle is to store CD-quality music using
-MPEG technology onto a hard disk in the unit, and use the power of the
-embedded computer to serve up the music you want.
-
-For more details, see:
-
-	http://www.empeg.com
-
-
-

+ 0 - 49
Documentation/arm/empeg/ir.txt

@@ -1,49 +0,0 @@
-Infra-red driver documentation.
-
-Mike Crowe <mac@empeg.com>
-(C) Empeg Ltd 1999
-
-Not a lot here yet :-)
-
-The Kenwood KCA-R6A remote control generates a sequence like the following:
-
-Go low for approx 16T (Around 9000us)
-Go high for approx 8T (Around 4000us)
-Go low for less than 2T (Around 750us)
-
-For each of the 32 bits
-  Go high for more than 2T (Around 1500us) == 1
-  Go high for less than T (Around 400us) == 0
-  Go low for less than 2T (Around 750us)
-
-Rather than repeat a signal when the button is held down certain buttons
-generate the following code to indicate repetition.
-
-Go low for approx 16T
-Go high for approx 4T
-Go low for less than 2T
-
-(By removing the <2T from the start of the sequence and placing at the end
- it can be considered a stop bit but I found it easier to deal with it at
- the start).
-
-The 32 bits are encoded as XxYy where x and y are the actual data values
-while X and Y are the logical inverses of the associated data values. Using 
-LSB first yields sensible codes for the numbers.
-
-All codes are of the form b9xx
-
-The numeric keys generate the code 0x where x is the number pressed.
-
-Tuner		1c
-Tape		1d
-CD		1e
-CD-MD-CH	1f
-Track-		0a
-Track+		0b
-Rewind		0c
-FF		0d
-DNPP		5e
-Play/Pause	0e
-Vol+		14
-Vol-		15

+ 0 - 11
Documentation/arm/empeg/mkdevs

@@ -1,11 +0,0 @@
-#!/bin/sh
-mknod /dev/display c 244 0
-mknod /dev/ir c 242 0
-mknod /dev/usb0 c 243 0
-mknod /dev/audio c 245 4
-mknod /dev/dsp c 245 3
-mknod /dev/mixer c 245 0
-mknod /dev/empeg_state c 246 0
-mknod /dev/radio0 c 81 64
-ln -sf radio0 radio
-ln -sf usb0 usb

+ 3 - 0
Documentation/ftrace.txt

@@ -291,6 +291,9 @@ explains which is which.
   CPU#: The CPU which the process was running on.
   CPU#: The CPU which the process was running on.
 
 
   irqs-off: 'd' interrupts are disabled. '.' otherwise.
   irqs-off: 'd' interrupts are disabled. '.' otherwise.
+	    Note: If the architecture does not support a way to
+		  read the irq flags variable, an 'X' will always
+		  be printed here.
 
 
   need-resched: 'N' task need_resched is set, '.' otherwise.
   need-resched: 'N' task need_resched is set, '.' otherwise.
 
 

+ 6 - 6
Documentation/kernel-parameters.txt

@@ -100,7 +100,7 @@ parameter is applicable:
 	X86-32	X86-32, aka i386 architecture is enabled.
 	X86-32	X86-32, aka i386 architecture is enabled.
 	X86-64	X86-64 architecture is enabled.
 	X86-64	X86-64 architecture is enabled.
 			More X86-64 boot options can be found in
 			More X86-64 boot options can be found in
-			Documentation/x86_64/boot-options.txt .
+			Documentation/x86/x86_64/boot-options.txt .
 	X86	Either 32bit or 64bit x86 (same as X86-32+X86-64)
 	X86	Either 32bit or 64bit x86 (same as X86-32+X86-64)
 
 
 In addition, the following text indicates that the option:
 In addition, the following text indicates that the option:
@@ -112,10 +112,10 @@ In addition, the following text indicates that the option:
 Parameters denoted with BOOT are actually interpreted by the boot
 Parameters denoted with BOOT are actually interpreted by the boot
 loader, and have no meaning to the kernel directly.
 loader, and have no meaning to the kernel directly.
 Do not modify the syntax of boot loader parameters without extreme
 Do not modify the syntax of boot loader parameters without extreme
-need or coordination with <Documentation/i386/boot.txt>.
+need or coordination with <Documentation/x86/i386/boot.txt>.
 
 
 There are also arch-specific kernel-parameters not documented here.
 There are also arch-specific kernel-parameters not documented here.
-See for example <Documentation/x86_64/boot-options.txt>.
+See for example <Documentation/x86/x86_64/boot-options.txt>.
 
 
 Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
 Note that ALL kernel parameters listed below are CASE SENSITIVE, and that
 a trailing = on the name of any parameter states that that parameter will
 a trailing = on the name of any parameter states that that parameter will
@@ -1222,7 +1222,7 @@ and is between 256 and 4096 characters. It is defined in the file
 
 
 	mce		[X86-32] Machine Check Exception
 	mce		[X86-32] Machine Check Exception
 
 
-	mce=option	[X86-64] See Documentation/x86_64/boot-options.txt
+	mce=option	[X86-64] See Documentation/x86/x86_64/boot-options.txt
 
 
 	md=		[HW] RAID subsystems devices and level
 	md=		[HW] RAID subsystems devices and level
 			See Documentation/md.txt.
 			See Documentation/md.txt.
@@ -1728,7 +1728,7 @@ and is between 256 and 4096 characters. It is defined in the file
 			See Documentation/paride.txt.
 			See Documentation/paride.txt.
 
 
 	pirq=		[SMP,APIC] Manual mp-table setup
 	pirq=		[SMP,APIC] Manual mp-table setup
-			See Documentation/i386/IO-APIC.txt.
+			See Documentation/x86/i386/IO-APIC.txt.
 
 
 	plip=		[PPT,NET] Parallel port network link
 	plip=		[PPT,NET] Parallel port network link
 			Format: { parport<nr> | timid | 0 }
 			Format: { parport<nr> | timid | 0 }
@@ -2343,7 +2343,7 @@ and is between 256 and 4096 characters. It is defined in the file
 			See Documentation/fb/modedb.txt.
 			See Documentation/fb/modedb.txt.
 
 
 	vga=		[BOOT,X86-32] Select a particular video mode
 	vga=		[BOOT,X86-32] Select a particular video mode
-			See Documentation/i386/boot.txt and
+			See Documentation/x86/i386/boot.txt and
 			Documentation/svga.txt.
 			Documentation/svga.txt.
 			Use vga=ask for menu.
 			Use vga=ask for menu.
 			This is actually a boot loader parameter; the value is
 			This is actually a boot loader parameter; the value is

+ 1 - 1
Documentation/lguest/Makefile

@@ -1,5 +1,5 @@
 # This creates the demonstration utility "lguest" which runs a Linux guest.
 # This creates the demonstration utility "lguest" which runs a Linux guest.
-CFLAGS:=-Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include
+CFLAGS:=-Wall -Wmissing-declarations -Wmissing-prototypes -O3 -I../../include -I../../arch/x86/include
 LDLIBS:=-lz
 LDLIBS:=-lz
 
 
 all: lguest
 all: lguest

+ 2 - 2
Documentation/lguest/lguest.c

@@ -44,7 +44,7 @@
 #include "linux/virtio_console.h"
 #include "linux/virtio_console.h"
 #include "linux/virtio_rng.h"
 #include "linux/virtio_rng.h"
 #include "linux/virtio_ring.h"
 #include "linux/virtio_ring.h"
-#include "asm-x86/bootparam.h"
+#include "asm/bootparam.h"
 /*L:110 We can ignore the 39 include files we need for this program, but I do
 /*L:110 We can ignore the 39 include files we need for this program, but I do
  * want to draw attention to the use of kernel-style types.
  * want to draw attention to the use of kernel-style types.
  *
  *
@@ -402,7 +402,7 @@ static unsigned long load_bzimage(int fd)
 	void *p = from_guest_phys(0x100000);
 	void *p = from_guest_phys(0x100000);
 
 
 	/* Go back to the start of the file and read the header.  It should be
 	/* Go back to the start of the file and read the header.  It should be
-	 * a Linux boot header (see Documentation/i386/boot.txt) */
+	 * a Linux boot header (see Documentation/x86/i386/boot.txt) */
 	lseek(fd, 0, SEEK_SET);
 	lseek(fd, 0, SEEK_SET);
 	read(fd, &boot, sizeof(boot));
 	read(fd, &boot, sizeof(boot));
 
 

+ 0 - 2
Documentation/scheduler/00-INDEX

@@ -4,8 +4,6 @@ sched-arch.txt
 	- CPU Scheduler implementation hints for architecture specific code.
 	- CPU Scheduler implementation hints for architecture specific code.
 sched-coding.txt
 sched-coding.txt
 	- reference for various scheduler-related methods in the O(1) scheduler.
 	- reference for various scheduler-related methods in the O(1) scheduler.
-sched-design.txt
-	- goals, design and implementation of the Linux O(1) scheduler.
 sched-design-CFS.txt
 sched-design-CFS.txt
 	- goals, design and implementation of the Complete Fair Scheduler.
 	- goals, design and implementation of the Complete Fair Scheduler.
 sched-domains.txt
 sched-domains.txt

+ 1 - 3
Documentation/sh/new-machine.txt

@@ -47,9 +47,7 @@ Next, for companion chips:
     `-- sh
     `-- sh
         `-- cchips
         `-- cchips
             `-- hd6446x
             `-- hd6446x
-                |-- hd64461
-                |   `-- cchip-specific files
-                `-- hd64465
+                `-- hd64461
                     `-- cchip-specific files
                     `-- cchip-specific files
 
 
 ... and so on. Headers for the companion chips are treated the same way as
 ... and so on. Headers for the companion chips are treated the same way as

+ 2 - 2
Documentation/x86/x86_64/boot-options.txt

@@ -35,7 +35,7 @@ APICs
 
 
    nolapic	 Don't use the local APIC (alias for i386 compatibility)
    nolapic	 Don't use the local APIC (alias for i386 compatibility)
 
 
-   pirq=...	 See Documentation/i386/IO-APIC.txt
+   pirq=...	 See Documentation/x86/i386/IO-APIC.txt
 
 
    noapictimer	 Don't set up the APIC timer
    noapictimer	 Don't set up the APIC timer
 
 
@@ -139,7 +139,7 @@ Non Executable Mappings
 SMP
 SMP
 
 
   additional_cpus=NUM Allow NUM more CPUs for hotplug
   additional_cpus=NUM Allow NUM more CPUs for hotplug
-		 (defaults are specified by the BIOS, see Documentation/x86_64/cpu-hotplug-spec)
+		 (defaults are specified by the BIOS, see Documentation/x86/x86_64/cpu-hotplug-spec)
 
 
 NUMA
 NUMA
 
 

+ 1 - 1
Documentation/x86/x86_64/fake-numa-for-cpusets

@@ -10,7 +10,7 @@ amount of system memory that are available to a certain class of tasks.
 For more information on the features of cpusets, see Documentation/cpusets.txt.
 For more information on the features of cpusets, see Documentation/cpusets.txt.
 There are a number of different configurations you can use for your needs.  For
 There are a number of different configurations you can use for your needs.  For
 more information on the numa=fake command line option and its various ways of
 more information on the numa=fake command line option and its various ways of
-configuring fake nodes, see Documentation/x86_64/boot-options.txt.
+configuring fake nodes, see Documentation/x86/x86_64/boot-options.txt.
 
 
 For the purposes of this introduction, we'll assume a very primitive NUMA
 For the purposes of this introduction, we'll assume a very primitive NUMA
 emulation setup of "numa=fake=4*512,".  This will split our system memory into
 emulation setup of "numa=fake=4*512,".  This will split our system memory into

+ 7 - 0
MAINTAINERS

@@ -610,6 +610,11 @@ P:	Philipp Zabel
 M:	philipp.zabel@gmail.com
 M:	philipp.zabel@gmail.com
 S:	Maintained
 S:	Maintained
 
 
+ARM/NEC MOBILEPRO 900/c MACHINE SUPPORT
+P:	Michael Petchkovsky
+M:	mkpetch@internode.on.net
+S:	Maintained
+
 ARM/TOSA MACHINE SUPPORT
 ARM/TOSA MACHINE SUPPORT
 P:	Dmitry Baryshkov
 P:	Dmitry Baryshkov
 M:	dbaryshkov@gmail.com
 M:	dbaryshkov@gmail.com
@@ -738,6 +743,8 @@ P:	Nick Kossifidis
 M:	mickflemm@gmail.com
 M:	mickflemm@gmail.com
 P:	Luis R. Rodriguez
 P:	Luis R. Rodriguez
 M:	mcgrof@gmail.com
 M:	mcgrof@gmail.com
+P:	Bob Copeland
+M:	me@bobcopeland.com
 L:	linux-wireless@vger.kernel.org
 L:	linux-wireless@vger.kernel.org
 L:	ath5k-devel@lists.ath5k.org
 L:	ath5k-devel@lists.ath5k.org
 S:	Maintained
 S:	Maintained

+ 8 - 2
Makefile

@@ -1,7 +1,7 @@
 VERSION = 2
 VERSION = 2
 PATCHLEVEL = 6
 PATCHLEVEL = 6
 SUBLEVEL = 28
 SUBLEVEL = 28
-EXTRAVERSION = -rc2
+EXTRAVERSION = -rc3
 NAME = Killer Bat of Doom
 NAME = Killer Bat of Doom
 
 
 # *DOCUMENTATION*
 # *DOCUMENTATION*
@@ -961,6 +961,7 @@ export CPPFLAGS_vmlinux.lds += -P -C -U$(ARCH)
 
 
 # The asm symlink changes when $(ARCH) changes.
 # The asm symlink changes when $(ARCH) changes.
 # Detect this and ask user to run make mrproper
 # Detect this and ask user to run make mrproper
+# If asm is a stale symlink (point to dir that does not exist) remove it
 define check-symlink
 define check-symlink
 	set -e;                                                            \
 	set -e;                                                            \
 	if [ -L include/asm ]; then                                        \
 	if [ -L include/asm ]; then                                        \
@@ -970,6 +971,10 @@ define check-symlink
 			echo "       set ARCH or save .config and run 'make mrproper' to fix it";             \
 			echo "       set ARCH or save .config and run 'make mrproper' to fix it";             \
 			exit 1;                                            \
 			exit 1;                                            \
 		fi;                                                        \
 		fi;                                                        \
+		test -e $$asmlink || rm include/asm;                       \
+	elif [ -d include/asm ]; then                                      \
+		echo "ERROR: $@ is a directory but a symlink was expected";\
+		exit 1;                                                    \
 	fi
 	fi
 endef
 endef
 
 
@@ -1431,7 +1436,8 @@ ALLSOURCE_ARCHS := $(SRCARCH)
 define find-sources
 define find-sources
         ( for arch in $(ALLSOURCE_ARCHS) ; do \
         ( for arch in $(ALLSOURCE_ARCHS) ; do \
 	       find $(__srctree)arch/$${arch} $(RCS_FIND_IGNORE) \
 	       find $(__srctree)arch/$${arch} $(RCS_FIND_IGNORE) \
-	            -name $1 -print; \
+		    -wholename $(__srctree)arch/$${arch}/include/asm -type d -prune \
+	            -o -name $1 -print; \
 	  done ; \
 	  done ; \
 	  find $(__srctree)security/selinux/include $(RCS_FIND_IGNORE) \
 	  find $(__srctree)security/selinux/include $(RCS_FIND_IGNORE) \
 	       -name $1 -print; \
 	       -name $1 -print; \

+ 14 - 5
arch/arm/common/sharpsl_pm.c

@@ -54,11 +54,13 @@
 /*
 /*
  * Prototypes
  * Prototypes
  */
  */
+#ifdef CONFIG_PM
 static int sharpsl_off_charge_battery(void);
 static int sharpsl_off_charge_battery(void);
-static int sharpsl_check_battery_temp(void);
 static int sharpsl_check_battery_voltage(void);
 static int sharpsl_check_battery_voltage(void);
-static int sharpsl_ac_check(void);
 static int sharpsl_fatal_check(void);
 static int sharpsl_fatal_check(void);
+#endif
+static int sharpsl_check_battery_temp(void);
+static int sharpsl_ac_check(void);
 static int sharpsl_average_value(int ad);
 static int sharpsl_average_value(int ad);
 static void sharpsl_average_clear(void);
 static void sharpsl_average_clear(void);
 static void sharpsl_charge_toggle(struct work_struct *private_);
 static void sharpsl_charge_toggle(struct work_struct *private_);
@@ -424,6 +426,7 @@ static int sharpsl_check_battery_temp(void)
 	return 0;
 	return 0;
 }
 }
 
 
+#ifdef CONFIG_PM
 static int sharpsl_check_battery_voltage(void)
 static int sharpsl_check_battery_voltage(void)
 {
 {
 	int val, i, buff[5];
 	int val, i, buff[5];
@@ -455,6 +458,7 @@ static int sharpsl_check_battery_voltage(void)
 
 
 	return 0;
 	return 0;
 }
 }
+#endif
 
 
 static int sharpsl_ac_check(void)
 static int sharpsl_ac_check(void)
 {
 {
@@ -586,8 +590,6 @@ static int corgi_pxa_pm_enter(suspend_state_t state)
 
 
 	return 0;
 	return 0;
 }
 }
-#endif
-
 
 
 /*
 /*
  * Check for fatal battery errors
  * Check for fatal battery errors
@@ -738,7 +740,10 @@ static int sharpsl_off_charge_battery(void)
 		}
 		}
 	}
 	}
 }
 }
-
+#else
+#define sharpsl_pm_suspend	NULL
+#define sharpsl_pm_resume	NULL
+#endif
 
 
 static ssize_t battery_percentage_show(struct device *dev, struct device_attribute *attr, char *buf)
 static ssize_t battery_percentage_show(struct device *dev, struct device_attribute *attr, char *buf)
 {
 {
@@ -768,10 +773,12 @@ static void sharpsl_apm_get_power_status(struct apm_power_info *info)
 	info->battery_life = sharpsl_pm.battstat.mainbat_percent;
 	info->battery_life = sharpsl_pm.battstat.mainbat_percent;
 }
 }
 
 
+#ifdef CONFIG_PM
 static struct platform_suspend_ops sharpsl_pm_ops = {
 static struct platform_suspend_ops sharpsl_pm_ops = {
 	.enter		= corgi_pxa_pm_enter,
 	.enter		= corgi_pxa_pm_enter,
 	.valid		= suspend_valid_only_mem,
 	.valid		= suspend_valid_only_mem,
 };
 };
+#endif
 
 
 static int __init sharpsl_pm_probe(struct platform_device *pdev)
 static int __init sharpsl_pm_probe(struct platform_device *pdev)
 {
 {
@@ -802,7 +809,9 @@ static int __init sharpsl_pm_probe(struct platform_device *pdev)
 
 
 	apm_get_power_status = sharpsl_apm_get_power_status;
 	apm_get_power_status = sharpsl_apm_get_power_status;
 
 
+#ifdef CONFIG_PM
 	suspend_set_ops(&sharpsl_pm_ops);
 	suspend_set_ops(&sharpsl_pm_ops);
+#endif
 
 
 	mod_timer(&sharpsl_pm.ac_timer, jiffies + msecs_to_jiffies(250));
 	mod_timer(&sharpsl_pm.ac_timer, jiffies + msecs_to_jiffies(250));
 
 

+ 1 - 0
arch/arm/mach-at91/board-afeb-9260v1.c

@@ -165,6 +165,7 @@ static struct at91_mmc_data __initdata afeb9260_mmc_data = {
 static struct i2c_board_info __initdata afeb9260_i2c_devices[] = {
 static struct i2c_board_info __initdata afeb9260_i2c_devices[] = {
 	{
 	{
 		I2C_BOARD_INFO("fm3130", 0x68),
 		I2C_BOARD_INFO("fm3130", 0x68),
+	}, {
 		I2C_BOARD_INFO("24c64", 0x50),
 		I2C_BOARD_INFO("24c64", 0x50),
 	},
 	},
 };
 };

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

@@ -13,6 +13,7 @@
 #ifndef __ASM_ARCH_AT91RM9200_GPIO_H
 #ifndef __ASM_ARCH_AT91RM9200_GPIO_H
 #define __ASM_ARCH_AT91RM9200_GPIO_H
 #define __ASM_ARCH_AT91RM9200_GPIO_H
 
 
+#include <linux/kernel.h>
 #include <asm/irq.h>
 #include <asm/irq.h>
 
 
 #define PIN_BASE		NR_AIC_IRQS
 #define PIN_BASE		NR_AIC_IRQS
@@ -220,6 +221,7 @@ static inline int gpio_request(unsigned gpio, const char *label)
 
 
 static inline void gpio_free(unsigned gpio)
 static inline void gpio_free(unsigned gpio)
 {
 {
+	might_sleep();
 }
 }
 
 
 extern int gpio_direction_input(unsigned gpio);
 extern int gpio_direction_input(unsigned gpio);

+ 4 - 2
arch/arm/mach-ep93xx/core.c

@@ -26,6 +26,7 @@
 #include <linux/serial_core.h>
 #include <linux/serial_core.h>
 #include <linux/device.h>
 #include <linux/device.h>
 #include <linux/mm.h>
 #include <linux/mm.h>
+#include <linux/dma-mapping.h>
 #include <linux/time.h>
 #include <linux/time.h>
 #include <linux/timex.h>
 #include <linux/timex.h>
 #include <linux/delay.h>
 #include <linux/delay.h>
@@ -449,12 +450,13 @@ static struct resource ep93xx_ohci_resources[] = {
 	},
 	},
 };
 };
 
 
+
 static struct platform_device ep93xx_ohci_device = {
 static struct platform_device ep93xx_ohci_device = {
 	.name		= "ep93xx-ohci",
 	.name		= "ep93xx-ohci",
 	.id		= -1,
 	.id		= -1,
 	.dev		= {
 	.dev		= {
-		.dma_mask		= (void *)0xffffffff,
-		.coherent_dma_mask	= 0xffffffff,
+		.dma_mask		= &ep93xx_ohci_device.dev.coherent_dma_mask,
+		.coherent_dma_mask	= DMA_BIT_MASK(32),
 	},
 	},
 	.num_resources	= ARRAY_SIZE(ep93xx_ohci_resources),
 	.num_resources	= ARRAY_SIZE(ep93xx_ohci_resources),
 	.resource	= ep93xx_ohci_resources,
 	.resource	= ep93xx_ohci_resources,

+ 3 - 0
arch/arm/mach-imx/include/mach/gpio.h

@@ -1,5 +1,6 @@
 #ifndef _IMX_GPIO_H
 #ifndef _IMX_GPIO_H
 
 
+#include <linux/kernel.h>
 #include <mach/imx-regs.h>
 #include <mach/imx-regs.h>
 
 
 #define IMX_GPIO_ALLOC_MODE_NORMAL	0
 #define IMX_GPIO_ALLOC_MODE_NORMAL	0
@@ -63,6 +64,8 @@ static inline int gpio_request(unsigned gpio, const char *label)
 
 
 static inline void gpio_free(unsigned gpio)
 static inline void gpio_free(unsigned gpio)
 {
 {
+	might_sleep();
+
 	imx_gpio_free(gpio);
 	imx_gpio_free(gpio);
 }
 }
 
 

+ 3 - 0
arch/arm/mach-ixp4xx/include/mach/gpio.h

@@ -25,6 +25,7 @@
 #ifndef __ASM_ARCH_IXP4XX_GPIO_H
 #ifndef __ASM_ARCH_IXP4XX_GPIO_H
 #define __ASM_ARCH_IXP4XX_GPIO_H
 #define __ASM_ARCH_IXP4XX_GPIO_H
 
 
+#include <linux/kernel.h>
 #include <mach/hardware.h>
 #include <mach/hardware.h>
 
 
 static inline int gpio_request(unsigned gpio, const char *label)
 static inline int gpio_request(unsigned gpio, const char *label)
@@ -34,6 +35,8 @@ static inline int gpio_request(unsigned gpio, const char *label)
 
 
 static inline void gpio_free(unsigned gpio)
 static inline void gpio_free(unsigned gpio)
 {
 {
+	might_sleep();
+
 	return;
 	return;
 }
 }
 
 

+ 3 - 0
arch/arm/mach-ks8695/include/mach/gpio.h

@@ -11,6 +11,8 @@
 #ifndef __ASM_ARCH_GPIO_H_
 #ifndef __ASM_ARCH_GPIO_H_
 #define __ASM_ARCH_GPIO_H_
 #define __ASM_ARCH_GPIO_H_
 
 
+#include <linux/kernel.h>
+
 #define KS8695_GPIO_0		0
 #define KS8695_GPIO_0		0
 #define KS8695_GPIO_1		1
 #define KS8695_GPIO_1		1
 #define KS8695_GPIO_2		2
 #define KS8695_GPIO_2		2
@@ -74,6 +76,7 @@ static inline int gpio_request(unsigned int pin, const char *label)
 
 
 static inline void gpio_free(unsigned int pin)
 static inline void gpio_free(unsigned int pin)
 {
 {
+	might_sleep();
 }
 }
 
 
 #endif
 #endif

+ 2 - 0
arch/arm/mach-mx3/mx31ads.c

@@ -35,6 +35,8 @@
 #include <mach/imx-uart.h>
 #include <mach/imx-uart.h>
 #include <mach/iomux-mx3.h>
 #include <mach/iomux-mx3.h>
 
 
+#include "devices.h"
+
 /*!
 /*!
  * @file mx31ads.c
  * @file mx31ads.c
  *
  *

+ 2 - 2
arch/arm/mach-mx3/pcm037.c

@@ -91,12 +91,12 @@ static struct map_desc pcm037_io_desc[] __initdata = {
 		.virtual	= AIPS1_BASE_ADDR_VIRT,
 		.virtual	= AIPS1_BASE_ADDR_VIRT,
 		.pfn		= __phys_to_pfn(AIPS1_BASE_ADDR),
 		.pfn		= __phys_to_pfn(AIPS1_BASE_ADDR),
 		.length		= AIPS1_SIZE,
 		.length		= AIPS1_SIZE,
-		.type		= MT_DEVICE
+		.type		= MT_DEVICE_NONSHARED
 	}, {
 	}, {
 		.virtual	= AIPS2_BASE_ADDR_VIRT,
 		.virtual	= AIPS2_BASE_ADDR_VIRT,
 		.pfn		= __phys_to_pfn(AIPS2_BASE_ADDR),
 		.pfn		= __phys_to_pfn(AIPS2_BASE_ADDR),
 		.length		= AIPS2_SIZE,
 		.length		= AIPS2_SIZE,
-		.type		= MT_DEVICE
+		.type		= MT_DEVICE_NONSHARED
 	},
 	},
 };
 };
 
 

+ 2 - 0
arch/arm/mach-ns9xxx/gpio.c

@@ -8,6 +8,7 @@
  * under the terms of the GNU General Public License version 2 as published by
  * under the terms of the GNU General Public License version 2 as published by
  * the Free Software Foundation.
  * the Free Software Foundation.
  */
  */
+#include <linux/kernel.h>
 #include <linux/compiler.h>
 #include <linux/compiler.h>
 #include <linux/init.h>
 #include <linux/init.h>
 #include <linux/spinlock.h>
 #include <linux/spinlock.h>
@@ -63,6 +64,7 @@ EXPORT_SYMBOL(gpio_request);
 
 
 void gpio_free(unsigned gpio)
 void gpio_free(unsigned gpio)
 {
 {
+	might_sleep();
 	clear_bit(gpio, gpiores);
 	clear_bit(gpio, gpiores);
 	return;
 	return;
 }
 }

+ 2 - 0
arch/arm/mach-orion5x/gpio.c

@@ -165,6 +165,8 @@ EXPORT_SYMBOL(gpio_request);
 
 
 void gpio_free(unsigned pin)
 void gpio_free(unsigned pin)
 {
 {
+	might_sleep();
+
 	if (pin >= GPIO_MAX || !test_bit(pin, gpio_valid)) {
 	if (pin >= GPIO_MAX || !test_bit(pin, gpio_valid)) {
 		pr_debug("%s: invalid GPIO %d\n", __func__, pin);
 		pr_debug("%s: invalid GPIO %d\n", __func__, pin);
 		return;
 		return;

+ 3 - 1
arch/arm/mach-pxa/corgi_pm.c

@@ -204,7 +204,9 @@ static struct sharpsl_charger_machinfo corgi_pm_machinfo = {
 	.read_devdata    = corgipm_read_devdata,
 	.read_devdata    = corgipm_read_devdata,
 	.charger_wakeup  = corgi_charger_wakeup,
 	.charger_wakeup  = corgi_charger_wakeup,
 	.should_wakeup   = corgi_should_wakeup,
 	.should_wakeup   = corgi_should_wakeup,
-#ifdef CONFIG_BACKLIGHT_CORGI
+#if defined(CONFIG_LCD_CORGI)
+	.backlight_limit = corgi_lcd_limit_intensity,
+#elif defined(CONFIG_BACKLIGHT_CORGI)
 	.backlight_limit = corgibl_limit_intensity,
 	.backlight_limit = corgibl_limit_intensity,
 #endif
 #endif
 	.charge_on_volt	  = SHARPSL_CHARGE_ON_VOLT,
 	.charge_on_volt	  = SHARPSL_CHARGE_ON_VOLT,

+ 1 - 0
arch/arm/mach-pxa/include/mach/sharpsl.h

@@ -26,6 +26,7 @@ struct corgits_machinfo {
  * SharpSL Backlight
  * SharpSL Backlight
  */
  */
 extern void corgibl_limit_intensity(int limit);
 extern void corgibl_limit_intensity(int limit);
+extern void corgi_lcd_limit_intensity(int limit);
 
 
 
 
 /*
 /*

+ 12 - 0
arch/arm/mach-pxa/spitz.c

@@ -385,6 +385,16 @@ static void __init spitz_init_spi(void)
 	if (err)
 	if (err)
 		goto err_free_2;
 		goto err_free_2;
 
 
+	err = gpio_direction_output(SPITZ_GPIO_ADS7846_CS, 1);
+	if (err)
+		goto err_free_3;
+	err = gpio_direction_output(SPITZ_GPIO_LCDCON_CS, 1);
+	if (err)
+		goto err_free_3;
+	err = gpio_direction_output(SPITZ_GPIO_MAX1111_CS, 1);
+	if (err)
+		goto err_free_3;
+
 	if (machine_is_akita()) {
 	if (machine_is_akita()) {
 		spitz_lcdcon_info.gpio_backlight_cont = AKITA_GPIO_BACKLIGHT_CONT;
 		spitz_lcdcon_info.gpio_backlight_cont = AKITA_GPIO_BACKLIGHT_CONT;
 		spitz_lcdcon_info.gpio_backlight_on = AKITA_GPIO_BACKLIGHT_ON;
 		spitz_lcdcon_info.gpio_backlight_on = AKITA_GPIO_BACKLIGHT_ON;
@@ -394,6 +404,8 @@ static void __init spitz_init_spi(void)
 	spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices));
 	spi_register_board_info(ARRAY_AND_SIZE(spitz_spi_devices));
 	return;
 	return;
 
 
+err_free_3:
+	gpio_free(SPITZ_GPIO_MAX1111_CS);
 err_free_2:
 err_free_2:
 	gpio_free(SPITZ_GPIO_LCDCON_CS);
 	gpio_free(SPITZ_GPIO_LCDCON_CS);
 err_free_1:
 err_free_1:

+ 3 - 1
arch/arm/mach-pxa/spitz_pm.c

@@ -198,7 +198,9 @@ struct sharpsl_charger_machinfo spitz_pm_machinfo = {
 	.read_devdata     = spitzpm_read_devdata,
 	.read_devdata     = spitzpm_read_devdata,
 	.charger_wakeup   = spitz_charger_wakeup,
 	.charger_wakeup   = spitz_charger_wakeup,
 	.should_wakeup    = spitz_should_wakeup,
 	.should_wakeup    = spitz_should_wakeup,
-#ifdef CONFIG_BACKLIGHT_CORGI
+#if defined(CONFIG_LCD_CORGI)
+	.backlight_limit = corgi_lcd_limit_intensity,
+#elif defined(CONFIG_BACKLIGHT_CORGI)
         .backlight_limit  = corgibl_limit_intensity,
         .backlight_limit  = corgibl_limit_intensity,
 #endif
 #endif
 	.charge_on_volt	  = SHARPSL_CHARGE_ON_VOLT,
 	.charge_on_volt	  = SHARPSL_CHARGE_ON_VOLT,

+ 1 - 1
arch/arm/mm/proc-xsc3.S

@@ -349,7 +349,7 @@ ENTRY(cpu_xsc3_switch_mm)
 cpu_xsc3_mt_table:
 cpu_xsc3_mt_table:
 	.long	0x00						@ L_PTE_MT_UNCACHED
 	.long	0x00						@ L_PTE_MT_UNCACHED
 	.long	PTE_EXT_TEX(1)					@ L_PTE_MT_BUFFERABLE
 	.long	PTE_EXT_TEX(1)					@ L_PTE_MT_BUFFERABLE
-	.long	PTE_CACHEABLE					@ L_PTE_MT_WRITETHROUGH
+	.long	PTE_EXT_TEX(5) | PTE_CACHEABLE			@ L_PTE_MT_WRITETHROUGH
 	.long	PTE_CACHEABLE | PTE_BUFFERABLE			@ L_PTE_MT_WRITEBACK
 	.long	PTE_CACHEABLE | PTE_BUFFERABLE			@ L_PTE_MT_WRITEBACK
 	.long	PTE_EXT_TEX(1) | PTE_BUFFERABLE			@ L_PTE_MT_DEV_SHARED
 	.long	PTE_EXT_TEX(1) | PTE_BUFFERABLE			@ L_PTE_MT_DEV_SHARED
 	.long	0x00						@ unused
 	.long	0x00						@ unused

+ 1 - 1
arch/arm/plat-mxc/gpio.c

@@ -188,7 +188,7 @@ static int mxc_gpio_get(struct gpio_chip *chip, unsigned offset)
 	struct mxc_gpio_port *port =
 	struct mxc_gpio_port *port =
 		container_of(chip, struct mxc_gpio_port, chip);
 		container_of(chip, struct mxc_gpio_port, chip);
 
 
-	return (__raw_readl(port->base + GPIO_DR) >> offset) & 1;
+	return (__raw_readl(port->base + GPIO_PSR) >> offset) & 1;
 }
 }
 
 
 static int mxc_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
 static int mxc_gpio_direction_input(struct gpio_chip *chip, unsigned offset)

+ 20 - 0
arch/arm/plat-mxc/include/mach/io.h

@@ -14,6 +14,26 @@
 /* Allow IO space to be anywhere in the memory */
 /* Allow IO space to be anywhere in the memory */
 #define IO_SPACE_LIMIT 0xffffffff
 #define IO_SPACE_LIMIT 0xffffffff
 
 
+#ifdef CONFIG_ARCH_MX3
+#define __arch_ioremap __mx3_ioremap
+#define __arch_iounmap __iounmap
+
+static inline void __iomem *
+__mx3_ioremap(unsigned long phys_addr, size_t size, unsigned int mtype)
+{
+	if (mtype == MT_DEVICE) {
+		/* Access all peripherals below 0x80000000 as nonshared device
+		 * but leave l2cc alone.
+		 */
+		if ((phys_addr < 0x80000000) && ((phys_addr < L2CC_BASE_ADDR) ||
+			(phys_addr >= L2CC_BASE_ADDR + L2CC_SIZE)))
+			mtype = MT_DEVICE_NONSHARED;
+	}
+
+	return __arm_ioremap(phys_addr, size, mtype);
+}
+#endif
+
 /* io address mapping macro */
 /* io address mapping macro */
 #define __io(a)			((void __iomem *)(a))
 #define __io(a)			((void __iomem *)(a))
 
 

+ 27 - 60
arch/cris/Makefile

@@ -23,12 +23,17 @@ mach-$(CONFIG_ETRAXFS) := fs
 
 
 ifneq ($(arch-y),)
 ifneq ($(arch-y),)
 SARCH := arch-$(arch-y)
 SARCH := arch-$(arch-y)
+inc := -Iarch/cris/include/$(SARCH)
+inc += -Iarch/cris/include/$(SARCH)/arch
 else
 else
 SARCH :=
 SARCH :=
+inc :=
 endif
 endif
 
 
 ifneq ($(mach-y),)
 ifneq ($(mach-y),)
 MACH := mach-$(mach-y)
 MACH := mach-$(mach-y)
+inc += -Iarch/cris/include/$(SARCH)/$(MACH)/
+inc += -Iarch/cris/include/$(SARCH)/$(MACH)/mach
 else
 else
 MACH :=
 MACH :=
 endif
 endif
@@ -39,95 +44,57 @@ OBJCOPYFLAGS := -O binary -R .note -R .comment -S
 
 
 CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
 CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE)
 
 
-KBUILD_AFLAGS += -mlinux -march=$(arch-y) -Iinclude/asm/arch/mach -Iinclude/asm/arch
-
-KBUILD_CFLAGS += -mlinux -march=$(arch-y) -pipe -Iinclude/asm/arch/mach -Iinclude/asm/arch
+KBUILD_AFLAGS += -mlinux -march=$(arch-y) $(inc)
+KBUILD_CFLAGS += -mlinux -march=$(arch-y) -pipe $(inc)
+KBUILD_CPPFLAGS += $(inc)
 
 
 ifdef CONFIG_FRAME_POINTER
 ifdef CONFIG_FRAME_POINTER
 KBUILD_CFLAGS := $(subst -fomit-frame-pointer,,$(KBUILD_CFLAGS)) -g
 KBUILD_CFLAGS := $(subst -fomit-frame-pointer,,$(KBUILD_CFLAGS)) -g
 KBUILD_CFLAGS += -fno-omit-frame-pointer
 KBUILD_CFLAGS += -fno-omit-frame-pointer
 endif
 endif
 
 
-head-y := arch/$(ARCH)/$(SARCH)/kernel/head.o
+head-y := arch/cris/$(SARCH)/kernel/head.o
 
 
 LIBGCC = $(shell $(CC) $(KBUILD_CFLAGS) -print-file-name=libgcc.a)
 LIBGCC = $(shell $(CC) $(KBUILD_CFLAGS) -print-file-name=libgcc.a)
 
 
-core-y		+= arch/$(ARCH)/kernel/ arch/$(ARCH)/mm/
-core-y		+= arch/$(ARCH)/$(SARCH)/kernel/ arch/$(ARCH)/$(SARCH)/mm/
+core-y		+= arch/cris/kernel/ arch/cris/mm/
+core-y		+= arch/cris/$(SARCH)/kernel/ arch/cris/$(SARCH)/mm/
 ifdef CONFIG_ETRAX_ARCH_V32
 ifdef CONFIG_ETRAX_ARCH_V32
-core-y		+= arch/$(ARCH)/$(SARCH)/$(MACH)/
+core-y		+= arch/cris/$(SARCH)/$(MACH)/
 endif
 endif
-drivers-y	+= arch/$(ARCH)/$(SARCH)/drivers/
-libs-y		+= arch/$(ARCH)/$(SARCH)/lib/ $(LIBGCC)
+drivers-y	+= arch/cris/$(SARCH)/drivers/
+libs-y		+= arch/cris/$(SARCH)/lib/ $(LIBGCC)
 
 
 # cris source path
 # cris source path
-SRC_ARCH              = $(srctree)/arch/$(ARCH)
+SRC_ARCH              = $(srctree)/arch/cris
 # cris object files path
 # cris object files path
-OBJ_ARCH              = $(objtree)/arch/$(ARCH)
+OBJ_ARCH              = $(objtree)/arch/cris
 
 
-boot := arch/$(ARCH)/boot
-MACHINE := arch/$(ARCH)/$(SARCH)
+boot := arch/cris/$(SARCH)/boot
+MACHINE := arch/cris/$(SARCH)
 
 
 all: zImage
 all: zImage
 
 
 zImage Image: vmlinux
 zImage Image: vmlinux
 	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
 	$(Q)$(MAKE) $(build)=$(boot) MACHINE=$(MACHINE) $(boot)/$@
 
 
-archprepare: $(SRC_ARCH)/.links $(srctree)/include/asm-$(ARCH)/.arch FORCE
-
-# Create some links to make all tools happy
-$(SRC_ARCH)/.links:
-	@rm -rf $(SRC_ARCH)/drivers
-	@ln -sfn $(SARCH)/drivers $(SRC_ARCH)/drivers
-	@rm -rf $(SRC_ARCH)/boot
-	@ln -sfn $(SARCH)/boot $(SRC_ARCH)/boot
-	@rm -rf $(SRC_ARCH)/lib
-	@ln -sfn $(SARCH)/lib $(SRC_ARCH)/lib
-	@rm -f $(SRC_ARCH)/arch/mach
-	@rm -rf $(SRC_ARCH)/arch
-	@ln -sfn $(SARCH) $(SRC_ARCH)/arch
-ifdef CONFIG_ETRAX_ARCH_V32
-	@ln -sfn ../$(SARCH)/$(MACH) $(SRC_ARCH)/arch/mach
-endif
-	@rm -rf $(SRC_ARCH)/kernel/vmlinux.lds.S
-	@ln -sfn ../$(SARCH)/vmlinux.lds.S $(SRC_ARCH)/kernel/vmlinux.lds.S
-	@rm -rf $(SRC_ARCH)/kernel/asm-offsets.c
-	@ln -sfn ../$(SARCH)/kernel/asm-offsets.c $(SRC_ARCH)/kernel/asm-offsets.c
-	@touch $@
-
-# Create link to sub arch includes
-$(srctree)/include/asm-$(ARCH)/.arch: $(wildcard include/config/arch/*.h)
-	@echo '  SYMLINK include/asm-$(ARCH)/arch -> include/asm-$(ARCH)/$(SARCH)'
-	@rm -f $(srctree)/include/asm-$(ARCH)/arch/mach
-	@rm -f $(srctree)/include/asm-$(ARCH)/arch
-	@ln -sf $(SARCH) $(srctree)/include/asm-$(ARCH)/arch
-ifdef CONFIG_ETRAX_ARCH_V32
-	@ln -sf $(MACH) $(srctree)/include/asm-$(ARCH)/arch/mach
-endif
-	@touch $@
+archprepare:
 
 
 archclean:
 archclean:
-	$(Q)if [ -e arch/$(ARCH)/boot ]; then \
-		$(MAKE) $(clean)=arch/$(ARCH)/boot; \
+	$(Q)if [ -e arch/cris/$(SARCH)/boot ]; then \
+		$(MAKE) $(clean)=arch/cris/$(SARCH)/boot; \
 	fi
 	fi
 
 
 CLEAN_FILES += \
 CLEAN_FILES += \
 	$(MACHINE)/boot/zImage \
 	$(MACHINE)/boot/zImage \
 	$(MACHINE)/boot/compressed/decompress.bin \
 	$(MACHINE)/boot/compressed/decompress.bin \
 	$(MACHINE)/boot/compressed/piggy.gz \
 	$(MACHINE)/boot/compressed/piggy.gz \
-	$(MACHINE)/boot/rescue/rescue.bin \
-	$(SRC_ARCH)/.links \
-	$(srctree)/include/asm-$(ARCH)/.arch
-
-MRPROPER_FILES += \
-	$(SRC_ARCH)/drivers \
-	$(SRC_ARCH)/boot \
-	$(SRC_ARCH)/lib \
-	$(SRC_ARCH)/arch \
-	$(SRC_ARCH)/kernel/vmlinux.lds.S \
-	$(SRC_ARCH)/kernel/asm-offsets.c
+	$(MACHINE)/boot/rescue/rescue.bin
+
+
+# MRPROPER_FILES +=
 
 
 define archhelp
 define archhelp
-  echo  '* zImage        - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
-  echo  '* Image         - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
+  echo  '* zImage        - Compressed kernel image (arch/cris/boot/zImage)'
+  echo  '* Image         - Uncompressed kernel image (arch/cris/boot/Image)'
 endef
 endef

+ 2 - 0
arch/cris/arch-v10/boot/.gitignore

@@ -0,0 +1,2 @@
+Image
+zImage

+ 1 - 1
arch/cris/arch-v10/boot/compressed/head.S

@@ -9,7 +9,7 @@
  */
  */
 
 
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 #define RAM_INIT_MAGIC 0x56902387
 #define RAM_INIT_MAGIC 0x56902387
 #define COMMAND_LINE_MAGIC 0x87109563
 #define COMMAND_LINE_MAGIC 0x87109563

+ 1 - 1
arch/cris/arch-v10/boot/compressed/misc.c

@@ -20,7 +20,7 @@
 
 
 
 
 #include <linux/types.h>
 #include <linux/types.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 /*
 /*
  * gzip declarations
  * gzip declarations

+ 1 - 1
arch/cris/arch-v10/boot/rescue/head.S

@@ -65,7 +65,7 @@
 #ifdef CONFIG_ETRAX_AXISFLASHMAP
 #ifdef CONFIG_ETRAX_AXISFLASHMAP
 
 
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 	;; The partitiontable is looked for at the first sector after the boot
 	;; The partitiontable is looked for at the first sector after the boot
 	;; sector. Sector size is 65536 bytes in all flashes we use.
 	;; sector. Sector size is 65536 bytes in all flashes we use.

+ 1 - 1
arch/cris/arch-v10/boot/rescue/kimagerescue.S

@@ -6,7 +6,7 @@
  */
  */
 
 
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 #define CODE_START 0x40004000
 #define CODE_START 0x40004000
 #define CODE_LENGTH 784
 #define CODE_LENGTH 784

+ 1 - 1
arch/cris/arch-v10/boot/rescue/testrescue.S

@@ -6,7 +6,7 @@
  */
  */
 
 
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 	.text
 	.text
 
 

+ 1 - 1
arch/cris/arch-v10/drivers/axisflashmap.c

@@ -26,7 +26,7 @@
 
 
 #include <asm/axisflashmap.h>
 #include <asm/axisflashmap.h>
 #include <asm/mmu.h>
 #include <asm/mmu.h>
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 #ifdef CONFIG_CRIS_LOW_MAP
 #ifdef CONFIG_CRIS_LOW_MAP
 #define FLASH_UNCACHED_ADDR  KSEG_8
 #define FLASH_UNCACHED_ADDR  KSEG_8

+ 2 - 2
arch/cris/arch-v10/drivers/ds1302.c

@@ -24,10 +24,10 @@
 
 
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
 #include <asm/system.h>
 #include <asm/system.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/rtc.h>
 #include <asm/rtc.h>
-#include <asm/arch/io_interface_mux.h>
+#include <arch/io_interface_mux.h>
 
 
 #include "i2c.h"
 #include "i2c.h"
 
 

+ 2 - 2
arch/cris/arch-v10/drivers/gpio.c

@@ -23,11 +23,11 @@
 #include <linux/interrupt.h>
 #include <linux/interrupt.h>
 
 
 #include <asm/etraxgpio.h>
 #include <asm/etraxgpio.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/system.h>
 #include <asm/system.h>
 #include <asm/irq.h>
 #include <asm/irq.h>
-#include <asm/arch/io_interface_mux.h>
+#include <arch/io_interface_mux.h>
 
 
 #define GPIO_MAJOR 120  /* experimental MAJOR number */
 #define GPIO_MAJOR 120  /* experimental MAJOR number */
 
 

+ 2 - 2
arch/cris/arch-v10/drivers/i2c.c

@@ -25,10 +25,10 @@
 #include <asm/etraxi2c.h>
 #include <asm/etraxi2c.h>
 
 
 #include <asm/system.h>
 #include <asm/system.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/delay.h>
 #include <asm/delay.h>
-#include <asm/arch/io_interface_mux.h>
+#include <arch/io_interface_mux.h>
 
 
 #include "i2c.h"
 #include "i2c.h"
 
 

+ 2 - 2
arch/cris/arch-v10/drivers/sync_serial.c

@@ -26,11 +26,11 @@
 #include <asm/irq.h>
 #include <asm/irq.h>
 #include <asm/dma.h>
 #include <asm/dma.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
 #include <asm/system.h>
 #include <asm/system.h>
 #include <asm/sync_serial.h>
 #include <asm/sync_serial.h>
-#include <asm/arch/io_interface_mux.h>
+#include <arch/io_interface_mux.h>
 
 
 /* The receiver is a bit tricky beacuse of the continuous stream of data.*/
 /* The receiver is a bit tricky beacuse of the continuous stream of data.*/
 /*                                                                       */
 /*                                                                       */

+ 0 - 47
arch/cris/arch-v10/kernel/asm-offsets.c

@@ -1,47 +0,0 @@
-#include <linux/sched.h>
-#include <asm/thread_info.h>
-
-/*
- * Generate definitions needed by assembly language modules.
- * This code generates raw asm output which is post-processed to extract
- * and format the required data.
- */
-
-#define DEFINE(sym, val) \
-        asm volatile("\n->" #sym " %0 " #val : : "i" (val))
-
-#define BLANK() asm volatile("\n->" : : )
-
-int main(void)
-{
-#define ENTRY(entry) DEFINE(PT_ ## entry, offsetof(struct pt_regs, entry))
-	ENTRY(orig_r10);
-	ENTRY(r13); 
-	ENTRY(r12); 
-	ENTRY(r11);
-        ENTRY(r10);
-        ENTRY(r9);
-        ENTRY(mof);
-        ENTRY(dccr);
-        ENTRY(srp);
-	BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TI_ ## entry, offsetof(struct thread_info, entry))
-        ENTRY(task);
-        ENTRY(flags);
-        ENTRY(preempt_count);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(THREAD_ ## entry, offsetof(struct thread_struct, entry))
-	ENTRY(ksp);
-        ENTRY(usp);
-        ENTRY(dccr);
-        BLANK();
-#undef ENTRY
-#define ENTRY(entry) DEFINE(TASK_ ## entry, offsetof(struct task_struct, entry))
-        ENTRY(pid);
-        BLANK();
-        DEFINE(LCLONE_VM, CLONE_VM);
-        DEFINE(LCLONE_UNTRACED, CLONE_UNTRACED);
-        return 0;
-}

+ 1 - 1
arch/cris/arch-v10/kernel/crisksyms.c

@@ -1,6 +1,6 @@
 #include <linux/module.h>
 #include <linux/module.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 /* Export shadow registers for the CPU I/O pins */
 /* Export shadow registers for the CPU I/O pins */
 EXPORT_SYMBOL(genconfig_shadow);
 EXPORT_SYMBOL(genconfig_shadow);

+ 1 - 1
arch/cris/arch-v10/kernel/debugport.c

@@ -19,7 +19,7 @@
 #include <linux/delay.h>
 #include <linux/delay.h>
 #include <linux/tty.h>
 #include <linux/tty.h>
 #include <asm/system.h>
 #include <asm/system.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/io.h>             /* Get SIMCOUT. */
 #include <asm/io.h>             /* Get SIMCOUT. */
 
 
 extern void reset_watchdog(void);
 extern void reset_watchdog(void);

+ 1 - 1
arch/cris/arch-v10/kernel/dma.c

@@ -7,7 +7,7 @@
 #include <linux/errno.h>
 #include <linux/errno.h>
 
 
 #include <asm/dma.h>
 #include <asm/dma.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 /* Macro to access ETRAX 100 registers */
 /* Macro to access ETRAX 100 registers */
 #define SETS(var, reg, field, val) var = (var & ~IO_MASK_(reg##_, field##_)) | \
 #define SETS(var, reg, field, val) var = (var & ~IO_MASK_(reg##_, field##_)) | \

+ 1 - 1
arch/cris/arch-v10/kernel/entry.S

@@ -23,7 +23,7 @@
 #include <linux/linkage.h>
 #include <linux/linkage.h>
 #include <linux/sys.h>
 #include <linux/sys.h>
 #include <asm/unistd.h>
 #include <asm/unistd.h>
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 #include <asm/errno.h>
 #include <asm/errno.h>
 #include <asm/thread_info.h>
 #include <asm/thread_info.h>
 #include <asm/asm-offsets.h>
 #include <asm/asm-offsets.h>

+ 1 - 1
arch/cris/arch-v10/kernel/fasttimer.c

@@ -24,7 +24,7 @@
 #include <asm/rtc.h>
 #include <asm/rtc.h>
 
 
 
 
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/fasttimer.h>
 #include <asm/fasttimer.h>
 #include <linux/proc_fs.h>
 #include <linux/proc_fs.h>
 
 

+ 1 - 1
arch/cris/arch-v10/kernel/head.S

@@ -10,7 +10,7 @@
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
 /* The IO_* macros use the ## token concatenation operator, so
 /* The IO_* macros use the ## token concatenation operator, so
    -traditional must not be used when assembling this file.  */
    -traditional must not be used when assembling this file.  */
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 #define CRAMFS_MAGIC 0x28cd3d45
 #define CRAMFS_MAGIC 0x28cd3d45
 #define RAM_INIT_MAGIC 0x56902387
 #define RAM_INIT_MAGIC 0x56902387

+ 2 - 2
arch/cris/arch-v10/kernel/io_interface_mux.c

@@ -11,9 +11,9 @@
 #include <linux/module.h>
 #include <linux/module.h>
 #include <linux/init.h>
 #include <linux/init.h>
 
 
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/io_interface_mux.h>
+#include <arch/io_interface_mux.h>
 
 
 
 
 #define DBG(s)
 #define DBG(s)

+ 1 - 1
arch/cris/arch-v10/kernel/kgdb.c

@@ -176,7 +176,7 @@
 #include <asm/setup.h>
 #include <asm/setup.h>
 #include <asm/ptrace.h>
 #include <asm/ptrace.h>
 
 
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/irq.h>
 #include <asm/irq.h>
 
 
 static int kgdb_started = 0;
 static int kgdb_started = 0;

+ 1 - 1
arch/cris/arch-v10/kernel/process.c

@@ -14,7 +14,7 @@
 #include <linux/err.h>
 #include <linux/err.h>
 #include <linux/fs.h>
 #include <linux/fs.h>
 #include <linux/slab.h>
 #include <linux/slab.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <linux/init.h>
 #include <linux/init.h>
 
 
 #ifdef CONFIG_ETRAX_GPIO
 #ifdef CONFIG_ETRAX_GPIO

+ 1 - 1
arch/cris/arch-v10/kernel/time.c

@@ -14,7 +14,7 @@
 #include <linux/sched.h>
 #include <linux/sched.h>
 #include <linux/init.h>
 #include <linux/init.h>
 #include <linux/mm.h>
 #include <linux/mm.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/types.h>
 #include <asm/types.h>
 #include <asm/signal.h>
 #include <asm/signal.h>
 #include <asm/io.h>
 #include <asm/io.h>

+ 1 - 1
arch/cris/arch-v10/kernel/traps.c

@@ -10,7 +10,7 @@
 
 
 #include <linux/ptrace.h>
 #include <linux/ptrace.h>
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 void
 void
 show_registers(struct pt_regs *regs)
 show_registers(struct pt_regs *regs)

+ 1 - 1
arch/cris/arch-v10/mm/fault.c

@@ -13,7 +13,7 @@
 #include <linux/mm.h>
 #include <linux/mm.h>
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
 #include <asm/pgtable.h>
 #include <asm/pgtable.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 #include <asm/mmu_context.h>
 #include <asm/mmu_context.h>
 
 
 /* debug of low-level TLB reload */
 /* debug of low-level TLB reload */

+ 1 - 1
arch/cris/arch-v10/mm/init.c

@@ -12,7 +12,7 @@
 #include <asm/mmu.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/mmu_context.h>
 #include <asm/mmu_context.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 extern void tlb_init(void);
 extern void tlb_init(void);
 
 

+ 1 - 1
arch/cris/arch-v10/mm/tlb.c

@@ -12,7 +12,7 @@
 
 
 #include <asm/tlb.h>
 #include <asm/tlb.h>
 #include <asm/mmu_context.h>
 #include <asm/mmu_context.h>
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 #define D(x)
 #define D(x)
 
 

+ 0 - 118
arch/cris/arch-v10/vmlinux.lds.S

@@ -1,118 +0,0 @@
-/* ld script to make the Linux/CRIS kernel
- * Authors: Bjorn Wesen (bjornw@axis.com)
- *
- * It is VERY DANGEROUS to fiddle around with the symbols in this
- * script. It is for example quite vital that all generated sections
- * that are used are actually named here, otherwise the linker will
- * put them at the end, where the init stuff is which is FREED after
- * the kernel has booted. 
- */	
-
-#include <asm-generic/vmlinux.lds.h>
-#include <asm/page.h>
-
-jiffies = jiffies_64;
-SECTIONS
-{
-	. = DRAM_VIRTUAL_BASE;
-	dram_start = .;
-	ibr_start = .;
-	. = . + 0x4000; /* see head.S and pages reserved at the start */
-
-	_text = .;                    /* Text and read-only data */
-	text_start = .;              /* lots of aliases */
-	_stext = .;
-	__stext = .;
-	.text : {
-		TEXT_TEXT
-		SCHED_TEXT
-		LOCK_TEXT
-		*(.fixup)
-		*(.text.__*)
-	}
-
-	_etext = . ;                  /* End of text section */ 
-	__etext = .;
-
-	. = ALIGN(4);                /* Exception table */
-  	__start___ex_table = .;
-  	__ex_table : { *(__ex_table) }
-  	__stop___ex_table = .;
-
-	RODATA
-
-	. = ALIGN (4);
-	___data_start = . ;
-	__Sdata = . ;
-	.data : {                     /* Data */
-		DATA_DATA
-	}
-	__edata = . ;                 /* End of data section */
-	_edata = . ;
-
-	. = ALIGN(PAGE_SIZE);	/* init_task and stack, must be aligned */
-  	.data.init_task : { *(.data.init_task) }
-
-	. = ALIGN(PAGE_SIZE);	/* Init code and data */
-  	__init_begin = .;
-	.init.text : { 
-		   _sinittext = .;
-		   INIT_TEXT
-		   _einittext = .;
-	}
-	.init.data : { INIT_DATA }
-  	. = ALIGN(16);
-  	__setup_start = .;
-  	.init.setup : { *(.init.setup) }
-  	__setup_end = .;
-  	.initcall.init : {
-		__initcall_start = .;
-		INITCALLS
-		__initcall_end = .;	
-	}
-
-	.con_initcall.init : {
-		__con_initcall_start = .;
-		*(.con_initcall.init)
-		__con_initcall_end = .;
-	}	
-	SECURITY_INIT
-
-#ifdef CONFIG_BLK_DEV_INITRD
-	.init.ramfs : {
-		__initramfs_start = .;
-		*(.init.ramfs)
-		__initramfs_end = .;
-	}
-#endif
-	__vmlinux_end = .;            /* last address of the physical file */
-
-	/*
-	 * We fill to the next page, so we can discard all init
-	 * pages without needing to consider what payload might be
-	 * appended to the kernel image.
-	 */
-	. = ALIGN(PAGE_SIZE);
-
-	__init_end = .;
-
-	__data_end = . ;              /* Move to _edata ? */
-	__bss_start = .;              /* BSS */
-	.bss : {
-		*(COMMON)
-		*(.bss)
-	}
-
-	. =  ALIGN (0x20);
-	_end = .;
-	__end = .;
-
-	/* Sections to be discarded */
-  	/DISCARD/ : {
-		EXIT_TEXT
-		EXIT_DATA
-		*(.exitcall.exit)
-        }
-
-	dram_end = dram_start + CONFIG_ETRAX_DRAM_SIZE*1024*1024;
-}

+ 16 - 4
arch/cris/arch-v32/boot/compressed/head.S

@@ -7,7 +7,7 @@
 
 
 #define ASSEMBLER_MACROS_ONLY
 #define ASSEMBLER_MACROS_ONLY
 #include <hwregs/asm/reg_map_asm.h>
 #include <hwregs/asm/reg_map_asm.h>
-#include <asm/arch/mach/startup.inc>
+#include <mach/startup.inc>
 
 
 #define RAM_INIT_MAGIC 0x56902387
 #define RAM_INIT_MAGIC 0x56902387
 #define COMMAND_LINE_MAGIC 0x87109563
 #define COMMAND_LINE_MAGIC 0x87109563
@@ -17,7 +17,7 @@
 	.globl	input_data
 	.globl	input_data
 
 
 	.text
 	.text
-start:
+_start:
 	di
 	di
 
 
 	;; Start clocks for used blocks.
 	;; Start clocks for used blocks.
@@ -28,7 +28,13 @@ start:
 	beq	dram_init_finished
 	beq	dram_init_finished
 	nop
 	nop
 
 
-#include "../../mach/dram_init.S"
+#if defined CONFIG_ETRAXFS
+#include "../../mach-fs/dram_init.S"
+#elif defined CONFIG_CRIS_MACH_ARTPEC3
+#include "../../mach-a3/dram_init.S"
+#else
+#error Only ETRAXFS and ARTPEC-3 supported!
+#endif
 
 
 dram_init_finished:
 dram_init_finished:
 
 
@@ -130,4 +136,10 @@ _cmd_line_addr:
 _boot_source:
 _boot_source:
 	.dword 0
 	.dword 0
 
 
-#include "../../mach/hw_settings.S"
+#if defined CONFIG_ETRAXFS
+#include "../../mach-fs/hw_settings.S"
+#elif defined CONFIG_CRIS_MACH_ARTPEC3
+#include "../../mach-a3/hw_settings.S"
+#else
+#error Only ETRAXFS and ARTPEC-3 supported!
+#endif

+ 1 - 1
arch/cris/arch-v32/drivers/mach-a3/gpio.c

@@ -33,7 +33,7 @@
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/system.h>
 #include <asm/system.h>
 #include <asm/irq.h>
 #include <asm/irq.h>
-#include <asm/arch/mach/pinmux.h>
+#include <mach/pinmux.h>
 
 
 #ifdef CONFIG_ETRAX_VIRTUAL_GPIO
 #ifdef CONFIG_ETRAX_VIRTUAL_GPIO
 #include "../i2c.h"
 #include "../i2c.h"

+ 1 - 1
arch/cris/arch-v32/drivers/mach-a3/nandflash.c

@@ -18,7 +18,7 @@
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/nand.h>
 #include <linux/mtd/nand.h>
 #include <linux/mtd/partitions.h>
 #include <linux/mtd/partitions.h>
-#include <asm/arch/memmap.h>
+#include <arch/memmap.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/pio_defs.h>
 #include <hwregs/pio_defs.h>

+ 1 - 1
arch/cris/arch-v32/drivers/mach-fs/nandflash.c

@@ -18,7 +18,7 @@
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/nand.h>
 #include <linux/mtd/nand.h>
 #include <linux/mtd/partitions.h>
 #include <linux/mtd/partitions.h>
-#include <asm/arch/memmap.h>
+#include <arch/memmap.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/gio_defs.h>
 #include <hwregs/gio_defs.h>

+ 1 - 1
arch/cris/arch-v32/drivers/pci/bios.c

@@ -1,6 +1,6 @@
 #include <linux/pci.h>
 #include <linux/pci.h>
 #include <linux/kernel.h>
 #include <linux/kernel.h>
-#include <asm/arch/hwregs/intr_vect.h>
+#include <arch/hwregs/intr_vect.h>
 
 
 void __devinit  pcibios_fixup_bus(struct pci_bus *b)
 void __devinit  pcibios_fixup_bus(struct pci_bus *b)
 {
 {

+ 2 - 2
arch/cris/arch-v32/kernel/cache.c

@@ -1,7 +1,7 @@
 #include <linux/module.h>
 #include <linux/module.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/cache.h>
-#include <asm/arch/hwregs/dma.h>
+#include <arch/cache.h>
+#include <arch/hwregs/dma.h>
 
 
 /* This file is used to workaround a cache bug, Guinness TR 106. */
 /* This file is used to workaround a cache bug, Guinness TR 106. */
 
 

+ 4 - 4
arch/cris/arch-v32/kernel/crisksyms.c

@@ -1,9 +1,9 @@
 #include <linux/module.h>
 #include <linux/module.h>
 #include <linux/irq.h>
 #include <linux/irq.h>
-#include <asm/arch/dma.h>
-#include <asm/arch/intmem.h>
-#include <asm/arch/mach/pinmux.h>
-#include <asm/arch/io.h>
+#include <arch/dma.h>
+#include <arch/intmem.h>
+#include <mach/pinmux.h>
+#include <arch/io.h>
 
 
 /* Functions for allocating DMA channels */
 /* Functions for allocating DMA channels */
 EXPORT_SYMBOL(crisv32_request_dma);
 EXPORT_SYMBOL(crisv32_request_dma);

+ 1 - 1
arch/cris/arch-v32/kernel/debugport.c

@@ -9,7 +9,7 @@
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/ser_defs.h>
 #include <hwregs/ser_defs.h>
 #include <hwregs/dma_defs.h>
 #include <hwregs/dma_defs.h>
-#include <asm/arch/mach/pinmux.h>
+#include <mach/pinmux.h>
 
 
 struct dbg_port
 struct dbg_port
 {
 {

+ 2 - 2
arch/cris/arch-v32/kernel/entry.S

@@ -24,8 +24,8 @@
 #include <asm/thread_info.h>
 #include <asm/thread_info.h>
 #include <asm/asm-offsets.h>
 #include <asm/asm-offsets.h>
 
 
-#include <asm/arch/hwregs/asm/reg_map_asm.h>
-#include <asm/arch/hwregs/asm/intr_vect_defs_asm.h>
+#include <hwregs/asm/reg_map_asm.h>
+#include <hwregs/asm/intr_vect_defs_asm.h>
 
 
 	;; Exported functions.
 	;; Exported functions.
 	.globl system_call
 	.globl system_call

+ 18 - 4
arch/cris/arch-v32/kernel/head.S

@@ -10,12 +10,13 @@
  * The macros found in mmu_defs_asm.h uses the ## concatenation operator, so
  * The macros found in mmu_defs_asm.h uses the ## concatenation operator, so
  * -traditional must not be used when assembling this file.
  * -traditional must not be used when assembling this file.
  */
  */
+#include <linux/autoconf.h>
+#include <arch/memmap.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/reg_rdwr.h>
-#include <asm/arch/memmap.h>
 #include <hwregs/intr_vect.h>
 #include <hwregs/intr_vect.h>
 #include <hwregs/asm/mmu_defs_asm.h>
 #include <hwregs/asm/mmu_defs_asm.h>
 #include <hwregs/asm/reg_map_asm.h>
 #include <hwregs/asm/reg_map_asm.h>
-#include <asm/arch/mach/startup.inc>
+#include <mach/startup.inc>
 
 
 #define CRAMFS_MAGIC 0x28cd3d45
 #define CRAMFS_MAGIC 0x28cd3d45
 #define JHEAD_MAGIC 0x1FF528A6
 #define JHEAD_MAGIC 0x1FF528A6
@@ -217,7 +218,14 @@ _inflash:
 	beq	_dram_initialized
 	beq	_dram_initialized
 	nop
 	nop
 
 
-#include "../mach/dram_init.S"
+#if defined CONFIG_ETRAXFS
+#include "../mach-fs/dram_init.S"
+#elif defined CONFIG_CRIS_MACH_ARTPEC3
+#include "../mach-a3/dram_init.S"
+#else
+#error Only ETRAXFS and ARTPEC-3 supported!
+#endif
+
 
 
 _dram_initialized:
 _dram_initialized:
 	;; Copy the text and data section to DRAM. This depends on that the
 	;; Copy the text and data section to DRAM. This depends on that the
@@ -472,4 +480,10 @@ swapper_pg_dir = 0xc0002000
 
 
 	.section ".init.data", "aw"
 	.section ".init.data", "aw"
 
 
-#include "../mach/hw_settings.S"
+#if defined CONFIG_ETRAXFS
+#include "../mach-fs/hw_settings.S"
+#elif defined CONFIG_CRIS_MACH_ARTPEC3
+#include "../mach-a3/hw_settings.S"
+#else
+#error Only ETRAXFS and ARTPEC-3 supported!
+#endif

+ 4 - 4
arch/cris/arch-v32/kernel/kgdb.c

@@ -174,10 +174,10 @@
 #include <asm/ptrace.h>
 #include <asm/ptrace.h>
 
 
 #include <asm/irq.h>
 #include <asm/irq.h>
-#include <asm/arch/hwregs/reg_map.h>
-#include <asm/arch/hwregs/reg_rdwr.h>
-#include <asm/arch/hwregs/intr_vect_defs.h>
-#include <asm/arch/hwregs/ser_defs.h>
+#include <arch/hwregs/reg_map.h>
+#include <arch/hwregs/reg_rdwr.h>
+#include <arch/hwregs/intr_vect_defs.h>
+#include <arch/hwregs/ser_defs.h>
 
 
 /* From entry.S. */
 /* From entry.S. */
 extern void gdb_handle_exception(void);
 extern void gdb_handle_exception(void);

+ 1 - 1
arch/cris/arch-v32/kernel/kgdb_asm.S

@@ -5,7 +5,7 @@
  * port exceptions for kernel debugging purposes.
  * port exceptions for kernel debugging purposes.
  */
  */
 
 
-#include <asm/arch/hwregs/intr_vect.h>
+#include <arch/hwregs/intr_vect.h>
 
 
 	;; Exported functions.
 	;; Exported functions.
 	.globl kgdb_handle_exception
 	.globl kgdb_handle_exception

+ 4 - 4
arch/cris/arch-v32/kernel/pinmux.c

@@ -11,10 +11,10 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/string.h>
 #include <linux/string.h>
 #include <linux/spinlock.h>
 #include <linux/spinlock.h>
-#include <asm/arch/hwregs/reg_map.h>
-#include <asm/arch/hwregs/reg_rdwr.h>
-#include <asm/arch/pinmux.h>
-#include <asm/arch/hwregs/pinmux_defs.h>
+#include <arch/hwregs/reg_map.h>
+#include <arch/hwregs/reg_rdwr.h>
+#include <arch/pinmux.h>
+#include <arch/hwregs/pinmux_defs.h>
 
 
 #undef DEBUG
 #undef DEBUG
 
 

+ 1 - 1
arch/cris/arch-v32/kernel/ptrace.c

@@ -17,7 +17,7 @@
 #include <asm/pgtable.h>
 #include <asm/pgtable.h>
 #include <asm/system.h>
 #include <asm/system.h>
 #include <asm/processor.h>
 #include <asm/processor.h>
-#include <asm/arch/hwregs/supp_reg.h>
+#include <arch/hwregs/supp_reg.h>
 
 
 /*
 /*
  * Determines which bits in CCS the user has access to.
  * Determines which bits in CCS the user has access to.

+ 2 - 2
arch/cris/arch-v32/kernel/signal.c

@@ -18,8 +18,8 @@
 #include <asm/processor.h>
 #include <asm/processor.h>
 #include <asm/ucontext.h>
 #include <asm/ucontext.h>
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
-#include <asm/arch/ptrace.h>
-#include <asm/arch/hwregs/cpu_vect.h>
+#include <arch/ptrace.h>
+#include <arch/hwregs/cpu_vect.h>
 
 
 extern unsigned long cris_signal_return_page;
 extern unsigned long cris_signal_return_page;
 
 

+ 5 - 5
arch/cris/arch-v32/lib/nand_init.S

@@ -22,11 +22,11 @@
 ##
 ##
 ##=============================================================================
 ##=============================================================================
 
 
-#include <asm/arch/hwregs/asm/reg_map_asm.h>
-#include <asm/arch/hwregs/asm/gio_defs_asm.h>
-#include <asm/arch/hwregs/asm/pinmux_defs_asm.h>
-#include <asm/arch/hwregs/asm/bif_core_defs_asm.h>
-#include <asm/arch/hwregs/asm/config_defs_asm.h>
+#include <arch/hwregs/asm/reg_map_asm.h>
+#include <arch/hwregs/asm/gio_defs_asm.h>
+#include <arch/hwregs/asm/pinmux_defs_asm.h>
+#include <arch/hwregs/asm/bif_core_defs_asm.h>
+#include <arch/hwregs/asm/config_defs_asm.h>
 
 
 ;; There are 8-bit NAND flashes and 16-bit NAND flashes.
 ;; There are 8-bit NAND flashes and 16-bit NAND flashes.
 ;; We need to treat them slightly different.
 ;; We need to treat them slightly different.

+ 1 - 1
arch/cris/arch-v32/mach-a3/dma.c

@@ -2,7 +2,7 @@
 
 
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/spinlock.h>
 #include <linux/spinlock.h>
-#include <asm/arch/mach/dma.h>
+#include <mach/dma.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/reg_rdwr.h>
 #include <hwregs/marb_defs.h>
 #include <hwregs/marb_defs.h>

+ 1 - 1
arch/cris/arch-v32/mach-a3/io.c

@@ -12,7 +12,7 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/module.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/mach/pinmux.h>
+#include <mach/pinmux.h>
 #include <hwregs/gio_defs.h>
 #include <hwregs/gio_defs.h>
 
 
 struct crisv32_ioport crisv32_ioports[] = {
 struct crisv32_ioport crisv32_ioports[] = {

+ 3 - 3
arch/cris/arch-v32/mach-fs/cpufreq.c

@@ -2,9 +2,9 @@
 #include <linux/module.h>
 #include <linux/module.h>
 #include <linux/cpufreq.h>
 #include <linux/cpufreq.h>
 #include <hwregs/reg_map.h>
 #include <hwregs/reg_map.h>
-#include <asm/arch/hwregs/reg_rdwr.h>
-#include <asm/arch/hwregs/config_defs.h>
-#include <asm/arch/hwregs/bif_core_defs.h>
+#include <arch/hwregs/reg_rdwr.h>
+#include <arch/hwregs/config_defs.h>
+#include <arch/hwregs/bif_core_defs.h>
 
 
 static int
 static int
 cris_sdram_freq_notifier(struct notifier_block *nb, unsigned long val,
 cris_sdram_freq_notifier(struct notifier_block *nb, unsigned long val,

+ 1 - 1
arch/cris/arch-v32/mach-fs/dma.c

@@ -10,7 +10,7 @@
 #include <hwregs/strmux_defs.h>
 #include <hwregs/strmux_defs.h>
 #include <linux/errno.h>
 #include <linux/errno.h>
 #include <asm/system.h>
 #include <asm/system.h>
-#include <asm/arch/mach/arbiter.h>
+#include <mach/arbiter.h>
 
 
 static char used_dma_channels[MAX_DMA_CHANNELS];
 static char used_dma_channels[MAX_DMA_CHANNELS];
 static const char *used_dma_channels_users[MAX_DMA_CHANNELS];
 static const char *used_dma_channels_users[MAX_DMA_CHANNELS];

+ 2 - 2
arch/cris/arch-v32/mach-fs/io.c

@@ -12,8 +12,8 @@
 #include <linux/kernel.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/module.h>
 #include <asm/io.h>
 #include <asm/io.h>
-#include <asm/arch/pinmux.h>
-#include <asm/arch/hwregs/gio_defs.h>
+#include <mach/pinmux.h>
+#include <hwregs/gio_defs.h>
 
 
 #ifndef DEBUG
 #ifndef DEBUG
 #define DEBUG(x)
 #define DEBUG(x)

+ 2 - 2
arch/cris/arch-v32/mach-fs/vcs_hook.c

@@ -5,8 +5,8 @@
 
 
 #include "vcs_hook.h"
 #include "vcs_hook.h"
 #include <stdarg.h>
 #include <stdarg.h>
-#include <asm/arch-v32/hwregs/reg_map.h>
-#include <asm/arch-v32/hwregs/intr_vect_defs.h>
+#include <arch-v32/hwregs/reg_map.h>
+#include <arch-v32/hwregs/intr_vect_defs.h>
 
 
 #define HOOK_TRIG_ADDR     0xb7000000	/* hook cvlog model reg address */
 #define HOOK_TRIG_ADDR     0xb7000000	/* hook cvlog model reg address */
 #define HOOK_MEM_BASE_ADDR 0xa0000000	/* csp4 (shared mem) base addr */
 #define HOOK_MEM_BASE_ADDR 0xa0000000	/* csp4 (shared mem) base addr */

+ 2 - 2
arch/cris/arch-v32/mm/init.c

@@ -16,8 +16,8 @@
 #include <asm/mmu.h>
 #include <asm/mmu.h>
 #include <asm/io.h>
 #include <asm/io.h>
 #include <asm/mmu_context.h>
 #include <asm/mmu_context.h>
-#include <asm/arch/hwregs/asm/mmu_defs_asm.h>
-#include <asm/arch/hwregs/supp_reg.h>
+#include <arch/hwregs/asm/mmu_defs_asm.h>
+#include <arch/hwregs/supp_reg.h>
 
 
 extern void tlb_init(void);
 extern void tlb_init(void);
 
 

+ 2 - 2
arch/cris/arch-v32/mm/tlb.c

@@ -9,8 +9,8 @@
 
 
 #include <asm/tlb.h>
 #include <asm/tlb.h>
 #include <asm/mmu_context.h>
 #include <asm/mmu_context.h>
-#include <asm/arch/hwregs/asm/mmu_defs_asm.h>
-#include <asm/arch/hwregs/supp_reg.h>
+#include <arch/hwregs/asm/mmu_defs_asm.h>
+#include <arch/hwregs/supp_reg.h>
 
 
 #define UPDATE_TLB_SEL_IDX(val)					\
 #define UPDATE_TLB_SEL_IDX(val)					\
 do {								\
 do {								\

+ 0 - 0
include/asm-cris/arch-v10/Kbuild → arch/cris/include/arch-v10/arch/Kbuild


+ 0 - 0
include/asm-cris/arch-v10/atomic.h → arch/cris/include/arch-v10/arch/atomic.h


+ 0 - 0
include/asm-cris/arch-v10/bitops.h → arch/cris/include/arch-v10/arch/bitops.h


+ 0 - 0
include/asm-cris/arch-v10/bug.h → arch/cris/include/arch-v10/arch/bug.h


+ 0 - 0
include/asm-cris/arch-v10/byteorder.h → arch/cris/include/arch-v10/arch/byteorder.h


+ 0 - 0
include/asm-cris/arch-v10/cache.h → arch/cris/include/arch-v10/arch/cache.h


+ 0 - 0
include/asm-cris/arch-v10/checksum.h → arch/cris/include/arch-v10/arch/checksum.h


+ 0 - 0
include/asm-cris/arch-v10/delay.h → arch/cris/include/arch-v10/arch/delay.h


+ 0 - 0
include/asm-cris/arch-v10/dma.h → arch/cris/include/arch-v10/arch/dma.h


+ 0 - 0
include/asm-cris/arch-v10/elf.h → arch/cris/include/arch-v10/arch/elf.h


+ 1 - 1
include/asm-cris/arch-v10/io.h → arch/cris/include/arch-v10/arch/io.h

@@ -1,7 +1,7 @@
 #ifndef _ASM_ARCH_CRIS_IO_H
 #ifndef _ASM_ARCH_CRIS_IO_H
 #define _ASM_ARCH_CRIS_IO_H
 #define _ASM_ARCH_CRIS_IO_H
 
 
-#include <asm/arch/svinto.h>
+#include <arch/svinto.h>
 
 
 /* Etrax shadow registers - which live in arch/cris/kernel/shadows.c */
 /* Etrax shadow registers - which live in arch/cris/kernel/shadows.c */
 
 

+ 0 - 0
include/asm-cris/arch-v10/io_interface_mux.h → arch/cris/include/arch-v10/arch/io_interface_mux.h


+ 1 - 1
include/asm-cris/arch-v10/irq.h → arch/cris/include/arch-v10/arch/irq.h

@@ -5,7 +5,7 @@
 #ifndef _ASM_ARCH_IRQ_H
 #ifndef _ASM_ARCH_IRQ_H
 #define _ASM_ARCH_IRQ_H
 #define _ASM_ARCH_IRQ_H
 
 
-#include <asm/arch/sv_addr_ag.h>
+#include <arch/sv_addr_ag.h>
 
 
 #define NR_IRQS 32
 #define NR_IRQS 32
 
 

+ 0 - 0
include/asm-cris/arch-v10/memmap.h → arch/cris/include/arch-v10/arch/memmap.h


+ 0 - 0
include/asm-cris/arch-v10/mmu.h → arch/cris/include/arch-v10/arch/mmu.h


Некоторые файлы не были показаны из-за большого количества измененных файлов