]> Pileus Git - ~andy/linux/log
~andy/linux
13 years agoKVM: x86: release kvmclock page on reset
Glauber Costa [Tue, 1 Feb 2011 19:16:40 +0000 (14:16 -0500)]
KVM: x86: release kvmclock page on reset

When a vcpu is reset, kvmclock page keeps being written to this days.
This is wrong and inconsistent: a cpu reset should take it to its
initial state.

Signed-off-by: Glauber Costa <glommer@redhat.com>
CC: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agomm: remove is_hwpoison_address
Huang Ying [Sun, 30 Jan 2011 03:15:49 +0000 (11:15 +0800)]
mm: remove is_hwpoison_address

Unused.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: Replace is_hwpoison_address with __get_user_pages
Huang Ying [Sun, 30 Jan 2011 03:15:49 +0000 (11:15 +0800)]
KVM: Replace is_hwpoison_address with __get_user_pages

is_hwpoison_address only checks whether the page table entry is
hwpoisoned, regardless the memory page mapped.  While __get_user_pages
will check both.

QEMU will clear the poisoned page table entry (via unmap/map) to make
it possible to allocate a new memory page for the virtual address
across guest rebooting.  But it is also possible that the underlying
memory page is kept poisoned even after the corresponding page table
entry is cleared, that is, a new memory page can not be allocated.
__get_user_pages can catch these situations.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agomm: make __get_user_pages return -EHWPOISON for HWPOISON page optionally
Huang Ying [Sun, 30 Jan 2011 03:15:48 +0000 (11:15 +0800)]
mm: make __get_user_pages return -EHWPOISON for HWPOISON page optionally

Make __get_user_pages return -EHWPOISON for HWPOISON page only if
FOLL_HWPOISON is specified.  With this patch, the interested callers
can distinguish HWPOISON pages from general FAULT pages, while other
callers will still get -EFAULT for all these pages, so the user space
interface need not to be changed.

This feature is needed by KVM, where UCR MCE should be relayed to
guest for HWPOISON page, while instruction emulation and MMIO will be
tried for general FAULT page.

The idea comes from Andrew Morton.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
13 years agomm: export __get_user_pages
Huang Ying [Sun, 30 Jan 2011 03:15:47 +0000 (11:15 +0800)]
mm: export __get_user_pages

In most cases, get_user_pages and get_user_pages_fast should be used
to pin user pages in memory.  But sometimes, some special flags except
FOLL_GET, FOLL_WRITE and FOLL_FORCE are needed, for example in
following patch, KVM needs FOLL_HWPOISON.  To support these users,
__get_user_pages is exported directly.

There are some symbol name conflicts in infiniband driver, fixed them too.

Signed-off-by: Huang Ying <ying.huang@intel.com>
CC: Andrew Morton <akpm@linux-foundation.org>
CC: Michel Lespinasse <walken@google.com>
CC: Roland Dreier <roland@kernel.org>
CC: Ralph Campbell <infinipath@qlogic.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: x86: handle guest access to BBL_CR_CTL3 MSR
john cooper [Fri, 21 Jan 2011 05:21:00 +0000 (00:21 -0500)]
KVM: x86: handle guest access to BBL_CR_CTL3 MSR

A correction to Intel cpu model CPUID data (patch queued)
caused winxp to BSOD when booted with a Penryn model.
This was traced to the CPUID "model" field correction from
6 -> 23 (as is proper for a Penryn class of cpu).  Only in
this case does the problem surface.

The cause for this failure is winxp accessing the BBL_CR_CTL3
MSR which is unsupported by current kvm, appears to be a
legacy MSR not fully characterized yet existing in current
silicon, and is apparently carried forward in MSR space to
accommodate vintage code as here.  It is not yet conclusive
whether this MSR implements any of its legacy functionality
or is just an ornamental dud for compatibility.  While I
found no silicon version specific documentation link to
this MSR, a general description exists in Intel's developer's
reference which agrees with the functional behavior of
other bootloader/kernel code I've examined accessing
BBL_CR_CTL3.  Regrettably winxp appears to be setting bit #19
called out as "reserved" in the above document.

So to minimally accommodate this MSR, kvm msr get will provide
the equivalent mock data and kvm msr write will simply toss the
guest passed data without interpretation.  While this treatment
of BBL_CR_CTL3 addresses the immediate problem, the approach may
be modified pending clarification from Intel.

Signed-off-by: john cooper <john.cooper@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: make make_all_cpus_request() lockless
Xiao Guangrong [Wed, 12 Jan 2011 07:41:22 +0000 (15:41 +0800)]
KVM: make make_all_cpus_request() lockless

Now, we have 'vcpu->mode' to judge whether need to send ipi to other
cpus, this way is very exact, so checking request bit is needless,
then we can drop the spinlock let it's collateral

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
13 years agoKVM: Add "exiting guest mode" state
Xiao Guangrong [Wed, 12 Jan 2011 07:40:31 +0000 (15:40 +0800)]
KVM: Add "exiting guest mode" state

Currently we keep track of only two states: guest mode and host
mode.  This patch adds an "exiting guest mode" state that tells
us that an IPI will happen soon, so unless we need to wait for the
IPI, we can avoid it completely.

Also
1: No need atomically to read/write ->mode in vcpu's thread

2: reorganize struct kvm_vcpu to make ->mode and ->requests
   in the same cache line explicitly

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
13 years agoKVM: fix build warning within __kvm_set_memory_region() on s390
Heiko Carstens [Mon, 17 Jan 2011 20:21:08 +0000 (21:21 +0100)]
KVM: fix build warning within __kvm_set_memory_region() on s390

Get rid of this warning:

  CC      arch/s390/kvm/../../../virt/kvm/kvm_main.o
arch/s390/kvm/../../../virt/kvm/kvm_main.c:596:12: warning: 'kvm_create_dirty_bitmap' defined but not used

The only caller of the function is within a !CONFIG_S390 section, so add the
same ifdef around kvm_create_dirty_bitmap() as well.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: x86: Remove user space triggerable MCE error message
Jan Kiszka [Sat, 15 Jan 2011 09:00:53 +0000 (10:00 +0100)]
KVM: x86: Remove user space triggerable MCE error message

This case is a pure user space error we do not need to record. Moreover,
it can be misused to flood the kernel log. Remove it.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: fix rcu usage warning in kvm_arch_vcpu_ioctl_set_sregs()
Xiao Guangrong [Wed, 12 Jan 2011 07:39:18 +0000 (15:39 +0800)]
KVM: fix rcu usage warning in kvm_arch_vcpu_ioctl_set_sregs()

Fix:

[ 1001.499596] ===================================================
[ 1001.499599] [ INFO: suspicious rcu_dereference_check() usage. ]
[ 1001.499601] ---------------------------------------------------
[ 1001.499604] include/linux/kvm_host.h:301 invoked rcu_dereference_check() without protection!
......
[ 1001.499636] Pid: 6035, comm: qemu-system-x86 Not tainted 2.6.37-rc6+ #62
[ 1001.499638] Call Trace:
[ 1001.499644]  [] lockdep_rcu_dereference+0x9d/0xa5
[ 1001.499653]  [] gfn_to_memslot+0x8d/0xc8 [kvm]
[ 1001.499661]  [] gfn_to_hva+0x16/0x3f [kvm]
[ 1001.499669]  [] kvm_read_guest_page+0x1e/0x5e [kvm]
[ 1001.499681]  [] kvm_read_guest_page_mmu+0x53/0x5e [kvm]
[ 1001.499699]  [] load_pdptrs+0x3f/0x9c [kvm]
[ 1001.499705]  [] ? vmx_set_cr0+0x507/0x517 [kvm_intel]
[ 1001.499717]  [] kvm_arch_vcpu_ioctl_set_sregs+0x1f3/0x3c0 [kvm]
[ 1001.499727]  [] kvm_vcpu_ioctl+0x6a5/0xbc5 [kvm]

Signed-off-by: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: VMX: Avoid atomic operation in vmx_vcpu_run
Avi Kivity [Thu, 6 Jan 2011 16:09:12 +0000 (18:09 +0200)]
KVM: VMX: Avoid atomic operation in vmx_vcpu_run

Instead of exchanging the guest and host rcx, have separate storage
for each.  This allows us to avoid using the xchg instruction, which
is is a little slower than normal operations.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: VMX: Simplify saving guest rcx in vmx_vcpu_run
Avi Kivity [Thu, 6 Jan 2011 16:09:11 +0000 (18:09 +0200)]
KVM: VMX: Simplify saving guest rcx in vmx_vcpu_run

Change

  push top-of-stack
  pop guest-rcx
  pop dummy

to

  pop guest-rcx

which is the same thing, only simpler.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: VMX: increase ple_gap default to 128
Rik van Riel [Tue, 4 Jan 2011 14:51:33 +0000 (09:51 -0500)]
KVM: VMX: increase ple_gap default to 128

On some CPUs, a ple_gap of 41 is simply insufficient to ever trigger
PLE exits, even with the minimalistic PLE test from kvm-unit-tests.

http://git.kernel.org/?p=virt/kvm/kvm-unit-tests.git;a=commitdiff;h=eda71b28fa122203e316483b35f37aaacd42f545

For example, the Xeon X5670 CPU needs a ple_gap of at least 48 in
order to get pause loop exits:

# modprobe kvm_intel ple_gap=47
# taskset 1 /usr/local/bin/qemu-system-x86_64 \
  -device testdev,chardev=log -chardev stdio,id=log \
  -kernel x86/vmexit.flat -append ple-round-robin -smp 2
VNC server running on `::1:5900'
enabling apic
enabling apic
ple-round-robin 58298446
# rmmod kvm_intel
# modprobe kvm_intel ple_gap=48
# taskset 1 /usr/local/bin/qemu-system-x86_64 \
   -device testdev,chardev=log -chardev stdio,id=log \
   -kernel x86/vmexit.flat -append ple-round-robin -smp 2
VNC server running on `::1:5900'
enabling apic
enabling apic
ple-round-robin 36616

Increase the ple_gap to 128 to be on the safe side.

Signed-off-by: Rik van Riel <riel@redhat.com>
Acked-by: Zhai, Edwin <edwin.zhai@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
13 years agoKVM: SVM: Add support for perf-kvm
Joerg Roedel [Fri, 14 Jan 2011 15:45:02 +0000 (16:45 +0100)]
KVM: SVM: Add support for perf-kvm

This patch adds the necessary code to run perf-kvm on AMD
machines.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
13 years agoKVM: VMX: Avoid leaking fake realmode state to userspace
Avi Kivity [Mon, 3 Jan 2011 12:28:52 +0000 (14:28 +0200)]
KVM: VMX: Avoid leaking fake realmode state to userspace

When emulating real mode, we fake some state:

 - tr.base points to a fake vm86 tss
 - segment registers are made to conform to vm86 restrictions

change vmx_get_segment() not to expose this fake state to userspace;
instead, return the original state.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: VMX: Save and restore tr selector across mode switches
Avi Kivity [Mon, 3 Jan 2011 12:28:51 +0000 (14:28 +0200)]
KVM: VMX: Save and restore tr selector across mode switches

When emulating real mode we play with tr hidden state, but leave
tr.selector alone.  That works well, except for save/restore, since
loading TR writes it to the hidden state in vmx->rmode.

Fix by also saving and restoring the tr selector; this makes things
more consistent and allows migration to work during the early
boot stages of Windows XP.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: PPC: Fix SPRG get/set for Book3S and BookE
Peter Tyser [Wed, 29 Dec 2010 19:51:25 +0000 (13:51 -0600)]
KVM: PPC: Fix SPRG get/set for Book3S and BookE

Previously SPRGs 4-7 were improperly read and written in
kvm_arch_vcpu_ioctl_get_regs() and kvm_arch_vcpu_ioctl_set_regs();

Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM guest: Fix section mismatch derived from kvm_guest_cpu_online()
Sedat Dilek [Sun, 2 Jan 2011 23:01:29 +0000 (00:01 +0100)]
KVM guest: Fix section mismatch derived from kvm_guest_cpu_online()

WARNING: arch/x86/built-in.o(.text+0x1bb74): Section mismatch in reference from the function kvm_guest_cpu_online() to the function .cpuinit.text:kvm_guest_cpu_init()
The function kvm_guest_cpu_online() references
the function __cpuinit kvm_guest_cpu_init().
This is often because kvm_guest_cpu_online lacks a __cpuinit
annotation or the annotation of kvm_guest_cpu_init is wrong.

This patch fixes the warning.

Tested with linux-next (next-20101231)

Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
Acked-by: Rik van Riel <riel@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoKVM: MMU: Don't flush shadow when enabling dirty tracking
Avi Kivity [Mon, 27 Dec 2010 10:08:45 +0000 (12:08 +0200)]
KVM: MMU: Don't flush shadow when enabling dirty tracking

Instead, drop large mappings, which were the reason we dropped shadow.

Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
13 years agoMerge branch 'for_next' into for_linus
Jan Kara [Thu, 17 Mar 2011 15:44:22 +0000 (16:44 +0100)]
Merge branch 'for_next' into for_linus

13 years agogenirq: Fix incorrect unlock in __setup_irq()
Dan Carpenter [Thu, 17 Mar 2011 11:43:07 +0000 (14:43 +0300)]
genirq: Fix incorrect unlock in __setup_irq()

goto out_thread is called before we take the lock. It causes a gcc
warning: "kernel/irq/manage.c:858: warning: ‘flags’ may be used
uninitialized in this function"

[ tglx: Moved unlock before free_cpumask_var() ]

Signed-off-by: Dan Carpenter <error27@gmail.com>
LKML-Reference: <20110317114307.GJ2008@bicker>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
13 years agocris: Use generic show_interrupts()
Thomas Gleixner [Thu, 17 Mar 2011 12:39:19 +0000 (13:39 +0100)]
cris: Use generic show_interrupts()

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Jesper Nilsson <jesper.nilsson@axis.com>
13 years agogenirq: show_interrupts: Check desc->name before printing it blindly
Thomas Gleixner [Thu, 17 Mar 2011 12:36:57 +0000 (13:36 +0100)]
genirq: show_interrupts: Check desc->name before printing it blindly

desc->name is not required and not used by all architectures.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
13 years agocris: Use accessor functions to set IRQ_PER_CPU flag
Thomas Gleixner [Thu, 17 Mar 2011 12:35:28 +0000 (13:35 +0100)]
cris: Use accessor functions to set IRQ_PER_CPU flag

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
13 years agocris: Fix irq conversion fallout
Thomas Gleixner [Thu, 17 Mar 2011 12:29:26 +0000 (13:29 +0100)]
cris: Fix irq conversion fallout

arch/cris/arch-v10/kernel/irq.c: In function 'init_IRQ':
arch/cris/arch-v10/kernel/irq.c:202:3: error: implicit declaration of
function 'set_irq_desc_and_handler'

Should have been set_irq_chip_and_handler()

Fix it and convert to the new function names while at it.

Reported-by: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
13 years agoamd64_edac: Fix decode_syndrome types
Borislav Petkov [Wed, 23 Feb 2011 16:41:50 +0000 (17:41 +0100)]
amd64_edac: Fix decode_syndrome types

Those should all be unsigned.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix DCT argument type
Borislav Petkov [Wed, 23 Feb 2011 16:25:12 +0000 (17:25 +0100)]
amd64_edac: Fix DCT argument type

Fix amd64_debug_display_dimm_sizes() arguments order per convention (pvt
is always first). Also, the now second arg denotes the DCT so adjust its
type.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix ranges signedness
Borislav Petkov [Mon, 21 Feb 2011 18:49:01 +0000 (19:49 +0100)]
amd64_edac: Fix ranges signedness

The dram ranges make sense only as an unsigned type.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Drop local variable
Borislav Petkov [Mon, 21 Feb 2011 18:43:02 +0000 (19:43 +0100)]
amd64_edac: Drop local variable

Use the macro directly instead

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix PCI config addressing types
Borislav Petkov [Mon, 21 Feb 2011 18:37:24 +0000 (19:37 +0100)]
amd64_edac: Fix PCI config addressing types

Adjust argument types to the PCI config API's types.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix DRAM base macros
Borislav Petkov [Mon, 21 Feb 2011 18:33:10 +0000 (19:33 +0100)]
amd64_edac: Fix DRAM base macros

Return unsigned u8 values only.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix node id signedness
Borislav Petkov [Mon, 21 Feb 2011 17:55:00 +0000 (18:55 +0100)]
amd64_edac: Fix node id signedness

A node id can never be negative since we use it as an index into
the DRAM ranges array. This also makes one of the BUG_ON conditions
redundant.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Drop redundant declarations
Borislav Petkov [Mon, 21 Feb 2011 17:05:57 +0000 (18:05 +0100)]
amd64_edac: Drop redundant declarations

Those were moved to the mce_amd.h header.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Enable driver on F15h
Borislav Petkov [Wed, 19 Jan 2011 17:15:10 +0000 (18:15 +0100)]
amd64_edac: Enable driver on F15h

Add the PCI device ids required for driver registration. Remove
pvt->ctl_name and use the family descriptor directly, instead. Then,
bump driver version and fixup its format. Finally, enable DRAM ECC
decoding on F15h.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Adjust ECC symbol size to F15h
Borislav Petkov [Wed, 19 Jan 2011 19:35:12 +0000 (20:35 +0100)]
amd64_edac: Adjust ECC symbol size to F15h

F15h has the same ECC symbol size options as F10h revD and later so
adjust checks to that. Simplify code a bit.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Simplify scrubrate setting
Borislav Petkov [Wed, 19 Jan 2011 19:02:38 +0000 (20:02 +0100)]
amd64_edac: Simplify scrubrate setting

Drop per-instance variable and compute min scrubrate dynamically.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoPCI: Rename CPU PCI id define
Borislav Petkov [Wed, 19 Jan 2011 17:22:11 +0000 (18:22 +0100)]
PCI: Rename CPU PCI id define

With increasing number of PCI function ids, add the PCI function id
in the define name instead of its symbolic name in the BKDG for more
clarity.

Acked-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Improve DRAM address mapping
Borislav Petkov [Tue, 18 Jan 2011 18:16:08 +0000 (19:16 +0100)]
amd64_edac: Improve DRAM address mapping

Drop static tables which map the bits in F2x80 to a chip select size in
favor of functions doing the mapping with some bit fiddling. Also, add
F15 support.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Sanitize ->read_dram_ctl_register
Borislav Petkov [Mon, 17 Jan 2011 16:52:57 +0000 (17:52 +0100)]
amd64_edac: Sanitize ->read_dram_ctl_register

This function is relevant for F10h and higher, and it has only one
callsite so drop its function pointer from the low_ops struct.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Adjust sys_addr to chip select conversion routine to F15h
Borislav Petkov [Mon, 17 Jan 2011 14:59:58 +0000 (15:59 +0100)]
amd64_edac: Adjust sys_addr to chip select conversion routine to F15h

F15h sys_addr to chip select mapping is almost identical to F10h's so
reuse that. Rename functions on that path accordingly.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Beef up early exit reporting
Borislav Petkov [Mon, 17 Jan 2011 12:03:26 +0000 (13:03 +0100)]
amd64_edac: Beef up early exit reporting

Add paranoid checks for the sys address before going off and decoding
it.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Revamp online spare handling
Borislav Petkov [Thu, 13 Jan 2011 17:02:22 +0000 (18:02 +0100)]
amd64_edac: Revamp online spare handling

Replace per-DCT macros with smarter ones, drop hack and look for the
spare rank on all chip selects on a channel.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Fix channel interleave removal
Borislav Petkov [Thu, 13 Jan 2011 15:01:13 +0000 (16:01 +0100)]
amd64_edac: Fix channel interleave removal

Remove the channel interleave select bit properly. See
F2x110[DctSelIntLvAddr] for details.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Correct node interleaving removal
Borislav Petkov [Thu, 13 Jan 2011 13:57:34 +0000 (14:57 +0100)]
amd64_edac: Correct node interleaving removal

When node interleaving is enabled, a subset of the addr[14:12] bits has
to be removed in order to get the normalized DCT address of the DRAM
channel. The actual number of bits to remove is determined by F1x[1,
0][7C:40][IntlvEn]. Do this correctly.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Add support for interleaved region swapping
Borislav Petkov [Tue, 11 Jan 2011 21:08:07 +0000 (22:08 +0100)]
amd64_edac: Add support for interleaved region swapping

On revC3 and revE Fam10h machines and later, non-interleaved graphics
framebuffer memory under the 16G mark can be swapped with a region
located at the bottom of memory so that the GPU can use the interleaved
region and thus two channels. Add support for that.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Unify get_error_address
Borislav Petkov [Mon, 10 Jan 2011 13:37:27 +0000 (14:37 +0100)]
amd64_edac: Unify get_error_address

The address bits from MC4_STATUS differ only between K8 and the rest so
no need for a per-family method.

No functional change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Simplify decoding path
Borislav Petkov [Mon, 10 Jan 2011 13:24:32 +0000 (14:24 +0100)]
amd64_edac: Simplify decoding path

Use the struct mce directly instead of copying from it into a custom
struct err_regs.

No functionality change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Adjust channel counting to F15h
Borislav Petkov [Fri, 7 Jan 2011 16:58:04 +0000 (17:58 +0100)]
amd64_edac: Adjust channel counting to F15h

The only difference is that F10h used to sport ganged DCTs and F15h
doesn't so adjust the F10h routine and reuse it.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup old defines cruft
Borislav Petkov [Fri, 7 Jan 2011 15:26:49 +0000 (16:26 +0100)]
amd64_edac: Cleanup old defines cruft

Remove unused defines, drop family names from define names.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup NBSH cruft
Borislav Petkov [Fri, 7 Jan 2011 15:17:46 +0000 (16:17 +0100)]
amd64_edac: Cleanup NBSH cruft

Remove reporting of errors with UC bit set - this is done by the MCE
decoding code anyway and this driver deals with DRAM ECC errors only. UC
(NB uncorrectable error) doesn't necessarily mean it is a DRAM error.
Remove unused macros while at it.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup NBCFG handling
Borislav Petkov [Thu, 23 Dec 2010 13:07:18 +0000 (14:07 +0100)]
amd64_edac: Cleanup NBCFG handling

The fact whether we are chipkill capable or not does not have any
bearing when computing the channel index on a ganged DCT configuration
so remove that. Also, simplify debug statements. Finally, remove old
error injection leftovers, while at it.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup NBCTL code
Borislav Petkov [Wed, 22 Dec 2010 18:48:20 +0000 (19:48 +0100)]
amd64_edac: Cleanup NBCTL code

Remove family names from macro names, drop single bit defines and
comment their meaning instead.

No functional change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup DCT Select Low/High code
Borislav Petkov [Wed, 22 Dec 2010 18:31:45 +0000 (19:31 +0100)]
amd64_edac: Cleanup DCT Select Low/High code

Shorten macro names, remove family name from macros, fix macro
arguments, shorten debug strings.

No functionality change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup Dram Configuration registers handling
Borislav Petkov [Wed, 22 Dec 2010 13:28:24 +0000 (14:28 +0100)]
amd64_edac: Cleanup Dram Configuration registers handling

* Restrict DCT ganged mode check since only Fam10h supports it
* Adjust DRAM type detection for BD since it only supports DDR3
* Remove second and thus unneeded DCLR read in k8_early_channel_count() - we do
  that in read_mc_regs()
* Cleanup comments and remove family names from register macros
* Remove unused defines

There should be no functional change resulting from this patch.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup DBAM handling
Borislav Petkov [Tue, 21 Dec 2010 14:53:27 +0000 (15:53 +0100)]
amd64_edac: Cleanup DBAM handling

Do not read DBAM regs twice and simplify code around them.

There should be no functional change resulting from this patch.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Replace huge bitmasks with a macro
Borislav Petkov [Mon, 13 Dec 2010 18:21:07 +0000 (19:21 +0100)]
amd64_edac: Replace huge bitmasks with a macro

Replace hard to read hex constants with a continuous masks macro.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Sanitize f10_get_base_addr_offset
Borislav Petkov [Fri, 10 Dec 2010 18:49:19 +0000 (19:49 +0100)]
amd64_edac: Sanitize f10_get_base_addr_offset

This function maps the system address to the normalized DCT address.
Document what the code does for more clarity and wrap insane bitmasks in
a more understandable macro which generates them. Also, reduce number of
arguments passed to the function. Finally, rename this function to what
it actually does.

No functional change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Sanitize channel extraction
Borislav Petkov [Thu, 9 Dec 2010 17:57:54 +0000 (18:57 +0100)]
amd64_edac: Sanitize channel extraction

Cleanup and simplify f10_determine_channel(); make it more readable.
Also drop f10_map_intlv_en_to_shift() in favor of simply counting the
bits in F1x124[DramIntlvEn] which is equivalent.

There should be no functionality change resulting from this patch.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup chipselect handling
Borislav Petkov [Mon, 29 Nov 2010 18:49:02 +0000 (19:49 +0100)]
amd64_edac: Cleanup chipselect handling

Add a struct representing the DRAM chip select base/limit register
pairs. Concentrate all CS handling in a single function. Also, add CS
looping macros for cleaner, more readable code. While at it, adjust code
to F15h. Finally, do smaller macro names cleanups (remove family names
from register macros) and debug messages clarification.

No functional change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Cleanup DHAR handling
Borislav Petkov [Thu, 11 Nov 2010 16:29:13 +0000 (17:29 +0100)]
amd64_edac: Cleanup DHAR handling

Adjust to F15h, simplify code, fixup macros.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Remove DRAM base/limit subfields caching
Borislav Petkov [Thu, 21 Oct 2010 16:52:53 +0000 (18:52 +0200)]
amd64_edac: Remove DRAM base/limit subfields caching

Add a struct representing the DRAM base/limit range pairs and remove all
cached subfields. Replace them with accessor functions, which actually
saves us some space:

   text    data     bss     dec     hex filename
  14712    1577     336   16625    40f1 drivers/edac/amd64_edac_mod.o.after
  14831    1609     336   16776    4188 drivers/edac/amd64_edac_mod.o.before

Also, it simplifies the code a lot allowing to merge the K8 and F10h
routines.

No functional change.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoamd64_edac: Add support for F15h DCT PCI config accesses
Borislav Petkov [Fri, 8 Oct 2010 16:32:29 +0000 (18:32 +0200)]
amd64_edac: Add support for F15h DCT PCI config accesses

F15h "multiplexes" between the configuration space of the two DRAM
controllers by toggling D18F1x10C[DctCfgSel] while F10h has a different
set of registers for DCT0, and DCT1 in extended PCI config space.

Add DCT configuration space accessors per family thus wrapping all the
different access prerequisites. Clean up code while at it, shorten
names.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoEDAC: Shut up sysfs registration debug code
Borislav Petkov [Thu, 13 Jan 2011 18:03:28 +0000 (19:03 +0100)]
EDAC: Shut up sysfs registration debug code

Raise the debug level of these routines so that their output get issued
out only when the highest debug level is selected. Otherwise, don't
pollute driver debug output.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
13 years agoMerge branches 'dragonrise', 'hidraw-feature', 'multitouch', 'ntrig', 'roccat', ...
Jiri Kosina [Thu, 17 Mar 2011 13:31:46 +0000 (14:31 +0100)]
Merge branches 'dragonrise', 'hidraw-feature', 'multitouch', 'ntrig', 'roccat', 'upstream' and 'upstream-fixes' into for-linus

13 years agoMerge branch 'core' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile...
Ingo Molnar [Thu, 17 Mar 2011 12:38:41 +0000 (13:38 +0100)]
Merge branch 'core' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent

13 years agoMerge branches 'aaci', 'mmci-dma', 'pl' and 'pl011' into drivers
Russell King [Thu, 17 Mar 2011 11:04:51 +0000 (11:04 +0000)]
Merge branches 'aaci', 'mmci-dma', 'pl' and 'pl011' into drivers

13 years agox86: Use PentiumPro-optimized partial_csum() on VIA C7
Jon Nettleton [Wed, 16 Mar 2011 15:32:47 +0000 (15:32 +0000)]
x86: Use PentiumPro-optimized partial_csum() on VIA C7

Testing on the OLPC XO-1.5 (VIA C7-M 1000MHz CPU) shows a partial_csum()
speed increase by a factor of 1.5 when we switch to the Pentium-optimized
version.

Signed-off-by: Daniel Drake <dsd@laptop.org>
Cc: dilinger@queued.net
Signed-off-by: Ingo Molnar <mingo@elte.hu>
13 years agosh: Convert to generic show_interrupts.
Paul Mundt [Thu, 17 Mar 2011 08:31:51 +0000 (17:31 +0900)]
sh: Convert to generic show_interrupts.

Trivial conversion, simply encapsulate the NMI stats in the arch code.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
13 years agoMerge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme...
Ingo Molnar [Thu, 17 Mar 2011 08:12:03 +0000 (09:12 +0100)]
Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/urgent

13 years agotrace, documentation: Fix branch profiling location in debugfs
David Rientjes [Thu, 17 Mar 2011 00:17:08 +0000 (17:17 -0700)]
trace, documentation: Fix branch profiling location in debugfs

The debugfs interface for branch profiling is through

/sys/kernel/debug/tracing/trace_stat/branch_annotated
/sys/kernel/debug/tracing/trace_stat/branch_all

so update the Kconfig accordingly.

Signed-off-by: David Rientjes <rientjes@google.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
LKML-Reference: <alpine.DEB.2.00.1103161716320.11407@chino.kir.corp.google.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
13 years agosh: Wire up new fhandle and clock_adjtime syscalls.
Paul Mundt [Thu, 17 Mar 2011 08:01:24 +0000 (17:01 +0900)]
sh: Wire up new fhandle and clock_adjtime syscalls.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
13 years agosh: modify platform_device for sh_eth driver
Yoshihiro Shimoda [Tue, 8 Mar 2011 08:00:04 +0000 (08:00 +0000)]
sh: modify platform_device for sh_eth driver

A new parameter is added to sh_eth_plat_data. And the sh_eth driver
needs additional memory resource if a module has TSU.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
13 years agosh: add GETHER's platform_device in board-sh7757lcr
Yoshihiro Shimoda [Tue, 8 Mar 2011 08:00:00 +0000 (08:00 +0000)]
sh: add GETHER's platform_device in board-sh7757lcr

This patch also modifies for ETHER's platform_device.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
13 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux...
Paul Mundt [Thu, 17 Mar 2011 07:44:08 +0000 (16:44 +0900)]
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 into sh-latest

13 years agoMerge remote branch 'jwb/next' into next
Benjamin Herrenschmidt [Thu, 17 Mar 2011 06:59:01 +0000 (17:59 +1100)]
Merge remote branch 'jwb/next' into next

13 years agoMerge remote branch 'rmk/for-linus' into for-linus
David Brown [Thu, 17 Mar 2011 05:13:16 +0000 (22:13 -0700)]
Merge remote branch 'rmk/for-linus' into for-linus

* rmk/for-linus: (1557 commits)
  ARM: 6806/1: irq: introduce entry and exit functions for chained handlers
  ARM: 6781/1: Thumb-2: Work around buggy Thumb-2 short branch relocations in gas
  ARM: 6747/1: P2V: Thumb2 support
  ARM: 6798/1: aout-core: zero thread debug registers in a.out core dump
  ARM: 6796/1: Footbridge: Fix I/O mappings for NOMMU mode
  ARM: 6784/1: errata: no automatic Store Buffer drain on Cortex-A9
  ARM: 6772/1: errata: possible fault MMU translations following an ASID switch
  ARM: 6776/1: mach-ux500: activate fix for errata 753970
  ARM: 6794/1: SPEAr: Append UL to device address macros.
  ARM: 6793/1: SPEAr: Remove unused *_SIZE macros from spear*.h files
  ARM: 6792/1: SPEAr: Replace SIZE macro's with SZ_4K macros
  ARM: 6791/1: SPEAr3xx: Declare device structures after shirq code
  ARM: 6790/1: SPEAr: Clock Framework: Rename usbd clock and align apb_clk entry
  ARM: 6789/1: SPEAr3xx: Rename sdio to sdhci
  ARM: 6788/1: SPEAr: Include mach/hardware.h instead of mach/spear.h
  ARM: 6787/1: SPEAr: Reorder #includes in .h & .c files.
  ARM: 6681/1: SPEAr: add debugfs support to clk API
  ARM: 6703/1: SPEAr: update clk API support
  ARM: 6679/1: SPEAr: make clk API functions more generic
  ARM: 6737/1: SPEAr: formalized timer support
  ...

Conflicts:
arch/arm/mach-msm/board-msm7x27.c
arch/arm/mach-msm/board-msm7x30.c
arch/arm/mach-msm/board-qsd8x50.c
arch/arm/mach-msm/board-sapphire.c
arch/arm/mach-msm/include/mach/memory.h

13 years agodrm/radeon: fixup refcounts in radeon dumb create ioctl.
Dave Airlie [Thu, 17 Mar 2011 03:58:34 +0000 (13:58 +1000)]
drm/radeon: fixup refcounts in radeon dumb create ioctl.

This was using old gem refcounting methods, fix it to be the same
as the normal create ioctl.

Signed-off-by: Dave Airlie <airlied@redhat.com>
13 years agodrm: radeon: *_cs_packet_parse_vline() cleanup
Paul Bolle [Wed, 16 Mar 2011 21:10:06 +0000 (22:10 +0100)]
drm: radeon: *_cs_packet_parse_vline() cleanup

Simplify the way the return value is set a number of times (mostly on
error).

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Dave Airlie <airlied@redhat.com>
13 years agoradeon: merge list_del()/list_add_tail() to list_move_tail()
Nicolas Kaiser [Wed, 16 Mar 2011 16:08:04 +0000 (17:08 +0100)]
radeon: merge list_del()/list_add_tail() to list_move_tail()

Merge list_del() + list_add_tail() to list_move_tail().

Signed-off-by: Nicolas Kaiser <nikai@nikai.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
13 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6
Linus Torvalds [Thu, 17 Mar 2011 03:41:28 +0000 (20:41 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (33 commits)
  sparc32: Fix might-be-used-uninitialized warning in do_sparc_fault().
  sparc: Fix .size directive for do_int_load
  sparc64: Fix build errors with gcc-4.6.0
  sparc32,sun4m: percpu and global register definitions moved to irq.h
  sparc32: introduce build_device_irq
  sparc32: introduce sparc_irq_config
  sparc32: fix build with leon or floppy enabled
  sparc: convert to clocksource_register_hz/khz
  sparc64: Sharpen address space randomization calculations.
  sparc32: irq_32.c cleanup
  sparc32, sun4d: add comment in empty statement in sun4d_request_irq()
  sparc32,sun4d: drop unused code in sun4d_distribute_irqs()
  sparc32,sun4d: irq, smp files cleanup
  sparc32,sun4m: irq, smp files cleanup
  sparc32,sun4c: irq file cleanup
  sparc32: add irq + smp declarations to headers
  sparc32: remove tick14.c
  sparc32/leon: FPU-FSR only available when FPU present
  SPARC/LEON: power down instruction different of different LEONs
  sparc32: added U-Boot build target: uImage
  ...

13 years agoMerge branch 'mnt_devname' of git://git.kernel.org/pub/scm/linux/kernel/git/viro...
Linus Torvalds [Thu, 17 Mar 2011 02:09:57 +0000 (19:09 -0700)]
Merge branch 'mnt_devname' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6

* 'mnt_devname' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
  vfs: bury ->get_sb()
  nfs: switch NFS from ->get_sb() to ->mount()
  nfs: stop mangling ->mnt_devname on NFS
  vfs: new superblock methods to override /proc/*/mount{s,info}
  nfs: nfs_do_{ref,sub}mount() superblock argument is redundant
  nfs: make nfs_path() work without vfsmount
  nfs: store devname at disconnected NFS roots
  nfs: propagate devname to nfs{,4}_get_root()

13 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux...
Linus Torvalds [Thu, 17 Mar 2011 02:08:03 +0000 (19:08 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
  m68k/block: amiflop - Remove superfluous amiga_chip_alloc() cast
  m68k/atari: ARAnyM - Add support for network access
  m68k/atari: ARAnyM - Add support for console access
  m68k/atari: ARAnyM - Add support for block access
  m68k/atari: Initial ARAnyM support
  m68k: Kconfig - Remove unneeded "default n"
  m68k: Makefiles - Change to new flags variables
  m68k/amiga: Reclaim Chip RAM for PPC exception handlers
  m68k: Allow all kernel traps to be handled via exception fixups
  m68k: Use base_trap_init() to initialize vectors
  m68k: Add helper function handle_kernel_fault()

13 years agoMerge branch 'remove' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Thu, 17 Mar 2011 02:05:40 +0000 (19:05 -0700)]
Merge branch 'remove' of master.kernel.org:/home/rmk/linux-2.6-arm

* 'remove' of master.kernel.org:/home/rmk/linux-2.6-arm:
  ARM: 6629/2: aaec2000: remove support for mach-aaec2000
  ARM: lh7a40x: remove unmaintained platform support

Fix up trivial conflicts in
 - arch/arm/mach-{aaec2000,lh7a40x}/include/mach/memory.h (removed)
 - drivers/usb/gadget/Kconfig (USB_[GADGET_]LH7A40X removed, others added)

13 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Thu, 17 Mar 2011 02:03:06 +0000 (19:03 -0700)]
Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm: (91 commits)
  ARM: 6806/1: irq: introduce entry and exit functions for chained handlers
  ARM: 6781/1: Thumb-2: Work around buggy Thumb-2 short branch relocations in gas
  ARM: 6747/1: P2V: Thumb2 support
  ARM: 6798/1: aout-core: zero thread debug registers in a.out core dump
  ARM: 6796/1: Footbridge: Fix I/O mappings for NOMMU mode
  ARM: 6784/1: errata: no automatic Store Buffer drain on Cortex-A9
  ARM: 6772/1: errata: possible fault MMU translations following an ASID switch
  ARM: 6776/1: mach-ux500: activate fix for errata 753970
  ARM: 6794/1: SPEAr: Append UL to device address macros.
  ARM: 6793/1: SPEAr: Remove unused *_SIZE macros from spear*.h files
  ARM: 6792/1: SPEAr: Replace SIZE macro's with SZ_4K macros
  ARM: 6791/1: SPEAr3xx: Declare device structures after shirq code
  ARM: 6790/1: SPEAr: Clock Framework: Rename usbd clock and align apb_clk entry
  ARM: 6789/1: SPEAr3xx: Rename sdio to sdhci
  ARM: 6788/1: SPEAr: Include mach/hardware.h instead of mach/spear.h
  ARM: 6787/1: SPEAr: Reorder #includes in .h & .c files.
  ARM: 6681/1: SPEAr: add debugfs support to clk API
  ARM: 6703/1: SPEAr: update clk API support
  ARM: 6679/1: SPEAr: make clk API functions more generic
  ARM: 6737/1: SPEAr: formalized timer support
  ...

13 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
Linus Torvalds [Thu, 17 Mar 2011 02:02:36 +0000 (19:02 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu: (41 commits)
  m68knommu: external interrupt support to ColdFire intc-simr controller
  m68knommu: external interrupt support to ColdFire intc-2 controller
  m68knommu: remove ColdFire CLOCK_DIV config option
  m68knommu: fix gpio warnings for ColdFire 5407 targets
  m68knommu: fix gpio warnings for ColdFire 532x targets
  m68knommu: fix gpio warnings for ColdFire 5307 targets
  m68knommu: fix gpio warnings for ColdFire 527x targets
  m68knommu: fix gpio warnings for ColdFire 5272 targets
  m68knommu: fix gpio warnings for ColdFire 5249 targets
  m68knommu: fix gpio warnings for ColdFire 523x targets
  m68knommu: fix gpio warnings for ColdFire 520x targets
  m68knommu: fix gpio warnings for ColdFire 5206e targets
  m68knommu: fix gpio warnings for ColdFire 5206 targets
  m68knommu: fixing compiler warnings
  m68knommu: limit interrupts supported by ColdFire intc-simr driver
  m68knommu: move some init code out of unmask routine for ColdFire intc-2
  m68knommu: limit interrupts supported by ColdFire intc-2 driver
  m68knommu: add basic support for the ColdFire based FireBee board
  m68knommu: make ColdFire internal peripheral region configurable
  m68knommu: clean up definitions of ColdFire peripheral base registers
  ...

13 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Thu, 17 Mar 2011 02:01:29 +0000 (19:01 -0700)]
Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64] tioca: Fix assignment from incompatible pointer warnings
  [IA64] mca.c: Fix cast from integer to pointer warning
  [IA64] setup.c Typo fix "Architechtuallly"
  [IA64] Add CONFIG_MISC_DEVICES=y to configs that need it.
  [IA64] disable interrupts at end of ia64_mca_cpe_int_handler()
  [IA64] Add DMA_ERROR_CODE define.
  pstore: fix build warning for unused return value from sysfs_create_file
  pstore: X86 platform interface using ACPI/APEI/ERST
  pstore: new filesystem interface to platform persistent storage

13 years agounicore32: rewrite arch-specific tlb.h to use asm-generic version
GuanXuetao [Fri, 4 Mar 2011 12:00:11 +0000 (20:00 +0800)]
unicore32: rewrite arch-specific tlb.h to use asm-generic version

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32: modify io_p2v and io_v2p macros, and adjust PKUNITY_mmio_BASEs
GuanXuetao [Fri, 4 Mar 2011 10:07:48 +0000 (18:07 +0800)]
unicore32: modify io_p2v and io_v2p macros, and adjust PKUNITY_mmio_BASEs

1. remove __REG macro
2. add (void __iomem *) to io_p2v macro
3. add (phys_addr_t) to io_v2p macro
4. add PKUNITY_AHB_BASE and PKUNITY_APB_BASE definitions
5. modify all PKUNITY_mmio_BASEs from physical addr to virtual addr
6. adjust prefix macro for all usage of PKUNITY_mmio_BASEs
  -- by advice with Arnd Bergmann

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
13 years agounicore32: replace unicore32-specific iomap functions with generic lib implementation
GuanXuetao [Sun, 27 Feb 2011 04:46:06 +0000 (12:46 +0800)]
unicore32: replace unicore32-specific iomap functions with generic lib implementation

1. define and enable CONFIG_GENERIC_IOMAP
2. define unicore32-specific PCI_IOBASE for asm-generic/io.h
3. define HAVE_ARCH_PIO_SIZE and unicore32-specific PIO_* macros
4. remove all unicore32-specific iomap functions

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Reviewed-and-Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agounicore32 machine related: add frame buffer driver for pkunity-v3 soc
GuanXuetao [Sat, 26 Feb 2011 13:39:10 +0000 (21:39 +0800)]
unicore32 machine related: add frame buffer driver for pkunity-v3 soc

change from original version -- by advice of Paul Mundt
1. remove videomemorysize definitions
2. remove unifb_enable and unifb_setup
3. use dev_warn instead of printk in fb driver
4. remove judgement for FB_ACCEL_PUV3_UNIGFX
5. adjust clk_get and clk_set_rate calls
6. add resources definitions
7. remove unifb_option
8. adjust register for platform_device
9. adjust unifb_ops position and unifb_regs assignment position

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agounicore32 machine related files: add i2c bus drivers for pkunity-v3 soc
GuanXuetao [Sat, 26 Feb 2011 13:29:29 +0000 (21:29 +0800)]
unicore32 machine related files: add i2c bus drivers for pkunity-v3 soc

change from original version -- by advice of Jean Delvare
1. remove global variable i2c_reg, replaced by local variables
2. replace ENXIO with ENODEV when no platform resources
3. add adapter->nr assignment before i2c_add_numbered_adapter() call
4. add judgement for i2c_del_adapter() return value
5. release adapter when driver removed
6. add __devexit for puv3_i2c_remove() function
7. modify several names to more appropriated ones

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Acked-by: Arnd Bergmann <arnd@arndb.de>
13 years agounicore32 io: redefine __REG(x) and re-use readl/writel funcs
GuanXuetao [Sat, 26 Feb 2011 13:21:18 +0000 (21:21 +0800)]
unicore32 io: redefine __REG(x) and re-use readl/writel funcs

  -- by advice of Arnd Bergmann

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
Reviewed-by: Arnd Bergmann <arnd@arndb.de>
13 years agounicore32 i8042 upgrade and bugfix: adjust resource request region type
GuanXuetao [Fri, 25 Feb 2011 09:58:00 +0000 (17:58 +0800)]
unicore32 i8042 upgrade and bugfix: adjust resource request region type

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32 upgrade to v2.6.38-rc5: add one more paramter for pte_alloc_map call
GuanXuetao [Tue, 22 Feb 2011 09:34:47 +0000 (17:34 +0800)]
unicore32 upgrade to v2.6.38-rc5: add one more paramter for pte_alloc_map call

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32 i8042: adjust io funcs of i8042-unicore32io.h
GuanXuetao [Fri, 18 Feb 2011 10:38:33 +0000 (18:38 +0800)]
unicore32 i8042: adjust io funcs of i8042-unicore32io.h

replace inb/outb with readb/writeb in i8042-unicore32io.h
and correct typecasting of register and region macros
  -- by advice with Arnd Bergmann

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32: rename PKUNITY_IOSPACE_BASE to PKUNITY_MMIO_BASE
GuanXuetao [Sat, 26 Feb 2011 12:49:47 +0000 (20:49 +0800)]
unicore32: rename PKUNITY_IOSPACE_BASE to PKUNITY_MMIO_BASE

for the term IOSPACE normally refers to the PCI PIO space
  -- by advice with Arnd Bergmann

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32: modify function names and parameters for irq_chips
GuanXuetao [Thu, 17 Feb 2011 11:15:36 +0000 (19:15 +0800)]
unicore32: modify function names and parameters for irq_chips

  -- by advice with Thomas Gleixner

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agounicore32: remove unused lines in arch/unicore32/include/asm/irq.h
GuanXuetao [Thu, 17 Feb 2011 11:06:59 +0000 (19:06 +0800)]
unicore32: remove unused lines in arch/unicore32/include/asm/irq.h

Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
13 years agosparc32: Fix might-be-used-uninitialized warning in do_sparc_fault().
David S. Miller [Wed, 9 Mar 2011 21:00:47 +0000 (13:00 -0800)]
sparc32: Fix might-be-used-uninitialized warning in do_sparc_fault().

When we try to handle vmalloc faults, we can take a code
path which uses "code" before we actually set it.

Amusingly gcc-3.3 notices this yet gcc-4.x does not.

Reported-by: Bob Breuer <breuerr@mc.net>
Signed-off-by: David S. Miller <davem@davemloft.net>