aboutsummaryrefslogtreecommitdiffstats
path: root/arch/mips
Commit message (Collapse)AuthorAge
* [MIPS] IP27: Fix collision with hardcoded interrupt number.Ralf Baechle2006-06-19
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [PATCH] Fix BCM1480 doubled process accounting times.[MIPS] James E Wilson2006-06-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running a UP kernel on a bcm1480 board, I get nonsensical timing results, like this: release@unknown:~/tmp$ time ./a.out real 0m22.906s user 0m45.792s sys 0m0.010s According to my watch, this program took 23 seconds to run, so the real time clock is OK. It is process accounting that is broken. I tracked this down to a problem with the function bcm1480_timer_interrupt in the file sibyte/bcm1480/time.c. This function calls ll_timer_interrupt for cpu0, and ll_local_timer_interrupt for all cpus. However, both of these functions do process accounting. Thus processes running on cpu0 end up with doubled times. This is very obvious in a UP kernel where all processes run on cpu0. The correct way to do this is to only call ll_local_timer interrupt if this is not cpu0. This can be seen in the mips-board/generic/time.c file, and also in the sibyte/sb1250/time.c file, both of which handle this correctly. I fixed the bcm1480/time.c file by copying over the correct code from the sb1250/time.c file. With this fix, I now get sensible results. release@unknown:~/tmp$ time ./a.out real 0m22.903s user 0m22.894s sys 0m0.006s Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Mark PNX8550 support broken.Ralf Baechle2006-06-19
| | | | | | Broken in too many way for me to fix it for 2.6.17. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix optimization for size build.Ralf Baechle2006-06-19
| | | | | | | | | It took a while longer than on other architectures but gcc has finally started to strike us as well ... This also fixes the damage by 6edfba1b33c701108717f4e036320fc39abe1912. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] IP22: Fix ISA driver builds if CONFIG_EISA is selected.Ralf Baechle2006-06-19
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Cobalt: Fix undefined reference to disable_early_printk.Yoichi Yuasa2006-06-19
| | | | | Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix fpu_save_double on 64-bit.Atsushi Nemoto2006-06-19
| | | | | | | | | | | | | | | | | | > Without this fix, _save_fp() in 64-bit kernel is seriously broken. > > ffffffff8010bec0 <_save_fp>: > ffffffff8010bec0: 400d6000 mfc0 t1,c0_status > ffffffff8010bec4: 000c7140 sll t2,t0,0x5 > ffffffff8010bec8: 05c10011 bgez t2,ffffffff8010bf10 <_save_fp+0x50> > ffffffff8010becc: 00000000 nop > ffffffff8010bed0: f4810328 sdc1 $f1,808(a0) > ... Fix register usage in fpu_save_double() and make fpu_restore_double() more symmetric with fpu_save_double(). Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Malta: Handle byteswapping hardare bug in big endian mode.Elizabeth Oldham2006-06-19
| | | | | | | | The SOC-it system controller running in big endian mode might forget byteswapping when DMAing to the last word of physical memory. Fixed by ignoring the last page of memory. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* Merge master.kernel.org:/home/rmk/linux-2.6-serialLinus Torvalds2006-06-05
|\ | | | | | | | | * master.kernel.org:/home/rmk/linux-2.6-serial: [SERIAL] typo: buad -> baud
| * [SERIAL] typo: buad -> baudHorst Schirmeier2006-06-05
| | | | | | | | | | | | | | Replacing mistyped "buad" with "baud" where applicable. Signed-off-by: Horst Schirmeier <horst@schirmeier.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
* | [MIPS] Fix sparsemem support.Chad Reese2006-06-05
| | | | | | | | | | | | | | | | | | | | | | | | Move memory_present() in arch/mips/kernel/setup.c. When using sparsemem extreme, this function does an allocate for bootmem. This would always fail since init_bootmem hasn't been called yet. Move memory_present after free_bootmem. This only marks actual memory ranges as present instead of the entire address space. Signed-off-by: Chad Reese <creese@caviumnetworks.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Fix compiler warnings (field width, unused variable)Atsushi Nemoto2006-06-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix following warnings: linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 2) linux/arch/mips/kernel/setup.c:432: warning: field width is not type int (arg 4) linux/arch/mips/kernel/syscall.c:279: warning: unused variable `len' linux/arch/mips/kernel/syscall.c:280: warning: unused variable `name' linux/arch/mips/math-emu/dp_fint.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/dp_flong.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/sp_fint.c:32: warning: unused variable `xc' linux/arch/mips/math-emu/sp_flong.c:32: warning: unused variable `xc' (original patch by Atsushi, slight changes to the setup.c part by me.) Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Fix sparse warnings about too big constants.Atsushi Nemoto2006-06-05
| | | | | | | | | | | | | | | | | | | | | | | | Fix following warnings: linux/arch/mips/kernel/setup.c:249:12: warning: constant 0xffffffff00000000 is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:209:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:227:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:283:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long linux/arch/mips/kernel/cpu-bugs64.c:299:10: warning: constant 0xffffffffffffdb9a is so big it is unsigned long Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] IP32: Fix warnings.Ralf Baechle2006-06-05
| | | | | | | | | | | | The expressions are volatile; no need for temporary variables. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] SB1: Only pass1 FPUs are broken beyond recovery.Ralf Baechle2006-06-05
| | | | | | | | | | | | | | The wrong revision number in the check was forcing a fallback to FPU emulation for all SB1 cores in 2.6. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] open() forces O_LARGEFILE for o32 on 64bit kernelsThiemo Seufer2006-06-05
| | | | | | | | | | | | | | | | open() always sets the O_LARGEFILE flag for the o32 ABI implementation of a 64bit kernel. The appended patch fixes it. Signed-off-by: Thiemo Seufer <ths@networkno.de> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Au1xx0: fix prom_getenv() to handle YAMON style environmentSergei Shtylyov2006-06-05
| | | | | | | | | | | | | | | | | | Alchemy boards use YAMON which passes the environment variables as the tuples of strings (the name followed by the value) unlike PMON which passes "name=<val>" strings. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Save write-only Config.OD from being clobberedSergei Shtylyov2006-06-05
| | | | | | | | | | | | | | | | | | | | Save the Config.OD bit from being clobbered by coherency_setup(). This bit, when set, fixes various errata in the early steppings of Au1x00 SOCs. Unfortunately, the bit was write-only on the most early of them. In addition, also restore the bit after a wakeup from sleep. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Print more information if we're struck by a machine check exception.Ralf Baechle2006-06-05
| | | | | | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Fix modpost warning: Rename op_model_xxx to op_model_xxx_ops.Atsushi Nemoto2006-06-05
| | | | | | | | | | | | | | | | | | | | | | The modpost uses a whitelist for commonly used suffix on checking the section mismatch. Adding "_ops" suffix to op_modex_xxx get rid of this modpost warning. WARNING: arch/mips/oprofile/oprofile.o - Section mismatch: reference to .init.text: from .data after 'op_model_mipsxx' (at offset 0x528) Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Ignore unresolved weak symbols in modules.Atsushi Nemoto2006-06-05
| | | | | | | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* | [MIPS] Fix SMP now that fixup_cpu_present_map is gone.Ralf Baechle2006-06-05
|/ | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Treat R14000 like R10000.Kumba2006-05-31
| | | | | Signed-off-by: Joshua Kinard <kumba@gentoo.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Remove EXPERIMENTAL from PAGE_SIZE_16KBRalf Baechle2006-05-31
| | | | | | | This is known to be working fine for a while. While at it also update and fix the help texts. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix deadlock on MP with cache aliases.Ralf Baechle2006-05-31
| | | | | | | | | | | | | A proper fix would involve introducing the notion of shared caches but at this stage of 2.6.17 that's going to be too intrusive and not needed for current hardware; aside I think some discussion will be needed. So for now on the affected SMP configurations which happen to suffer from cache aliases we make use of the fact that a single cache will be shared by all processors. This solves the deadlock issue and will improve performance by getting rid of the smp_call_function overhead. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Use generic STABS_DEBUG macro.Atsushi Nemoto2006-05-31
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Create consistency in "system type" selection.Martin Michlmayr2006-05-31
| | | | | | | | | | The "system type" Kconfig options on MIPS are not consistent. For some platforms, only the name is listed while other entries are prepended with "Support for". Remove this as it doesn't make sense when describing the "system type". Signed-off-by: Martin Michlmayr <tbm@cyrius.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Use generic DWARF_DEBUGAtsushi Nemoto2006-05-31
| | | | | | | | | | | When debugging a kernel compiled by gcc 4.1 with gdb 6.4, gdb could not show filename, linenumber, etc. It seems fixed if I used generic DWARF_DEBUG macro. Although gcc 3.x seems work without this change, it would be better to use the generic macro unless there were something MIPS specific. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix kgdb exception handler from user mode.Atsushi Nemoto2006-05-31
| | | | | | | | Fix a calculation of saved vector address in trap_low. (damage done by lmo f4c72cc737561aab0d9c7f877abbc0a853f1c465) Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Update struct sigcontext member namesDaniel Jacobowitz2006-05-31
| | | | | | | | Rename the 64-bit sc_hi and sc_lo arrays to use the same names as the 32-bit struct sigcontext (sc_mdhi, sc_hi1, et cetera). Signed-off-by: Daniel Jacobowitz <dan@codesourcery.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Remove support for sysmips(2) SETNAME and MIPS_RDNVRAM operations.Ralf Baechle2006-05-31
| | | | | | | SETNAME only had a minor defect but probably never had a user and MIPS_RDNVRAM was unimplemented anyway. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix detection and handling of the 74K processor.Chris Dearman2006-05-31
| | | | | | | | Nothing exciting; Linux just didn't know it yet so this is most adding a value to a case statement. Signed-off-by: Chris Dearman <chris@mips.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Add missing 34K processor IDsNigel Stephens2006-05-31
| | | | | | The 34K is very much like a 24K on steroids. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] AU1xxx mips_timer_interrupt() fixesHerbert Valerio Riedel2006-05-31
| | | | | | | | | | common/au1000/irq.c was missing a mips_timer_interrupt() prototype, whereas in common/au1000/time.c the actual mips_timer_interrupt() implementation was missing an irq_exit() invocation, causing a preempt_count() leak. Signed-off-by: Herbert Valerio Riedel <hvr@hvrlab.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix typoRalf Baechle2006-05-31
| | | | | | Found by Chris Dearman (chris@mips.com). Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [PATCH] drop task argument of audit_syscall_{entry,exit}Al Viro2006-05-01
| | | | | | ... it's always current, and that's a good thing - allows simpler locking. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* [MIPS] Fix branch emulation for floating-point exceptions.Ralf Baechle2006-04-27
| | | | | | | | | | | In the branch emulation for floating-point exceptions, __compute_return_epc must determine for bc1f et al which condition code bit to test. This is based on bits <4:2> of the rt field. The switch statement to distinguish bc1f et al needs to use only the two low bits of rt, but the old code tests on the whole rt field. This patch masks off the proper bits. Signed-off-by: Win Treese <treese@acm.org> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Cleanup inode->r_dev usage.Ralf Baechle2006-04-27
| | | | | | | | imajor()/iminor() should be used instead of accessing r_dev directly. Based on patch from Eric Sesterhenn (snakebyte@gmx.de). Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Update MIPS defconfigs.Ralf Baechle2006-04-27
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Get rid of CONFIG_ADVANCED.Ralf Baechle2006-04-27
| | | | | | | It's been a horrible source of confusion and let users to shoot themselves into both feet with uzis to no end. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Kconfig: Clarify description of CROSSCOMPILE.Ralf Baechle2006-04-27
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] 24K LV: Add core card id.Chris Dearman2006-04-27
| | | | Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Sparse: fix sparse for 64-bit kernels.Atsushi Nemoto2006-04-27
| | | | | | | | | | This commit breaks sparse for 64bit kernel. The -m64 option is required. Also, some macro values (such as _MIPS_TUNE, etc.) contain double-quote characters so it would be better quoting arguments by single-quote characters. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Use __ffs() instead of ffs() in ip32_irq0().Atsushi Nemoto2006-04-27
| | | | | | | | | With recent rewrite for generic bitops, ffs() is defined the same way as the libc and compiler built-in routines (returns int instead of unsigned long). Use __ffs() for 64bit value. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix ip27 build.Atsushi Nemoto2006-04-27
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Oprofile: fix sparse warning.Ralf Baechle2006-04-27
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix oprofile module unloadingRalf Baechle2006-04-27
| | | | | | | | When unloading oprofile module with timer-mode, oprofile_arch_exit dereferences a NULL pointer. Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [PATCH] fix mips sys32_p{read,write}Al Viro2006-04-26
| | | | | | | | | | Switched to use of sys_pread64()/sys_pwrite64() rather than keep duplicating their guts; among the little things that had been missing there were such as ret = security_file_permission (file, MAY_READ); Gotta love the LSM robustness, right? Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* [MIPS] Use __ffs() instead of ffs() for waybit calculation.Atsushi Nemoto2006-04-18
| | | | | Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
* [MIPS] Fix Makefile bugs for MIPS32/MIPS64 R1 and R2.Ralf Baechle2006-04-18
| | | | | | | | | This fixes kernel builds with gcc 3.2 (not 64-bit, that is looking like it is beyond recovery) and 3.3. With these bugs fixed we now also can get undo 3b4c4996a0c24da9e6f8be764e3950b756b18cc0 and similar bits for SMTC that were added in 79cc8007b93838a670b164b8a55ab3e735a12a8b. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>