aboutsummaryrefslogtreecommitdiffstats
path: root/arch
Commit message (Collapse)AuthorAgeFilesLines
* [SPARC64]: Fix register usage in xor_raid_4().David S. Miller2007-10-131-6/+6
| | | | | | | | | Some typos led to using %i6/%i7 instead of %l6/%l7 in loads which is really really bad because those are the frame pointer and return PC. Based upon a raid5 crash report by Bertrand Joel. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: Kill pci_memspace_mask.David S. Miller2007-10-136-52/+30
| | | | | | | It is totally unnecessary as the needed information is properly encoded in the resources. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: Consolidate MSI support code.David S. Miller2007-10-136-775/+700
| | | | | | | | | | | | | | | | This also makes us use the MSI queues correctly. Each MSI queue is serviced by a normal sun4u/sun4v INO interrupt handler. This handler runs the MSI queue and dispatches the virtual interrupts indicated by arriving MSIs in that MSI queue. All of the common logic is placed in pci_msi.c, with callbacks to handle the PCI controller specific aspects of the operations. This common infrastructure will make it much easier to add MSG support. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC/64]: Move of_platform_driver initialisations: arch/sparc{,64}.Stephen Rothwell2007-10-134-4/+12
| | | | | | | | We no longer initialise the name field of the of_platform_driver, but use the name field of the embedded device_driver's name field instead. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: Fix bugs in SYSV IPC handling in 64-bit processes.David S. Miller2007-10-131-11/+4
| | | | | | | | | | | | | | | | | Thanks to Tom Callaway for the excellent bug report and test case. sys_ipc() has several problems, most to due with semaphore call handling: 1) 'err' return should be a 'long' 2) "union semun" is passed in a register on 64-bit compared to 32-bit which provides it on the stack and therefore by reference 3) Second and third arguments to SEMCTL are swapped compared to 32-bit. Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC/64]: Prepare to remove of_platform_driver name.Stephen Rothwell2007-10-132-2/+8
| | | | | | | | | | | | | The name field of of_platform_driver is just copied into the included device_driver. By not overriding an already initialised device_driver name, we can convert the drivers over time to stop using the of_platform_driver name. Also we were not copying the owner field from of_platform_driver, so do the same with it. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC32]: Add irqflags.h to sparc32 and use it from generic code.Robert Reif2007-10-132-6/+10
| | | | | | | | | | | | | | | | | | | Added asm-sparc/irqflags.h and moved irq related code from system.h to it. Renamed local_irq functions to raw_local_irq in irq.c. Modified system.h to include linux/irqflags.h which includes asm/irqflags.h. Added TRACE_IRQFLAGS_SUPPORT to Kconfig.debug. This is the first step in adding IRQ-flags state tracing as outlined in Documentation/irqflags-tracing.txt. These changes should be harmless because they just move things around and rename them. The next step is making the lowlevel entry code modifications which to be honest are beyond my capabilities at this point. Boot tested on an ss20 running an SMP kernel. Signed-off-by: Robert Reif <reif@earthlink.net> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: beautify vmlinux.ldsSam Ravnborg2007-10-131-89/+122
| | | | | | | | | | | | | Apply a consistent format to vmlinux.lds. The file is now to some degree readable. In addition move several labels inside the braces such that they reflect the actual start address of a section. Without this the label would not reflect if ld added alignment. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC]: beautify vmlinux.ldsSam Ravnborg2007-10-131-72/+93
| | | | | | | | | | | Make vmlinux.lds almost readable. When going through the file fixed the following: - Use PAGE_SIZE as replacement for hardcoded 4096 - Moves label definitions inside {} to avoid ld alignment that may be added between label and section Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* [SPARC64]: Enable MSI on sun4u Fire PCI-E controllers.David S. Miller2007-10-132-1/+516
| | | | | | | | The support code is identical to the hypervisor sun4v stuff, just replacing the hypervisor calls with register reads and writes in the Fire controller. Signed-off-by: David S. Miller <davem@davemloft.net>
* i2c/tps65010: New-style driver updates, part 2David Brownell2007-10-133-5/+143
| | | | | | | | | | | | | Switch the tps65010 driver into a "new-style" I2C driver, and convert all of its in-tree users (board support for OSK, H2, H3) accordingly. That accounts for most of the board-specific code in this driver; the rest of that code is now moved into board-specific initcalls. Also remove some of the many now-superfluous #includes. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Jean Delvare <khali@linux-fr.org>
* missing includes in arch/powerpc/platforms/52xx/lite5200.cAl Viro2007-10-131-0/+2
| | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds2007-10-132-51/+51
|\ | | | | | | | | | | | | * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] SMP: Fix use of cpumasks. [MIPS] Revert "[MIPS] tlbex.c: Cleanup __init usage." [MIPS] CFE: Add missing parenthesis.
| * [MIPS] SMP: Fix use of cpumasks.Ralf Baechle2007-10-131-3/+3
| | | | | | | | | | | | Noticed by Nick Piggin <nickpiggin@yahoo.com.au>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Revert "[MIPS] tlbex.c: Cleanup __init usage."Ralf Baechle2007-10-131-48/+48
| | | | | | | | | | | | | | | | This reverts commit aaf76a3245c02faba51c96b9a340c14d6bb0dcc0. As requested by ranck Bui-Huu <fbuihuu@gmail.com>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | Delete filenames in comments.Dave Jones2007-10-1349-97/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the x86 merge, lots of files that referenced their own filenames are no longer correct. Rather than keep them up to date, just delete them, as they add no real value. Additionally: - fix up comment formatting in scx200_32.c - Remove a credit from myself in setup_64.c from a time when we had no SCM - remove longwinded history from tsc_32.c which can be figured out from git. Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | minimal build fixes for uml (fallout from x86 merge)Al Viro2007-10-136-11/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a) include/asm-um/arch can't just point to include/asm-$(SUBARCH) now b) arch/{i386,x86_64}/crypto are merged now c) subarch-obj needed changes d) cpufeature_64.h should pull "cpufeature_32.h", not <asm/cpufeature_32.h> since it can be included from asm-um/cpufeature.h e) in case of uml-i386 we need CONFIG_X86_32 for make and gcc, but not for Kconfig f) sysctl.c shouldn't do vdso_enabled for uml-i386 (actually, that one should be registered from corresponding arch/*/kernel/*, with ifdef going away; that's a separate patch, though). With that and with Stephen's patch ("[PATCH net-2.6] uml: hard_header fix") we have uml allmodconfig building both on i386 and amd64. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh64-2.6Linus Torvalds2007-10-1325-455/+1634
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh64-2.6: sh64: mach-cayman: Build fixes. sh64: Symbol export fixups. sh64: linker script tidying and alignment fixups. sh64: Set KBUILD_IMAGE to make the rpm target happy. sh64: Kill off obsolete linux/blk.h reference. sh64: cleanup struct irqaction initializers. sh64: Kill off dead gdb stub symbol. sh64: alphanumeric display only on Cayman. sh64: Add defconfigs for mach-sim and mach-harp. sh64: update cayman defconfig. sh64: Tidy up Kconfig dependencies. sh64: Move consistent DMA routines to arch/sh64/mm/. sh64: Some symbol exports and build fixes. sh64: mach-sim: Build fixes. sh64: mach-harp: Build fixes. sh64: Kill off duplicate frame pointer option. sh64: Kill off dead ROM-RAM and generic boards. sh64: Tidy up includes for Cayman board. sh64: Move *_p() I/O routine variants to io.h.
| * | sh64: mach-cayman: Build fixes.Paul Mundt2007-10-092-6/+207
| | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Symbol export fixups.Paul Mundt2007-10-091-5/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Kill off the __div_table reference, modern compilers don't have it, and old compilers can't build the sh64 kernel anyways. __copy_user also needs to be exported to satisfy module builds. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: linker script tidying and alignment fixups.Paul Mundt2007-10-091-51/+9
| | | | | | | | | | | | | | | | | | | | | Use more of the generic section helpers, and get the alignment for some of the sections reduced. Follows the sh change. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Set KBUILD_IMAGE to make the rpm target happy.Paul Mundt2007-10-091-2/+3
| | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Kill off obsolete linux/blk.h reference.Paul Mundt2007-10-091-4/+0
| | | | | | | | | | | | | | | | | | | | | This is just dead code, kill it off.. Reported-by: Robert P. J. Day <rpjday@mindspring.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: cleanup struct irqaction initializers.Thomas Gleixner2007-10-031-2/+12
| | | | | | | | | | | | | | | | | | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Kill off dead gdb stub symbol.Paul Mundt2007-10-011-3/+0
| | | | | | | | | | | | | | | | | | | | | There's no supported GDB stub in the kernel, kill off the dead config option for it. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: alphanumeric display only on Cayman.Paul Mundt2007-10-011-0/+1
| | | | | | | | | | | | | | | | | | | | | Dependency cleanup. The non-cayman boards don't have the mach callbacks for this and build error badness ensues. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Add defconfigs for mach-sim and mach-harp.Paul Mundt2007-10-012-0/+1322
| | | | | | | | | | | | | | | | | | defconfigs for the simulator and ST50-HARP. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: update cayman defconfig.Paul Mundt2007-10-011-38/+10
| | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Tidy up Kconfig dependencies.Paul Mundt2007-10-011-26/+19
| | | | | | | | | | | | | | | | | | | | | | | | Now that the ROM-RAM and generic boards are killed off, refactor the dependencies accordingly. Those were the only special cases, so all of the Kconfig dependency hell gets much cleaner as a result. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Move consistent DMA routines to arch/sh64/mm/.Paul Mundt2007-10-013-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The consistent DMA stuff was evolved from the old PCI DMA mapping functions. As this has been overhauled, it's something that is used by the generic DMA mapping code, and thus, has no intrinsic PCI dependence. Move the routines somewhere more sensible (same place as sh), and fix up the build for CONFIG_PCI=n in the process. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Some symbol exports and build fixes.Paul Mundt2007-10-016-28/+23
| | | | | | | | | | | | | | | | | | | | | | | | This fixes up misc build issues that were hit on the non-cayman boards. Additionally, quite a few symbols needed to be exported to fix the module build. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: mach-sim: Build fixes.Paul Mundt2007-10-012-58/+8
| | | | | | | | | | | | | | | | | | Follow the mach-harp changes to get the simulator support building. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: mach-harp: Build fixes.Paul Mundt2007-10-012-30/+8
| | | | | | | | | | | | | | | | | | Get the ST50-HARP building again. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Kill off duplicate frame pointer option.Paul Mundt2007-10-011-9/+0
| | | | | | | | | | | | | | | | | | | | | This is already enabled through lib/Kconfig.debug, kill off the architecture specific one. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Kill off dead ROM-RAM and generic boards.Paul Mundt2007-10-014-162/+0
| | | | | | | | | | | | | | | | | | | | | | | | The generic board stubs were never added, and the ROM-RAM boards never made it in to the wild. Neither one has any users, and both are utterly broken in-tree (likely since 2.4). Kill them both off. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Tidy up includes for Cayman board.Paul Mundt2007-10-011-9/+0
| | | | | | | | | | | | | | | | | | | | | There were quite a few left over includes from code that was removed long ago, rip out the stuff we no longer need. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | sh64: Move *_p() I/O routine variants to io.h.Paul Mundt2007-10-011-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were implemented using an ugly macro for just simple wrapping, so we just make the wrapping explicit and move it to io.h instead. Also fixes up some modules: CC [M] drivers/net/8390.o In file included from drivers/net/8390.c:6: drivers/net/lib8390.c: In function 'ei_start_xmit': drivers/net/lib8390.c:329: error: implicit declaration of function 'outb_p' drivers/net/lib8390.c: In function '__ei_interrupt': drivers/net/lib8390.c:457: error: implicit declaration of function 'inb_p' make[2]: *** [drivers/net/8390.o] Error 1 make[1]: *** [drivers/net] Error 2 Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | | Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6Linus Torvalds2007-10-1399-3034/+7127
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (124 commits) sh: allow building for both r2d boards in same binary. sh: fix r2d board detection sh: Discard .exit.text/.exit.data at runtime. sh: Fix up some section alignments in linker script. sh: Fix SH-4 DMAC CHCR masking. sh: Rip out left-over nommu cond syscall cruft. sh: Make kgdb i-cache flushing less inept. sh: kgdb section mismatches and tidying. sh: cleanup struct irqaction initializers. sh: early_printk tidying. video: pvr2fb: Add TV (RGB) support to Dreamcast PVR driver. sh: Conditionalize gUSA support. sh: Follow gUSA preempt changes in __switch_to(). sh: Tidy up gUSA preempt handling. sh: __copy_user() optimizations for small copies. sh: clkfwk: Support multi-level clock propagation. sh: Fix URAM start address on SH7785. sh: Use boot_cpu_data for CPU probe. sh: Support extended mode TLB on SH-X3. sh: Bump MAX_ACTIVE_REGIONS for SH7785. ...
| * | | sh: allow building for both r2d boards in same binary.Magnus Damm2007-10-101-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables building for both R2D-PLUS and R2D-1 boards. All code is already in place except for the Kconfig limitation. This is useful if you want to run the same binary on both R2D-PLUS and R2D-1 boards. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: fix r2d board detectionMagnus Damm2007-10-101-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the R2D-PLUS and R2D-1 board detection code. Tested on two R2D-PLUS and two R2D-1 boards. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Discard .exit.text/.exit.data at runtime.Paul Mundt2007-10-091-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | These were previously discarded at link time, though as with MIPS we keep them around until runtime to satisfy .rodata references. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Fix up some section alignments in linker script.Paul Mundt2007-10-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the PERCPU() macro introduction .data.cacheline_aligned was inhereting PAGE_SIZE alignment, fix that up for L1_CACHE_BYTES again. Likewise, the initramfs section wants PAGE_SIZE alignment. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Rip out left-over nommu cond syscall cruft.Paul Mundt2007-10-041-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At some point way back when (2.5 or so) quite a few syscalls hadn't yet been wired up as cond_syscalls(), so we opted to just do direct sys_ni_syscall wrapping in the assembly code instead. That's all been fixed up since then, so we can drop the wrapping. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Make kgdb i-cache flushing less inept.Paul Mundt2007-10-031-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | kgdb had its own ranged I-cache flushing routine that attempted to duplicate the flush_icache_range() functionality, but managed to do an explicit D-cache writeback & invalidate twice on SH-4. This is a no-op for SH-3, and the flush_icache_range() semantics already do what kgdb was feebly attempting to do already, so just move over to that and kill off the wrapper. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: kgdb section mismatches and tidying.Paul Mundt2007-10-031-42/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The kgdb console setup was callable from a left-over deferred initialization path, which in turn depends on __init symbols. Since the deferred initialization was removed some time ago, kill off the rest of those remnants and move kgdb_init() and friends to __init. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: cleanup struct irqaction initializers.Thomas Gleixner2007-10-033-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: early_printk tidying.Paul Mundt2007-10-021-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | setup_early_printk() can be static, and with that, we can kill off the early initialization variable and move the CON_BOOT check in to the function body. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Conditionalize gUSA support.Paul Mundt2007-09-284-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This conditionalizes gUSA support. gUSA is not supported on SMP configurations, and it's not necessary there anyways due to having other atomicity options (ie, movli.l/movco.l). Anything implementing the LL/SC semantics (all SH-4A CPUs) can switch to userspace atomicity implementations without requiring gUSA. This is left default-enabled on all UP so that glibc doesn't break. Those that know what they are doing can disable this explicitly. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Follow gUSA preempt changes in __switch_to().Paul Mundt2007-09-281-3/+3
| | | | | | | | | | | | | | | | Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * | | sh: Tidy up gUSA preempt handling.Paul Mundt2007-09-281-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently gUSA toggles hardirqs to disable preemption in the signal handler. Make the preemption toggling explicit, and kill off some CONFIG_PREEMPT ifdefs in the process. Signed-off-by: Paul Mundt <lethal@linux-sh.org>