aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linusLinus Torvalds2008-02-19
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] BCM47XX: Use new SSB SPROM data structure [MIPS] WGT634U: Register MTD as platform device. [MIPS] BCM47xx: Add defconfig file. [MIPS] RM: fix EISA=n compilation [MIPS] PCI: Coding style fixes for pcibios_enable_resources. [MIPS] PCI: Port i386 PCI fixes. [MIPS] Qemu: finish platform removal [MIPS] Wire up the timerfd_*() o32 system calls [MIPS] IP28: Add defconfig file [MIPS] SB1: Fix CONFIG_SIBYTE_DMA_PAGEOPS build failure. [MIPS] BCM1480: Remove stray function call resulting in infinite recursion [MIPS] Fix buggy invocations of kmap_coherent() [MIPS] Fix broken rm7000/rm9000 interrupt handling [MIPS] Handle I-cache coherency in flush_cache_range() [MIPS] IP27: Add missing ~ in DMA code. [MIPS] Use find_task_by_vpid in system calls
| * [MIPS] BCM47XX: Use new SSB SPROM data structureAurelien Jarno2008-02-19
| | | | | | | | | | | | | | | | Switch the BCM47XX code to the new SPROM data structure now that the old one has been removed. Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] WGT634U: Register MTD as platform device.Aurelien Jarno2008-02-19
| | | | | | | | | | Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] BCM47xx: Add defconfig file.Aurelien Jarno2008-02-19
| | | | | | | | | | Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] RM: fix EISA=n compilationAdrian Bunk2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the following build error with CONFIG_EISA=n caused by commit 231a35d37293ab88d325a9cb94e5474c156282c0: <-- snip --> ... LD .tmp_vmlinux1 arch/mips/sni/built-in.o: In function `snirm_a20r_setup_devinit': a20r.c:(.init.text+0x42c): undefined reference to `sni_eisa_root_init' a20r.c:(.init.text+0x42c): relocation truncated to fit: R_MIPS_26 against `sni_eisa_root_init' arch/mips/sni/built-in.o: In function `snirm_setup_devinit': rm200.c:(.init.text+0x52c): undefined reference to `sni_eisa_root_init' rm200.c:(.init.text+0x52c): relocation truncated to fit: R_MIPS_26 against `sni_eisa_root_init' make[1]: *** [.tmp_vmlinux1] Error 1 <-- snip --> Signed-off-by: Adrian Bunk <bunk@kernel.org> Acked-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] PCI: Coding style fixes for pcibios_enable_resources.Ralf Baechle2008-02-19
| | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] PCI: Port i386 PCI fixes.Ralf Baechle2008-02-19
| | | | | | | | | | | | | | | | The MIPS version of pcibios_enalbe_resources did not have the fixes from ed6d14f9760857c745206c978b80352fc09cfd19 yet which under circumstances similar to x86 might result in failures. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Qemu: finish platform removalAdrian Bunk2008-02-19
| | | | | | | | | | | | | | Two files were omitted from the recent removal of the qemu platform. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Wire up the timerfd_*() o32 system callsDmitri Vorobiev2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch enables the system calls timerfd_create(), timerfd_settime() and timerfd_gettime() for MIPS architecture. Please see the following Bugzilla entry for more details: http://bugzilla.kernel.org/show_bug.cgi?id=10038 This was tested using a Malta 4Kc board in both little-endian and big-endian modes. The unit test program is available from the URL above. Signed-off-by: Dmitri Vorobiev <dmitri.vorobiev@gmail.com> [Ralf: Added N64, N32 and O32 bits on 64-bit kernels.] Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] IP28: Add defconfig fileThomas Bogendoerfer2008-02-19
| | | | | | | | | | Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] SB1: Fix CONFIG_SIBYTE_DMA_PAGEOPS build failure.Thiemo Seufer2008-02-19
| | | | | | | | | | | | | | | | | | Fix type mismatch warnings for 64-bit kernel builds which trigger -Werror. The problem affects only SB-1 kernels with CONFIG_SIBYTE_DMA_PAGEOPS enabled. Signed-off-by: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] BCM1480: Remove stray function call resulting in infinite recursionRalf Baechle2008-02-19
| | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Fix buggy invocations of kmap_coherent()Ralf Baechle2008-02-19
| | | | | | | | | | | | | | | | kmap_coherent will only work correctly if the page it is called on is not marked dirty. If it's dirty the kernel address of the page should be used instead of a temporary mapping. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Fix broken rm7000/rm9000 interrupt handlingThomas Koeller2008-02-19
| | | | | | | | | | | | | | | | Properly acknowledge RM7K and RM9K interrupts. Before this, interrupts were permanently masked after their first occurrence, making them non-functional. Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Handle I-cache coherency in flush_cache_range()Ralf Baechle2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far flush_cache_range() did't consider the I-cache largely because it did rarely ever matter to real world code. This was working primarily because normally code and data are don't share the same pages - with the exception of MIPS16 code which uses address constants embedded between the code. The following sequence of events may break the code: o MIPS16 executable being loaded o dynamic linker relocates the address constants embedded into the code: o Uses mprotect(2) to make code pages PROT_READ|PROT_WRITE o Performs the actual relocations by writing to the pages which likely are COW. Because no PROT_EXEC is set I-cache coherence will not be considered. o Uses mprotect(2) to switch code pages back to PROT_READ|PROT_EXEC. This results in a call to flush_cache_range() which also does not consider I-caches. o => executing the page just having been relocated may now result in the I-cache getting refilled with stale data from memory. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] IP27: Add missing ~ in DMA code.Ralf Baechle2008-02-19
| | | | | | | | | | | | | | Harmless since this function is not being called on I/O coherent systems such as IP27. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
| * [MIPS] Use find_task_by_vpid in system callsPavel Emelyanov2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | There are some places left in mips, that lookup task in initial namespace, while the code doing so gets the pid from the user space and thus must treat it as virtual. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Cc: "Eric W. Biederman" <ebiederm@xmission.com> Cc: Ralf Baechle <ralf@linux-mips.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | Merge branch 'release' of ↵Linus Torvalds2008-02-19
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6 * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/czankel/xtensa-2.6: (29 commits) [XTENSA] Allow debugger to modify the WINDOWBASE register. [XTENSA] Fix makefile to work with binutils-2.18. [XTENSA] Fix register corruption for certain processor configurations [XTENSA] Fix cache flush macro for D$/I$ aliasing/non-aliasing [XTENSA] Exclude thread-global registers from the xtregs structures. [XTENSA] Add support for the sa_restorer function [XTENSA] Add support for configurable registers and coprocessors [XTENSA] Clean up stat structs. [XTENSA] Use preprocessor to generate the linker script for the ELF boot image [XTENSA] Add missing RELOCATE_ENTRY for debug vector [XTENSA] Add volatile keyword to asm statements accessing counter registers [XTENSA] Remove unused code [XTENSA] Fix modules for non-exec processor configurations [XTENSA] Add missing cast in elf.h ELF_CORE_COPY_REGS() [XTENSA] Fix comments regarding the number of frames to save [XTENSA] Add missing a2 register restore in register spill routine [XTENSA] adjust boot linker script start addresses [XTENSA] Remove oldmask from sigcontext and fix register flush [XTENSA] Clean up elf-gregset. [XTENSA] Fix icache flush for cache aliasing ...
| * | [XTENSA] Allow debugger to modify the WINDOWBASE register.Chris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the 'return' command, GDB needs to adjust WINDOWBASE. In case WB is different from 0, we need to rotate the window register file and update WINDOWSTART and WMASK. This patch also removes some ret|= statements for __get_user/__put_user as the address range was alrady checked a couple of lines earlier. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix makefile to work with binutils-2.18.Bob Wilson2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building with binutils-2.18, vmlinux includes .note.gnu.build-id sections that need to be stripped out when building the binary image. The old .xt.insn sections haven't been used for a long time, so don't bother stripping them. Signed-off-by: Bob Wilson <bob.wilson@acm.org> Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix register corruption for certain processor configurationsChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For processor configurations that have optional registers (compiler-used but non-coprocessor), user space registers might get corrupted when there are only 4 registers in the current window-frame, ie. register a4 belongs to the oldest frame in the register file. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix cache flush macro for D$/I$ aliasing/non-aliasingChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For configurations that have aliasing in the data cache but not in the instruction cache, we don't need to flush the instruction cache. Thus, we didn't define the macros to flush the instruction cache. Some cache-flush functions, howerver, were using those macros. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Exclude thread-global registers from the xtregs structures.Chris Zankel2008-02-13
| | | | | | | | | | | | Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add support for the sa_restorer functionChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Supporting the sa_restorer function allows for better security since the sigreturn system call doesn't need to be placed on the stack, so the stack doesn't need to be executable. This requires support from the c-library as it has to provide the restorer function. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add support for configurable registers and coprocessorsChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Xtensa architecture allows to define custom instructions and registers. Registers that are bound to a coprocessor are only accessible if the corresponding enable bit is set, which allows to implement a 'lazy' context switch mechanism. Other registers needs to be saved and restore at the time of the context switch or during interrupt handling. This patch adds support for these additional states: - save and restore registers that are used by the compiler upon interrupt entry and exit. - context switch additional registers unbound to any coprocessor - 'lazy' context switch of registers bound to a coprocessor - ptrace interface to provide access to additional registers - update configuration files in include/asm-xtensa/variant-fsf Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Clean up stat structs.Bob Wilson2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid using typedefs for stat fields. Make stat64.st_blocks an unsigned long long to avoid endian-specific padding with 32-bit values. Clean up signed vs. unsigned and int vs. long types to be consistent with other uses of these values. Signed-off-by: Bob Wilson <bob.wilson@acm.org> Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Use preprocessor to generate the linker script for the ELF boot imageChris Zankel2008-02-13
| | | | | | | | | | | | | | | Signed-off-by: Marc Gauthier <marc@tensilica.com> Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add missing RELOCATE_ENTRY for debug vectorMarc Gauthier2008-02-13
| | | | | | | | | | | | | | | | | | We also need to relocate the debug vector if in RAM. Signed-off-by: Marc Gauthier <marc@tensilica.com>
| * | [XTENSA] Add volatile keyword to asm statements accessing counter registersChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | The compiler get's sometimes to smart and doesn't reread the counter registers and the kernel doesn't schedule until the counter wraps around. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Remove unused codeChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | We will never (need to) support signal handling coming from a double exception. There are too many things that could go wrong and delivering signals is not the fastest method for IPC, anyway. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix modules for non-exec processor configurationsChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | We need to use vmalloc_exec for module loading. Also remove the definitions MODULE_START and MODULE_END, which wasn't used, and increase the VMALLOC memory range accordingly. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add missing cast in elf.h ELF_CORE_COPY_REGS()Marc Gauthier2008-02-13
| | | | | | | | | | | | | | | | | | Avoids compiler warning. Signed-off-by: Marc Gauthier <marc@tensilica.com>
| * | [XTENSA] Fix comments regarding the number of frames to saveChris Zankel2008-02-13
| | | | | | | | | | | | | | | Signed-off-by: Marc Gauthier <marc@tensilica.com> Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add missing a2 register restore in register spill routineChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Register a2 is saved in depc but wasn't getting restored before returning from _spill_registers when there weren't any registers to spill. The mask to cut the top bit from the rotated WINDOWMASK register was also one bit short. Signed-off-by: CHris Zankel <chris@zankel.net>
| * | [XTENSA] adjust boot linker script start addressesMarc Gauthier2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move boot-redboot load address from 0xD0200000 to 0xD1000000 to make space for larger kernel images, in particular those with an embedded initramfs filesystem. Also properly set the ELF start address in boot-elf images so that PC need not be set manually when loading them using GDB. Signed-off-by: Marc Gauthier <marc@tensilica.com>
| * | [XTENSA] Remove oldmask from sigcontext and fix register flushChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | Remove oldmask from the sigcontext structure. Also update wmask and windowstart when we flush the AR registers to stack. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Clean up elf-gregset.Chris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove additional registers from the ELF gregset structure that are only used by the kernel or are not required or invalid in user-space. The ar registers are always aligned to a windowbase value of 0, and the WB register is always assumed to be 0. Increase the size of the structure to 128 entries. This will provide enough space in future. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix icache flush for cache aliasingChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | Set the execution bit in the temporary TLB when we flush the instruction cache. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix clobbered register in asm macroChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | We dangerously re-used an input operand to an asm macro without defining a constraint. By defining a separate output operand (instead of input/output operand), the compiler is more flexible during register allocation. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Prevent inlining ISS platform asm constructsMarc Gauthier2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | The simcall asm macro assumes Windowed ABI parameter passing in registers, and doesn't work if its containing function gets inlined. This fix prevents that from happening. Signed-off-by: Marc Gauthier <marc@tensilica.com>
| * | [XTENSA] Flush the page-address in update-mmu instead of user-addressChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | The TLB entry for the user address doesn't exist at the time we want to flush the caches, so use the page address. Note that processor configurations with cache-aliasing issues are treated separately. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix argument list for pgd_ctor constructor.Chris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | The argument list for ctor function element in the kmem_cache structure has changed. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Concentrate platforms into one platforms directory.Chris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | Create arch/xtensa/platforms/ directory to concentrate all platforms under that subdirectory and moves the ISS platform to that directory. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Add .literal sections for various init sectiont to linker scriptChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | Xtensa requires separate .literal section for each .text section. Adding addition init sections for cpuinit, meminit, and devinit, broke the Xtensa linker script, so, add these literal sections manually for now. Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Fix non-existent pte_token_t typedef to pgtable_tChris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | | | | This bug was introduced in 2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4. (CONFIG_HIGHPTE vs. sub-page page tables) Signed-off-by: Chris Zankel <chris@zankel.net>
| * | [XTENSA] Remove dead code reported by Robert P. J. Day.Adrian Bunk2008-02-13
| | | | | | | | | | | | | | | | | | Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Christian Zankel <chris@zankel.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
| * | [XTENSA] Remove duplicate includes.Chris Zankel2008-02-13
| | | | | | | | | | | | | | | | | | Signed-off-by: Lucas Woods <woodzy@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Christian Zankel <chris@zankel.net>
* | | dm-raid1.c: fix NULL dereferencesAdrian Bunk2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes two NULL dereferences introduced by commit 06386bbfd2441416875d0403d405c56822f6ebac and spotted by the Coverity checker. Signed-off-by: Adrian Bunk <bunk@kernel.org> Signed-off-by: Alasdair G Kergon <agk@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | MN10300: Update asb2303_defconfigDavid Howells2008-02-19
| | | | | | | | | | | | | | | | | | | | | Update the ASB2303 default configuration. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | MN10300: Make the kernel jump into gdbstub on a BUGDavid Howells2008-02-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the kernel jump into gdbstub (if configured) on a BUG with the register set from the BUG rather than interpolating another illegal instruction and leaving gdbstub's idea of the process counter in unsupported_syscall() where the original BUG was detected. With this patch, gdbstub reports a SIGABRT to the compiler and reports the program counter at the original BUG, allowing the execution state at the time of the BUG to be examined with GDB. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>