]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
16 years agoMerge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
Linus Torvalds [Wed, 11 Mar 2009 19:14:04 +0000 (12:14 -0700)]
Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc

* 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
  radeonfb/aty128fb: Disable broken early resume hook for PowerBooks
  hvc_console: Remove tty->low_latency on pseries backends
  powerpc: fix linkstation and storcenter compilation breakage
  powerpc/4xx: Enable SERIAL_OF support by default for Virtex platforms

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt...
Linus Torvalds [Wed, 11 Mar 2009 19:09:45 +0000 (12:09 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:
  drm/i915: fix 945 fence register writes for fence 8 and above.
  drm/i915: Protect active fences on i915
  drm/i915: Check to see if we've pinned all available fences
  drm/i915: Check fence status on every pin.
  drm/i915: First recheck for an empty fence register.
  drm/i915: Fix bad \n in MTRR failure notice.
  drm/i915: Don't restore palettes through VGA registers.
  i915: add newline to i915_gem_object_pin failure msg
  drm: Return EINVAL on duplicate objects in execbuffer object list

16 years agoMerge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Wed, 11 Mar 2009 19:04:51 +0000 (12:04 -0700)]
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: work around Fedora-11 x86-32 kernel failures on Intel Atom CPUs

16 years agoFix _fat_bmap() locking
OGAWA Hirofumi [Wed, 11 Mar 2009 17:03:23 +0000 (02:03 +0900)]
Fix _fat_bmap() locking

On swapon() path, it has already i_mutex. So, this uses i_alloc_sem
instead of it.

Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Reported-by: Laurent GUERBY <laurent@guerby.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoSUNRPC: Ensure that xs_nospace return values are propagated
Trond Myklebust [Wed, 11 Mar 2009 18:38:01 +0000 (14:38 -0400)]
SUNRPC: Ensure that xs_nospace return values are propagated

If xs_nospace() finds that the socket has disconnected, it attempts to
return ENOTCONN, however that value is then squashed by the callers.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Delay, then retry on connection errors.
Trond Myklebust [Wed, 11 Mar 2009 18:38:01 +0000 (14:38 -0400)]
SUNRPC: Delay, then retry on connection errors.

Enforce the comment in xs_tcp_connect_worker4/xs_tcp_connect_worker6 that
we should delay, then retry on certain connection errors.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Return EAGAIN instead of ENOTCONN when waking up xprt->pending
Trond Myklebust [Wed, 11 Mar 2009 18:38:00 +0000 (14:38 -0400)]
SUNRPC: Return EAGAIN instead of ENOTCONN when waking up xprt->pending

While we should definitely return socket errors to the task that is
currently trying to send data, there is no need to propagate the same error
to all the other tasks on xprt->pending. Doing so actually slows down
recovery, since it causes more than one tasks to attempt socket recovery.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Handle socket errors correctly
Trond Myklebust [Wed, 11 Mar 2009 18:38:00 +0000 (14:38 -0400)]
SUNRPC: Handle socket errors correctly

Ensure that we pick up and handle socket errors as they occur.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Handle ECONNREFUSED correctly in xprt_transmit()
Trond Myklebust [Wed, 11 Mar 2009 18:37:59 +0000 (14:37 -0400)]
SUNRPC: Handle ECONNREFUSED correctly in xprt_transmit()

If we get an ECONNREFUSED error, we currently go to sleep on the
'xprt->sending' wait queue. The problem is that no timeout is set there,
and there is nothing else that will wake the task up later.

We should deal with ECONNREFUSED in call_status, given that is where we
also deal with -EHOSTDOWN, and friends.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Don't disconnect if a connection is still in progress.
Trond Myklebust [Wed, 11 Mar 2009 18:37:58 +0000 (14:37 -0400)]
SUNRPC: Don't disconnect if a connection is still in progress.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Ensure we set XPRT_CLOSING only after we've sent a tcp FIN...
Trond Myklebust [Wed, 11 Mar 2009 18:37:58 +0000 (14:37 -0400)]
SUNRPC: Ensure we set XPRT_CLOSING only after we've sent a tcp FIN...

...so that we can distinguish between when we need to shutdown and when we
don't. Also remove the call to xs_tcp_shutdown() from xs_tcp_connect(),
since xprt_connect() makes the same test.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Avoid an unnecessary task reschedule on ENOTCONN
Trond Myklebust [Wed, 11 Mar 2009 18:37:57 +0000 (14:37 -0400)]
SUNRPC: Avoid an unnecessary task reschedule on ENOTCONN

If the socket is unconnected, and xprt_transmit() returns ENOTCONN, we
currently give up the lock on the transport channel. Doing so means that
the lock automatically gets assigned to the next task in the xprt->sending
queue, and so that task needs to be woken up to do the actual connect.

The following patch aims to avoid that unnecessary task switch.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: load the rpc/rdma transport module automatically
Tom Talpey [Wed, 11 Mar 2009 18:37:56 +0000 (14:37 -0400)]
NFS: load the rpc/rdma transport module automatically

When mounting an NFS/RDMA server with the "-o proto=rdma" or
"-o rdma" options, attempt to dynamically load the necessary
"xprtrdma" client transport module. Doing so improves usability,
while avoiding a static module dependency and any unnecesary
resources.

Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
Cc: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: dynamically load RPC transport modules on-demand
Tom Talpey [Wed, 11 Mar 2009 18:37:56 +0000 (14:37 -0400)]
SUNRPC: dynamically load RPC transport modules on-demand

Provide an api to attempt to load any necessary kernel RPC
client transport module automatically. By convention, the
desired module name is "xprt"+"transport name". For example,
when NFS mounting with "-o proto=rdma", attempt to load the
"xprtrdma" module.

Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
Cc: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoXPRTRDMA: correct an rpc/rdma inline send marshaling error
Tom Talpey [Wed, 11 Mar 2009 18:37:55 +0000 (14:37 -0400)]
XPRTRDMA: correct an rpc/rdma inline send marshaling error

Certain client rpc's which contain both lengthy page-contained
metadata and a non-empty xdr_tail buffer require careful handling
to avoid overlapped memory copying. Rearranging of existing rpcrdma
marshaling code avoids it; this fixes an NFSv4 symlink creation error
detected with connectathon basic/test8 to multiple servers.

Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSVCRDMA: remove faulty assertions in rpc/rdma chunk validation.
Tom Talpey [Wed, 11 Mar 2009 18:37:55 +0000 (14:37 -0400)]
SVCRDMA: remove faulty assertions in rpc/rdma chunk validation.

Certain client-provided RPCRDMA chunk alignments result in an
additional scatter/gather entry, which triggered nfs/rdma server
assertions incorrectly. OpenSolaris nfs/rdma client connectathon
testing was blocked by these in the special/locking section.

Signed-off-by: Tom Talpey <tmtalpey@gmail.com>
Cc: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: Kill the "defined but not used" compile error on nommu machines
Trond Myklebust [Wed, 11 Mar 2009 18:37:54 +0000 (14:37 -0400)]
NFS: Kill the "defined but not used" compile error on nommu machines

Bryan Wu reports that when compiling NFS on nommu machines he gets a
"defined but not used" error on nfs_file_mmap().

The easiest fix is simply to get rid of the special casing in NFS, and
just always call generic_file_mmap() to set up the file.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoMerge branch 's3c-iis-header' into for-2.6.30
Mark Brown [Wed, 11 Mar 2009 18:30:48 +0000 (18:30 +0000)]
Merge branch 's3c-iis-header' into for-2.6.30

16 years ago[ARM] Revert futher extraneous changes from the S3C header move
Mark Brown [Wed, 11 Mar 2009 18:28:24 +0000 (18:28 +0000)]
[ARM] Revert futher extraneous changes from the S3C header move

Can't see any immediate need for these; build tested.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Felix Blyakher [Wed, 11 Mar 2009 18:28:03 +0000 (13:28 -0500)]
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6

16 years agoNFS: Throttle page dirtying while we're flushing to disk
Trond Myklebust [Wed, 11 Mar 2009 18:10:30 +0000 (14:10 -0400)]
NFS: Throttle page dirtying while we're flushing to disk

The following patch is a combination of a patch by myself and Peter
Staubach.

Trond: If we allow other processes to dirty pages while a process is doing
a consistency sync to disk, we can end up never making progress.

Peter: Attached is a patch which addresses a continuing problem with
the NFS client generating out of order WRITE requests.  While
this is compliant with all of the current protocol
specifications, there are servers in the market which can not
handle out of order WRITE requests very well.  Also, this may
lead to sub-optimal block allocations in the underlying file
system on the server.  This may cause the read throughputs to
be reduced when reading the file from the server.

Peter: There has been a lot of work recently done to address out of
order issues on a systemic level.  However, the NFS client is
still susceptible to the problem.  Out of order WRITE
requests can occur when pdflush is in the middle of writing
out pages while the process dirtying the pages calls
generic_file_buffered_write which calls
generic_perform_write which calls
balance_dirty_pages_rate_limited which ends up calling
writeback_inodes which ends up calling back into the NFS
client to writes out dirty pages for the same file that
pdflush happens to be working with.

Signed-off-by: Peter Staubach <staubach@redhat.com>
[modification by Trond to merge the two similar patches]
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: cleanup - remove struct nfs_inode->ncommit
Trond Myklebust [Wed, 11 Mar 2009 18:10:29 +0000 (14:10 -0400)]
NFS: cleanup - remove struct nfs_inode->ncommit

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: Simplify some cache consistency post-op GETATTRs
Trond Myklebust [Wed, 11 Mar 2009 18:10:28 +0000 (14:10 -0400)]
NFSv4: Simplify some cache consistency post-op GETATTRs

Certain asynchronous operations such as write() do not expect
(or care) that other metadata such as the file owner, mode, acls, ...
change. All they want to do is update and/or check the change attribute,
ctime, and mtime.
By skipping the file owner and group update, we also avoid having to do a
potential idmapper upcall for these asynchronous RPC calls.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: A referral is assumed to always point to a directory.
Trond Myklebust [Wed, 11 Mar 2009 18:10:28 +0000 (14:10 -0400)]
NFSv4: A referral is assumed to always point to a directory.

Fix a bug whereby we would fail to create a mount point for a referral.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: Make decode_getfattr() set fattr->valid to reflect what was decoded
Trond Myklebust [Wed, 11 Mar 2009 18:10:27 +0000 (14:10 -0400)]
NFSv4: Make decode_getfattr() set fattr->valid to reflect what was decoded

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: Clean up decode_getfattr()
Trond Myklebust [Wed, 11 Mar 2009 18:10:26 +0000 (14:10 -0400)]
NFSv4: Clean up decode_getfattr()

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: Fix the type of struct nfs_fattr->mode
Trond Myklebust [Wed, 11 Mar 2009 18:10:26 +0000 (14:10 -0400)]
NFS: Fix the type of struct nfs_fattr->mode

There is no point in using anything other than umode_t, since we copy the
content pretty much directly into inode->i_mode.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: Shrink the struct nfs_fattr
Trond Myklebust [Wed, 11 Mar 2009 18:10:25 +0000 (14:10 -0400)]
NFS: Shrink the struct nfs_fattr

We don't need the bitmap[] field anymore, since the 'valid' field tells us
all we need to know about which attributes were filled in...
Also move the pre-op attributes in order to improve the structure packing.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: Support NFSv4 optional attributes in the struct nfs_fattr
Trond Myklebust [Wed, 11 Mar 2009 18:10:24 +0000 (14:10 -0400)]
NFSv4: Support NFSv4 optional attributes in the struct nfs_fattr

Currently, filling struct nfs_fattr is more or less an all or nothing
operation, since NFSv2 and NFSv3 have only mandatory attributes.
In NFSv4, some attributes are optional, and so we may simply not be able to
fill in those fields. Furthermore, NFSv4 allows you to specify which
attributes you are interested in retrieving, thus permitting you to
optimise away retrieval of attributes that you know will no change...

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFSv4: Ignore errors on the post-op attributes in SETATTR calls
Trond Myklebust [Wed, 11 Mar 2009 18:10:23 +0000 (14:10 -0400)]
NFSv4: Ignore errors on the post-op attributes in SETATTR calls

There is no need to fail or retry a SETATTR call just because the post-op
GETATTR failed.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: flush cached directory information slightly more readily.
NeilBrown [Wed, 11 Mar 2009 18:10:23 +0000 (14:10 -0400)]
NFS: flush cached directory information slightly more readily.

If cached directory contents becomes incorrect, there is no way to
flush the contents.  This contrasts with files where file locking is
the recommended way to ensure cache consistency between multiple
applications (a read-lock always flushes the cache).

Also while changes to files often change the size of the file (thus
triggering a cache flush), changes to directories often do not change
the apparent size (as the size is often rounded to a block size).

So it is particularly important with directories to avoid the
possibility of an incorrect cache wherever possible.

When the link count on a directory changes it implies a change in the
number of child directories, and so a change in the contents of this
directory.  So use that as a trigger to flush cached contents.

When the ctime changes but the mtime does not, there are two possible
reasons.
 1/ The owner/mode information has been changed.
 2/ utimes has been used to set the mtime backwards.

In the first case, a data-cache flush is not required.
In the second case it is.

So on the basis that correctness trumps performance, flush the
directory contents cache in this case also.

Signed-off-by: NeilBrown <neilb@suse.de>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoNFS: Minor __nfs_revalidate_inode cleanup
Suresh Jayaraman [Wed, 11 Mar 2009 18:10:22 +0000 (14:10 -0400)]
NFS: Minor __nfs_revalidate_inode cleanup

Remove redundant NFS_STALE() check, a leftover due to the commit
691beb13cdc88358334ef0ba867c080a247a760f

Signed-off-by: Suresh Jayaraman <sjayaraman@suse.de>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Avoid spurious wake-up during UDP connect processing
Chuck Lever [Wed, 11 Mar 2009 18:10:21 +0000 (14:10 -0400)]
SUNRPC: Avoid spurious wake-up during UDP connect processing

To clear out old state, the UDP connect workers unconditionally invoke
xs_close() before proceeding with a new connect.  Nowadays this causes
a spurious wake-up of the task waiting for the connect to complete.

This is a little racey, but usually harmless.  The waiting task
immediately retries the connect via a call_bind/call_connect sequence,
which usually finds the transport already in the connected state
because the connect worker has finished in the background.

To avoid a spurious wake-up, factor the xs_close() logic that resets
the underlying socket into a helper, and have the UDP connect workers
call that helper instead of xs_close().

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: xprt_connect() don't abort the task if the transport isn't bound
Trond Myklebust [Wed, 11 Mar 2009 18:09:39 +0000 (14:09 -0400)]
SUNRPC: xprt_connect() don't abort the task if the transport isn't bound

If the transport isn't bound, then we should just return ENOTCONN, letting
call_connect_status() and/or call_status() deal with retrying. Currently,
we appear to abort all pending tasks with an EIO error.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agoSUNRPC: Fix an Oops due to socket not set up yet...
Trond Myklebust [Wed, 11 Mar 2009 18:06:41 +0000 (14:06 -0400)]
SUNRPC: Fix an Oops due to socket not set up yet...

We can Oops in both xs_udp_send_request() and xs_tcp_send_request() if the
call to xs_sendpages() returns an error due to the socket not yet being
set up.
Deal with that situation by returning a new error: ENOTSOCK, so that we
know to avoid dereferencing transport->sock.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
16 years agodrm/i915: fix 945 fence register writes for fence 8 and above.
Eric Anholt [Wed, 11 Mar 2009 05:34:49 +0000 (22:34 -0700)]
drm/i915: fix 945 fence register writes for fence 8 and above.

The last 8 fence registers sit at a different offset, so when we went to set
fence number 8 in the lower offset, we instead set PGETBL_CTL, and the GPU
got all sorts of angry at us.

fd.o bug #20567.  Easily reproducible by running glxgears and killing it about
6 times.

Signed-off-by: Eric Anholt <eric@anholt.net>
16 years agox86: remove zImage support
H. Peter Anvin [Wed, 11 Mar 2009 17:55:33 +0000 (10:55 -0700)]
x86: remove zImage support

Impact: obsolete feature removal

The zImage kernel format has been functionally unused for a very long
time.  It is just barely possible to build a modern kernel that still
fits within the zImage size limit, but it is highly unlikely that
anyone ever uses it.  Furthermore, although it is still supported by
most bootloaders, it has been at best poorly tested (or not tested at
all); some bootloaders are even known to not support zImage at all and
not having even noticed.

Also remove some really obsolete constants that no longer have any
meaning.

LKML-Reference: <49B703D4.1000008@zytor.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
16 years agodrm/i915: Protect active fences on i915
Chris Wilson [Wed, 11 Feb 2009 14:26:47 +0000 (14:26 +0000)]
drm/i915: Protect active fences on i915

The i915 also uses the fence registers for GPU access to tiled buffers so
we cannot reallocate one whilst it is on the active list. By performing a
LRU scan of the fenced buffers we also avoid waiting the possibility of
waiting on a pinned, or otherwise unusable, buffer.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Eric Anholt <eric@anholt.net>
16 years agodlm: fix length calculation in compat code
David Teigland [Wed, 4 Mar 2009 17:17:23 +0000 (11:17 -0600)]
dlm: fix length calculation in compat code

Using offsetof() to calculate name length does not work because
it does not produce consistent results with with structure packing.
This caused memcpy to corrupt memory by copying 4 extra bytes off
the end of the buffer on 64 bit kernels with 32 bit userspace
(the only case where this 32/64 compat code is used).

The fix is to calculate name length directly from the start instead
of trying to derive it later using count and offsetof.

Signed-off-by: David Teigland <teigland@redhat.com>
16 years agodlm: ignore cancel on granted lock
David Teigland [Fri, 27 Feb 2009 21:23:28 +0000 (15:23 -0600)]
dlm: ignore cancel on granted lock

Return immediately from dlm_unlock(CANCEL) if the lock is
granted and not being converted; there's nothing to cancel.

Signed-off-by: David Teigland <teigland@redhat.com>
16 years agodlm: clear defunct cancel state
David Teigland [Wed, 28 Jan 2009 20:37:54 +0000 (14:37 -0600)]
dlm: clear defunct cancel state

When a conversion completes successfully and finds that a cancel
of the convert is still in progress (which is now a moot point),
preemptively clear the state associated with outstanding cancel.
That state could cause a subsequent conversion to be ignored.

Also, improve the consistency and content of error and debug
messages in this area.

Signed-off-by: David Teigland <teigland@redhat.com>
16 years agox86: work around Fedora-11 x86-32 kernel failures on Intel Atom CPUs
Ingo Molnar [Tue, 10 Mar 2009 21:31:03 +0000 (22:31 +0100)]
x86: work around Fedora-11 x86-32 kernel failures on Intel Atom CPUs

Impact: work around boot crash

Work around Intel Atom erratum AAH41 (probabilistically) - it's triggering
in the field.

Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Tested-by: Kyle McMartin <kyle@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agodlm: replace idr with hash table for connections
Christine Caulfield [Wed, 28 Jan 2009 18:57:40 +0000 (12:57 -0600)]
dlm: replace idr with hash table for connections

Integer nodeids can be too large for the idr code; use a hash
table instead.

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
16 years agoASoC: Merge dai_ops factor out
Mark Brown [Wed, 11 Mar 2009 16:51:31 +0000 (16:51 +0000)]
ASoC: Merge dai_ops factor out

Merge Eric Maio's patch to merge snd_soc_dai_ops out of line.  Fixed
merge issues and updated drivers, plus an issue with the ops for the two
s3c2443 AC97 DAIs having been merged.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agoARM: OMAP: Fix GPIO switch initial output state handling
Jani Nikula [Wed, 11 Mar 2009 13:07:19 +0000 (13:07 +0000)]
ARM: OMAP: Fix GPIO switch initial output state handling

The switchover to cross-platform GPIO interface unexpectedly caused all
output GPIO switches to be set to high state by default, unlike the
original OMAP code. Introduce a new GPIO switch flag to define the
initial state of the switch. Unless the flag is set, the default is now
inactive state of the switch.

Also store the state of output switches directly into the switch struct
instead of trying to read an output GPIO.

Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoOMAP1: ASoC buildfix for OSK
David Brownell [Wed, 11 Mar 2009 10:37:25 +0000 (10:37 +0000)]
OMAP1: ASoC buildfix for OSK

Buildfix:

  CC      sound/soc/omap/osk5912.o
  sound/soc/omap/osk5912.c: In function 'osk_soc_init':
  sound/soc/omap/osk5912.c:189: error: implicit declaration of function 'clk_get_usecount'
  make[3]: *** [sound/soc/omap/osk5912.o] Error 1

There's no such (standard) clock interface.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoOMAP1: OMAP_TAG_USB buildfix (OSK)
David Brownell [Wed, 11 Mar 2009 10:20:05 +0000 (10:20 +0000)]
OMAP1: OMAP_TAG_USB buildfix (OSK)

Build fix:

  CC      arch/arm/mach-omap1/board-osk.o
  arch/arm/mach-omap1/board-osk.c: In function 'osk_mistral_init':
  arch/arm/mach-omap1/board-osk.c:512: error: implicit declaration of function 'omap_usb_init'
  make[1]: *** [arch/arm/mach-omap1/board-osk.o] Error 1

The error is twofold.  First, USB is on the mainboard, not the Mistral card;
that's specific to the OSK.  Second, header goofage -- hurts all OMAP1 boards.

I'm puzzled by the notion tha the "OMAP1: get rid of OMAP_TAG_USB" patch could
have been compile-tested.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoASoC: Fix formats for s3c24xx-i2s register prints
Mark Brown [Wed, 11 Mar 2009 16:28:29 +0000 (16:28 +0000)]
ASoC: Fix formats for s3c24xx-i2s register prints

The register values are all u32 so don't need the long format.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agotcp: allow timestamps even if SYN packet has tsval=0
Eric Dumazet [Wed, 11 Mar 2009 16:23:57 +0000 (09:23 -0700)]
tcp: allow timestamps even if SYN packet has tsval=0

Some systems send SYN packets with apparently wrong RFC1323 timestamp
option values [timestamp tsval=0 tsecr=0].
It might be for security reasons (http://www.secuobs.com/plugs/25220.shtml )

Linux TCP stack ignores this option and sends back a SYN+ACK packet
without timestamp option, thus many TCP flows cannot use timestamps
and lose some benefit of RFC1323.

Other operating systems seem to not care about initial tsval value, and let
tcp flows to negotiate timestamp option.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoipv6: Fix BUG when disabled ipv6 module is unloaded
John Dykstra [Wed, 11 Mar 2009 16:22:51 +0000 (09:22 -0700)]
ipv6:  Fix BUG when disabled ipv6 module is unloaded

Do not try to "uninitialize" ipv6 if its initialization had been skipped
because module parameter disable=1 had been specified.

Reported-by: Thomas Backlund <tmb@mandriva.org>
Signed-off-by: John Dykstra <john.dykstra1@gmail.com>
Acked-by: Brian Haley <brian.haley@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agommc-twl4030 uses regulator framework
David Brownell [Wed, 11 Mar 2009 12:24:16 +0000 (12:24 +0000)]
mmc-twl4030 uses regulator framework

Finish decoupling the HSMMC glue from the twl4030 as the only
regulator provider, using the regulator framework instead.
This makes the glue's "mmc-twl4030" name become a complete
misnomer ... this code could probably all migrate into the
HSMMC driver now.

Tested on 3430SDP (SD and low-voltage MMC) and Beagle (SD),
plus some other boards (including Overo) after they were
converted to set up MMC regulators properly.

Eventually all boards should just associate a regulator with
each MMC controller they use.  In some cases (Overo MMC2 and
Pandora MMC3, at least) that would be a fixed-voltage regulator
with no real software control.  As a temporary hack (pending
regulator-next updates to make the "fixed.c" regulator become
usable) there's a new ocr_mask field for those boards.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoMMC: regulator utilities
David Brownell [Wed, 11 Mar 2009 12:23:12 +0000 (12:23 +0000)]
MMC: regulator utilities

Glue between MMC and regulator stacks ... verified with
some OMAP3 boards using adjustable and configured-as-fixed
regulators on several MMC controllers.

These calls are intended to be used by MMC host adapters
using at least one regulator per host.  Examples include
slots with regulators supporting multiple voltages and
ones using multiple voltage rails (e.g. DAT4..DAT7 using a
separate supply, or a split rail chip like certain SDIO
WLAN or eMMC solutions).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Pierre Ossman <drzeus@drzeus.cx>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoregulator: twl4030 voltage enumeration (v2) cleanups
David Brownell [Wed, 11 Mar 2009 12:22:26 +0000 (12:22 +0000)]
regulator: twl4030 voltage enumeration (v2) cleanups

Minor cleanups to the twl403 regulator driver, mostly enabled
by other recent changes:  comments, shrink memory usage, add
definition for one bit.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoregulator: twl4030 voltage enumeration (v2)
David Brownell [Wed, 11 Mar 2009 12:21:39 +0000 (12:21 +0000)]
regulator: twl4030 voltage enumeration (v2)

Update previously-posted twl4030 regulator driver to export
supported voltages to upper layers using a new mechanism.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agoregulator: enumerate voltages (v2)
David Brownell [Wed, 11 Mar 2009 12:20:51 +0000 (12:20 +0000)]
regulator: enumerate voltages (v2)

Add a basic mechanism for regulators to report the discrete
voltages they support:  list_voltage() enumerates them using
selectors numbered from 0 to an upper bound.

Use those methods to force machine-level constraints into bounds.
(Example:  regulator supports 1.8V, 2.4V, 2.6V, 3.3V, and board
constraints for that rail are 2.0V to 3.6V ... so the range of
voltages is then 2.4V to 3.3V on this board.)

Export those voltages to the regulator consumer interface, so for
example regulator hooked up to an MMC/SD/SDIO slot can report the
actual voltage options available to cards connected there.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
16 years agopowerpc/bootwrapper: add fixed-head.o to simpleimage wrappers
Grant Likely [Wed, 11 Mar 2009 15:36:26 +0000 (09:36 -0600)]
powerpc/bootwrapper: add fixed-head.o to simpleimage wrappers

fixed-head.o must be linked into the bootwrapper for raw-binary images to
work.  This patch adds it into the bootwrapper.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Reported-by: Eddie Dawydiuk <eddie@embeddedarm.com>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/5200: add Phytec phyCORE-MPC5200B-IO board (pcm032)
Wolfram Sang [Wed, 11 Mar 2009 15:36:26 +0000 (09:36 -0600)]
powerpc/5200: add Phytec phyCORE-MPC5200B-IO board (pcm032)

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years agopowerpc/5200: add function to return external clock frequency
Wolfgang Grandegger [Wed, 11 Mar 2009 15:36:26 +0000 (09:36 -0600)]
powerpc/5200: add function to return external clock frequency

This patch adds the utility function mpc52xx_get_xtal_freq() to get
the frequency of the external oscillator clock connected to the pin
SYS_XTAL_IN. The MSCAN may us it as clock source. Unfortunately, this
value is not available from the FDT blob, but it can be determined
from the IPB frequency.

Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years agopowerpc/5200: remove sysfs debug file from GPT driver
Grant Likely [Wed, 11 Mar 2009 15:36:26 +0000 (09:36 -0600)]
powerpc/5200: remove sysfs debug file from GPT driver

Remove poorly designed debug sysfs attribute entry from the GPT driver.

Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
16 years agopowerpc/virtex/spi: Xilinx SPI driver not releasing memory
John Linn [Wed, 11 Mar 2009 15:36:20 +0000 (09:36 -0600)]
powerpc/virtex/spi: Xilinx SPI driver not releasing memory

The driver was not releasing memory when it was removed or
when there was a failure during probe. This fixes it.

Signed-off-by: John Linn <john.linn@xilinx.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
16 years agonlattr: Fix build error with NET off
Herbert Xu [Wed, 11 Mar 2009 15:18:32 +0000 (23:18 +0800)]
nlattr: Fix build error with NET off

We moved the netlink attribute support from net to lib in order
for it to be available for general consumption.  However, parts
of the code (the bits that we don't need :) really depends on
NET because the target object is sk_buff.

This patch fixes this by wrapping them in CONFIG_NET.

Some EXPORTs have been moved to make this work.

Tested-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
16 years agox86: debug check for kmap_atomic_pfn and iomap_atomic_prot_pfn()
Akinobu Mita [Wed, 11 Mar 2009 14:34:50 +0000 (23:34 +0900)]
x86: debug check for kmap_atomic_pfn and iomap_atomic_prot_pfn()

It may be useful for kmap_atomic_pfn() and iomap_atomic_prot_pfn()
to check invalid kmap usage as well as kmap_atomic.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
LKML-Reference: <20090311143449.GB22244@localhost.localdomain>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agox86: unify kmap_atomic_pfn() and iomap_atomic_prot_pfn()
Akinobu Mita [Wed, 11 Mar 2009 14:33:18 +0000 (23:33 +0900)]
x86: unify kmap_atomic_pfn() and iomap_atomic_prot_pfn()

kmap_atomic_pfn() and iomap_atomic_prot_pfn() are almost same
except pgprot. This patch removes the code duplication for these
two functions.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
LKML-Reference: <20090311143317.GA22244@localhost.localdomain>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoproc: fix kflags to uflags copying in /proc/kpageflags
Wu Fengguang [Wed, 11 Mar 2009 01:00:04 +0000 (09:00 +0800)]
proc: fix kflags to uflags copying in /proc/kpageflags

Fix kpf_copy_bit(src,dst) to be kpf_copy_bit(dst,src) to match the
actual call patterns, e.g. kpf_copy_bit(kflags, KPF_LOCKED, PG_locked).

This misplacement of src/dst only affected reporting of PG_writeback,
PG_reclaim and PG_buddy. For others kflags==uflags so not affected.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoASoC: Remove version display from WM8580 driver
Mark Brown [Wed, 11 Mar 2009 14:12:28 +0000 (14:12 +0000)]
ASoC: Remove version display from WM8580 driver

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agox86: cpu architecture debug code, build fix, cleanup
Jaswinder Singh Rajput [Wed, 11 Mar 2009 13:43:49 +0000 (19:13 +0530)]
x86: cpu architecture debug code, build fix, cleanup

move store_ldt outside the CONFIG_PARAVIRT section and
also clean up the code a bit.

Signed-off-by: Jaswinder Singh Rajput <jaswinder@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoASoC: Add initial driver for the WM8400 CODEC
Mark Brown [Tue, 10 Mar 2009 10:55:15 +0000 (10:55 +0000)]
ASoC: Add initial driver for the WM8400 CODEC

The WM8400 is a highly integrated audio CODEC and power management unit
intended for mobile multimedia application.  This driver supports the
primary audio CODEC features, including:

 - 1W speaker driver
 - Fully differential headphone output
 - Up to 4 differential microphone inputs

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agoASoC: buildfix for OSK
David Brownell [Wed, 11 Mar 2009 10:37:25 +0000 (02:37 -0800)]
ASoC: buildfix for OSK

Buildfix:

  CC      sound/soc/omap/osk5912.o
  sound/soc/omap/osk5912.c: In function 'osk_soc_init':
  sound/soc/omap/osk5912.c:189: error: implicit declaration of function 'clk_get_usecount'
  make[3]: *** [sound/soc/omap/osk5912.o] Error 1

There's no such (standard) clock interface.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agopowerpc/85xx: Update smp support to handle doorbells and non-mpic init
Kumar Gala [Thu, 12 Feb 2009 04:50:42 +0000 (22:50 -0600)]
powerpc/85xx: Update smp support to handle doorbells and non-mpic init

Use device tree to determine if we actually have an MPIC and use
CPU feature to decide if we should use doorbells for IPIs.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agox86: shrink __ALIGN and __ALIGN_STR definitions
Cyrill Gorcunov [Mon, 9 Mar 2009 17:19:51 +0000 (20:19 +0300)]
x86: shrink __ALIGN and __ALIGN_STR definitions

Impact: cleanup

1) .p2align 4 and .align 16 are the same meaning
   (until a.out format for i386 is used which is
    not our case for CONFIG_X86_ALIGNMENT_16 anyway)

2) having 15 as max allowed bytes to be skipped
   does not make sense on modulo 16

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
LKML-Reference: <20090309171951.GE9945@localhost>
[ small cleanup, use __stringify(), etc. ]
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoMerge branch 's3c-iis-header' into for-2.6.30
Mark Brown [Wed, 11 Mar 2009 11:12:48 +0000 (11:12 +0000)]
Merge branch 's3c-iis-header' into for-2.6.30

Conflicts:
arch/arm/mach-shark/include/mach/io.h

16 years ago[ARM] Revert extraneous changes from the S3C audio header move
Mark Brown [Wed, 11 Mar 2009 11:02:33 +0000 (11:02 +0000)]
[ARM] Revert extraneous changes from the S3C audio header move

These changes were included in the S3C audio header move but are not
directly related to it.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
16 years agopowerpc/math-emu: Fix efp dependence
Liu Yu [Tue, 10 Mar 2009 03:09:49 +0000 (11:09 +0800)]
powerpc/math-emu: Fix efp dependence

There is no dependece between efp and math-emu.  But when disable math-emu
the efp code cannot be built.

Signed-off-by: Liu Yu <yu.liu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agopowerpc/85xx: remove setup_irq(NULL action) in ksi8560
Thomas Gleixner [Tue, 10 Mar 2009 18:43:58 +0000 (18:43 +0000)]
powerpc/85xx: remove setup_irq(NULL action) in ksi8560

setup_irq(0, NULL) is broken as setup_irq() dereferences action
unconditionally.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agopowerpc/85xx: Fix MPC8572DS PCI protected interrupt sources
Ted Peters [Thu, 26 Feb 2009 18:15:16 +0000 (12:15 -0600)]
powerpc/85xx: Fix MPC8572DS PCI protected interrupt sources

The PCI irqs for the protected sources where not correct for PCI PHBs

Signed-off-by: Ted Peters <ted.peters@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agosched: add avg_overlap decay
Mike Galbraith [Tue, 10 Mar 2009 18:08:11 +0000 (19:08 +0100)]
sched: add avg_overlap decay

Impact: more precise avg_overlap metric - better load-balancing

avg_overlap is used to measure the runtime overlap of the waker and
wakee.

However, when a process changes behaviour, eg a pipe becomes
un-congested and we don't need to go to sleep after a wakeup
for a while, the avg_overlap value grows stale.

When running we use the avg runtime between preemption as a
measure for avg_overlap since the amount of runtime can be
correlated to cache footprint.

The longer we run, the less likely we'll be wanting to be
migrated to another CPU.

Signed-off-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <1236709131.25234.576.camel@laptop>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
16 years agoMerge branch 'x86/core' into cpus4096
Ingo Molnar [Wed, 11 Mar 2009 09:49:34 +0000 (10:49 +0100)]
Merge branch 'x86/core' into cpus4096

16 years agoMerge branches 'x86/cleanups', 'x86/kexec', 'x86/mce2' and 'linus' into x86/core
Ingo Molnar [Wed, 11 Mar 2009 09:49:15 +0000 (10:49 +0100)]
Merge branches 'x86/cleanups', 'x86/kexec', 'x86/mce2' and 'linus' into x86/core

16 years agoMerge branch 'tj-percpu' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc...
Ingo Molnar [Wed, 11 Mar 2009 09:30:23 +0000 (10:30 +0100)]
Merge branch 'tj-percpu' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc into core/percpu

16 years agoMerge branch 'linus' into core/percpu
Ingo Molnar [Wed, 11 Mar 2009 09:29:28 +0000 (10:29 +0100)]
Merge branch 'linus' into core/percpu

Conflicts:
arch/x86/include/asm/fixmap_64.h

16 years agoALSA: Use define for ioctl definitions
Takashi Iwai [Wed, 11 Mar 2009 08:52:28 +0000 (09:52 +0100)]
ALSA: Use define for ioctl definitions

Use define instead of enum for ioctl definitions since strace can't
parse ioctls defined via enum properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
16 years agoALSA: Remove obsolete snd_xferv struct and ioctls
Takashi Iwai [Wed, 11 Mar 2009 08:50:19 +0000 (09:50 +0100)]
ALSA: Remove obsolete snd_xferv struct and ioctls

Removed obsleted snd_xferv struct and ioctls that are no longer used
in the current codebase.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
16 years agox86: convert obsolete irq_desc_t typedef to struct irq_desc
Thomas Gleixner [Mon, 9 Mar 2009 21:04:45 +0000 (22:04 +0100)]
x86: convert obsolete irq_desc_t typedef to struct irq_desc

Impact: cleanup

Convert the last remaining users.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
16 years agosh: improve sh7785lcr power off code
Magnus Damm [Wed, 11 Mar 2009 08:14:26 +0000 (08:14 +0000)]
sh: improve sh7785lcr power off code

Improve the sh7785lcr power off implementation to
never return. It takes some time before the board
is actually powered off, just hang after asking
the harware to power down.

This removes the serial port garbage printout.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
16 years agoinput: sh_keysc suspend can use to_platform_device()
Magnus Damm [Wed, 11 Mar 2009 08:04:23 +0000 (08:04 +0000)]
input: sh_keysc suspend can use to_platform_device()

This patch changes sh_keysc to use to_platform_device()
for suspend. Thanks to Trilok Soni for this suggestion.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Reviewed-by: Trilok Soni <soni.trilok@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
16 years agosh: clkfwk: Add resume from hibernation support.
Francesco VIRLINZI [Wed, 11 Mar 2009 07:42:05 +0000 (07:42 +0000)]
sh: clkfwk: Add resume from hibernation support.

This patch adds PM support to the clock framework.
With this, resume from hibernation is properly supported.

Signed-off-by: Francesco Virlinzi <francesco.virlinzi@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
16 years agosh: clkfwk: add clk_set_parent/clk_get_parent
Francesco VIRLINZI [Wed, 11 Mar 2009 07:40:54 +0000 (07:40 +0000)]
sh: clkfwk: add clk_set_parent/clk_get_parent

This patch adds the clk_set_parent/clk_get_parent routines to the sh
clock framework.

Signed-off-by: Francesco Virlinzi <francesco.virlinzi@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
16 years agopowerpc/kconfig: Kill PPC_MULTIPLATFORM
Benjamin Herrenschmidt [Tue, 10 Mar 2009 17:53:27 +0000 (17:53 +0000)]
powerpc/kconfig: Kill PPC_MULTIPLATFORM

CONFIG_PPC_MULTIPLATFORM is a remain of the pre-powerpc days and isn't
really meaningful anymore. It was basically equivalent to PPC64 || 6xx.

This removes it along with the following changes:

 - 32-bit platforms that relied on PPC32 && PPC_MULTIPLATFORM now rely
   on 6xx which is what they want anyway.

 - A new symbol, PPC_BOOK3S, is defined that represent compliance with
   the "Server" variant of the architecture. This is set when either 6xx
   or PPC64 is set and open the door for future BOOK3E 64-bit.

 - 64-bit platforms that relied on PPC64 && PPC_MULTIPLATFORM now use
   PPC64 && PPC_BOOK3S

 - A separate and selectable CONFIG_PPC_OF_BOOT_TRAMPOLINE option is now
   used to control the use of prom_init.c

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/mm: Properly wire up get_user_pages_fast() on 32-bit
Benjamin Herrenschmidt [Tue, 10 Mar 2009 17:24:37 +0000 (17:24 +0000)]
powerpc/mm: Properly wire up get_user_pages_fast() on 32-bit

While we did add support for _PAGE_SPECIAL on some 32-bit platforms,
we never actually built get_user_pages_fast() on them. This fixes
it which requires a little bit of ifdef'ing around.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/irq: Convert obsolete hw_interrupt_type to struct irq_chip
Thomas Gleixner [Tue, 10 Mar 2009 14:46:30 +0000 (14:46 +0000)]
powerpc/irq: Convert obsolete hw_interrupt_type to struct irq_chip

Impact: cleanup

Convert the last remaining users to struct irq_chip.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
CC: linuxppc-dev@ozlabs.org
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/irq: Convert obsolete irq_desc_t to struct irq_desc
Thomas Gleixner [Tue, 10 Mar 2009 14:45:54 +0000 (14:45 +0000)]
powerpc/irq: Convert obsolete irq_desc_t to struct irq_desc

Impact: cleanup

Convert the last remaining users.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
CC: Benjamin Herrenschmidt <benh@kernel.crashing.org>
CC: linuxppc-dev@ozlabs.org
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/udbg: Fix lost byte during console handover; change LFCR to CRLF
Andrew Klossner [Mon, 9 Mar 2009 07:52:41 +0000 (07:52 +0000)]
powerpc/udbg: Fix lost byte during console handover; change LFCR to CRLF

When the console is on a serial port to be driven by serial8250, a
character can be lost from the end of the first line in the two-line
sequence

serial8250.0: ttyS0 at MMIO 0xe0004500 (irq = 42) is a 16550A
console handover: boot [udbg0] -> real [ttyS0]

This happens because udbg_puts or udbg_write stuff the last byte of
the line into the Tx FIFO and return, whereupon the serial8250
initialization code immediately empties that FIFO.  The fix: udbg_puts
and udbg_write now wait for the Tx FIFO to clear before returning.
This delays the system by one additional serial frame time for each
line written by udbg, but the effect is not noticeable, a cumulative
17 milliseconds for 200 lines of early printk output at 115200 baud.

Also, the routines in udbg_16550.c now emit CRLF instead of LFCR.
Linux makes a point of emitting CRLF because, when serial output is
captured to a file, LFCR sequences can confuse text editors.  See
http://lkml.org/lkml/2006/2/4/50 for some history.

Signed-off-by: Andrew Klossner <andrew@cesa.opbu.xerox.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/pci: Fix typo: s/resouces/resources/ in a pr_debug
Wolfram Sang [Mon, 9 Mar 2009 06:39:01 +0000 (06:39 +0000)]
powerpc/pci: Fix typo: s/resouces/resources/ in a pr_debug

Fix typo: s/resouces/resources/ in a pr_debug

Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/pseries: The RPA PCI hotplug driver depends on EEH
Michael Ellerman [Thu, 5 Mar 2009 17:39:14 +0000 (17:39 +0000)]
powerpc/pseries: The RPA PCI hotplug driver depends on EEH

The RPA PCI hotplug driver calls EEH routines, so should depend on
EEH. Also PPC_PSERIES implies PPC64, so remove that.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/cell: Fix Axon MSI driver dependencies
Michael Ellerman [Thu, 5 Mar 2009 17:37:11 +0000 (17:37 +0000)]
powerpc/cell: Fix Axon MSI driver dependencies

The Axon MSI driver depends on more than just PCI_MSI, so add a
Kconfig fragment for it. Fixes randconfig build failures.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/pseries: The pseries MSI code depends on EEH
Michael Ellerman [Thu, 5 Mar 2009 17:36:39 +0000 (17:36 +0000)]
powerpc/pseries: The pseries MSI code depends on EEH

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/pseries: Reject discontiguous/non-zero based MSI-X requests
Michael Ellerman [Thu, 5 Mar 2009 14:44:26 +0000 (14:44 +0000)]
powerpc/pseries: Reject discontiguous/non-zero based MSI-X requests

There's no way for us to express to firmware that we want a
discontiguous, or non-zero based, range of MSI-X entries. So we
must reject such requests.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc: Print linux_banner in prom_init
Michael Ellerman [Wed, 4 Mar 2009 19:02:01 +0000 (19:02 +0000)]
powerpc: Print linux_banner in prom_init

So at least you can see what kernel you're booting if you die
before the kernel prints it mid-way through start_kernel().

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/oprofile: Enable support for ppc750 processors
Octavian Purdila [Wed, 4 Mar 2009 02:02:42 +0000 (02:02 +0000)]
powerpc/oprofile: Enable support for ppc750 processors

This patch enables oprofile for all 3 FX variants and GX variant of the
750 processor.

Signed-off-by: Octavian Purdila <opurdila@ixiacom.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
16 years agopowerpc/spufs: Fix incorrect buffer offset in regs write
Jeremy Kerr [Tue, 3 Mar 2009 19:39:32 +0000 (19:39 +0000)]
powerpc/spufs: Fix incorrect buffer offset in regs write

We need to offset by *pos bytes, not *pos words.

Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>