GitHub/moto-9609/android_kernel_motorola_exynos9610.git
18 years agokbuild: fix 'make all install_modules install'
Sam Ravnborg [Mon, 16 Jan 2006 11:46:07 +0000 (12:46 +0100)]
kbuild: fix 'make all install_modules install'

The command 'make all modules_install install' would fail
in a virgin tree - pointing at a non-existing directory under
/lib/modules/xxx

KERNELRELEASE is part of MODLIB and we need to create .kernelrelease
before we can properly evaluate KERNELRELEASE,
Changing MODLIB to the recursively expanded flavor let it pick up
the correct KERNELRELEASE value.

Reported by: "Hemmann, Volker Armin" <volker.armin.hemmann@tu-clausthal.de>

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
18 years agokbuild: create .kernelrelease at *config step
Sam Ravnborg [Mon, 16 Jan 2006 11:12:12 +0000 (12:12 +0100)]
kbuild: create .kernelrelease at *config step

To enable 'make kernelrelease' earlier now create .kernelrelease when
one of the *config targets are used.
Also introduce KERNELVERSION - only user is kconfig.
KERNELVERSION was needed to display kernel version in menuconfig -
KERNELRELEASE is not valid until configuration has completed.
kconfig files modified to use KERNELVERSION.
Bug reported by: Rene Rebe <rene@exactcode.de>

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
18 years agokbuild: fix make -jN with multiple targets with O=...
Sam Ravnborg [Sun, 15 Jan 2006 19:02:31 +0000 (20:02 +0100)]
kbuild: fix make -jN with multiple targets with O=...

The way multiple targets was handled with make O=...
broke because for each high-level target make spawned
a parallel make resulting in a broken build.
Reported by Keith Owens <kaos@ocs.com.au>

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
18 years agokconfig: get rid of stray a.o, support ncursesw
Sam Ravnborg [Sun, 15 Jan 2006 14:28:35 +0000 (15:28 +0100)]
kconfig: get rid of stray a.o, support ncursesw

scripts/kconfig/lxdialog/check-lxdialog.sh uses gcc to check for
what libraries are present. Redirect output to /dev/null
so we do not generate an a.out.
Also included support for ncursesw - so if present prefer that
instead of ncurses.
The order is now (first is preferred):
1) ncursesw
2) ncurses
3) curses

The latter is to support SunOS.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
18 years ago[PATCH] Fix double decrement of mqueue_mnt->mnt_count in sys_mq_open
Alexander Viro [Sat, 14 Jan 2006 20:29:55 +0000 (15:29 -0500)]
[PATCH] Fix double decrement of mqueue_mnt->mnt_count in sys_mq_open

Fixed the refcounting on failure exits in sys_mq_open() and
cleaned the logics up.  Rules are actually pretty simple - dentry_open()
expects vfsmount and dentry to be pinned down and it either transfers
them into created struct file or drops them.  Old code had been very
confused in that area - if dentry_open() had failed either in do_open()
or do_create(), we ended up dentry and mqueue_mnt dropped twice, once
by dentry_open() cleanup and then by sys_mq_open().

Fix consists of making the rules for do_create() and do_open()
same as for dentry_open() and updating the sys_mq_open() accordingly;
that actually leads to more straightforward code and less work on
normal path.

Signed-off-by: Al Viro <aviro@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
Linus Torvalds [Sat, 14 Jan 2006 20:16:07 +0000 (12:16 -0800)]
Merge /pub/scm/linux/kernel/git/jejb/scsi-misc-2.6

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/spi-2.6
Linus Torvalds [Sat, 14 Jan 2006 18:43:26 +0000 (10:43 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/spi-2.6

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6
Linus Torvalds [Sat, 14 Jan 2006 18:42:40 +0000 (10:42 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/driver-2.6

18 years ago[PATCH] remove unused tmp_buf_sem's
Adrian Bunk [Sat, 14 Jan 2006 02:08:16 +0000 (03:08 +0100)]
[PATCH] remove unused tmp_buf_sem's

tmp_buf_sem sems to be a common name for something completely unused...

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de> ("usb portion")
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] docs: update some updated code docs
Xose Vazquez Perez [Sat, 14 Jan 2006 11:57:41 +0000 (12:57 +0100)]
[PATCH] docs: update some updated code docs

Based on comments from Randy Dunlap on my previous commit
5b0ed2c64d8fdafb5fcfb3baabdd288628b1ff9b

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ufs cleanup
Evgeniy [Sat, 14 Jan 2006 08:42:06 +0000 (11:42 +0300)]
[PATCH] ufs cleanup

Here is update of ufs cleanup patch, brought on by the recently fixed
ubh_get_usb_second() bug that made some ugly code rather painfully
obvious.  It also includes

 - fix compilation warnings which appears if debug mode turn on
 - remove unnecessary duplication of code to support UFS2

I tested it on ufs1 and ufs2 file-systems.

Signed-off-by: Evgeniy Dushistov <dushistov@mail.ru>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Sat, 14 Jan 2006 17:55:28 +0000 (09:55 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Sat, 14 Jan 2006 17:49:16 +0000 (09:49 -0800)]
Merge /pub/scm/linux/kernel/git/dtor/input

18 years ago[SCSI] qla2xxx: Update version number to 8.01.04-k.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:06:04 +0000 (17:06 -0800)]
[SCSI] qla2xxx: Update version number to 8.01.04-k.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Disable port-type RSCN handling via driver state-machine.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:58 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Disable port-type RSCN handling via driver state-machine.

Given the semantic changes in both the device-model and
fc-transport APIs, the driver's handling of port-type RSCNs
via a series of ADISCs and PLOGIs can cause series of
badness ranging from unexpectedly device loss to devices not
being discovered.

In the interim, disable (via a module-parameter) this
feature and allow RSCN management to continue to occur
within the driver's DPC thread.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Kconfig update: Add URL to download firmware images.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:53 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Kconfig update: Add URL to download firmware images.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct setting of FDMI supported/current port speed.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:48 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Correct setting of FDMI supported/current port speed.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct execution-throttle setting for ISP24xx.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:42 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Correct execution-throttle setting for ISP24xx.

Similarly to other ISPs, set execution throttle to maximum
allowed value since 'throttling' is done on a per-lun basis
via queue-depth.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Collapse load RISC RAM implementations.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:37 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Collapse load RISC RAM implementations.

Simplify essentially duplicate load RISC RAM implementation
in qla2x00_load_ram_ext() and qla2x00_load_ram().

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct swing/emphasis settings for ISP24XX.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:32 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Correct swing/emphasis settings for ISP24XX.

Swing/emphasis settings in NVRAM were not being honoured due
to the driver not converting the serial-link options from LE
to host-endian format.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct issue where portstate does not transition during loop-resync.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:26 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Correct issue where portstate does not transition during loop-resync.

If the Get Port Database call fails during local-loop
update, then schedule the DPC routine to perform a rescan as
the firmware would have updated the Get ID List port-entries
of their new state.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Update firmware-dump procedure for ISP24xx.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:21 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Update firmware-dump procedure for ISP24xx.

Small changes to register retrieval and order as per latest
firmware specification.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Re-enable flash-part write protection on ISP24xx boards.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:15 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Re-enable flash-part write protection on ISP24xx boards.

Driver would not correctly re-enable the write-protection
bits of the flash part after updates.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct excessive delay during LOAD-RISC-RAM mailbox command.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:10 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Correct excessive delay during LOAD-RISC-RAM mailbox command.

Problem report (against 2.4.x driver) from Jeff Layton
<jlayton@redhat.com>:

An OEM noticed that the U6 qla2200 driver would hang for
around 2 minutes at boot time and then proceed normally. I
found that the delay was occurring when loading the new
firmware into the card, and was due to a
schedule_timeout(10) added to the bottom of the polling
loop.

Some testing showed that the load ram operation on the card
was very quick (on the order of a couple of jiffies), but
the sleep in the polling loop was making each operation take
around 25-30.

The attached patch corrects this by making it skip sleeping
during the load ram operation, since I believe we only do
that when the module is plugged in. It also skips sleeping
if the mbox_int flag got set during the current loop.

This corrected the hang on my test setup, and OEM also
confirmed that it corrected the problem for them.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Use msleep() as delay during ISP polling.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:05:05 +0000 (17:05 -0800)]
[SCSI] qla2xxx: Use msleep() as delay during ISP polling.

Mailbox commands are polled for completion during ISP
initialization.  During potentially 'long' mailbox commands
(i.e. fabric login), we really don't want a busy-wait delay
to potentially trigger a (benign) soft-lockup BUG().

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Drop noisy 'UNDERRUN' status message.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:04:59 +0000 (17:04 -0800)]
[SCSI] qla2xxx: Drop noisy 'UNDERRUN' status message.

There's no point in displaying the message during a valid
underrun case.  Limit the message to potentially problematic
cases.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Correct FC4 feature assignment during RFF_ID.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:04:54 +0000 (17:04 -0800)]
[SCSI] qla2xxx: Correct FC4 feature assignment during RFF_ID.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] qla2xxx: Reference proper node/port names in fc_host class.
andrew.vasquez@qlogic.com [Sat, 14 Jan 2006 01:04:49 +0000 (17:04 -0800)]
[SCSI] qla2xxx: Reference proper node/port names in fc_host class.

The initial-control-block references are not always correct
as the use-node-name qualifier during NVRAM configuration
will cause the firmware to use the portname as a base for
the nodename.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: use pageslab
Mike Christie [Sat, 14 Jan 2006 00:05:56 +0000 (18:05 -0600)]
[SCSI] iscsi: use pageslab

From: FUJITA Tomonori <tomof@acm.org> and zhenyu.z.wang@intel.com:

We cannot handle filesystems like XFS becuase of the pages they
are sending us. We had thought page_count could be used to
work around this, but the correct test is for PageSlab.

The proper solution is to figure out what type of pages
filesystems can use so we do not have to add tests like
this or handle it in the block layer for all network block drivers
but the issue still has not been resolved on fs-devel
so we are sending this patch as a temporary fix.

This is last patch just in case it is Nakd with the explanation
that we need to push the correct fix through fs-devel, mm
or the block layer. The rest of the patchset can live without
the patch, but the driver will not work with filesystems like
XFS.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: fix 4k stack iscsi setups
Mike Christie [Sat, 14 Jan 2006 00:05:53 +0000 (18:05 -0600)]
[SCSI] iscsi: fix 4k stack iscsi setups

When we run the xmit code from queuecomand the stack trace
gets too deep. The patch runs the xmit code from the scsi_host
work queue. This fixes 4k stack and xfs support and should
fix the st and sg stack usage bugs.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: seperate iscsi interface from setup functions
Mike Christie [Sat, 14 Jan 2006 00:05:50 +0000 (18:05 -0600)]
[SCSI] iscsi: seperate iscsi interface from setup functions

This is the second version of the patch to address Christoph's comments.
Instead of doing the lib, I just kept everything in scsi_trnapsort_iscsi.c
like the FC and SPI class. This was becuase the driver model and sysfs
class is tied to the session and connection setup so separating did not
buy very much at this time.

The reason for this patch was becuase HW iscsi LLDs like qla4xxx cannot
use the iscsi class becuase the scsi_host was tied to the interface and
class code. This patch just seperates the session from scsi host so
that LLDs that allocate the host per some resource like pci device
can still use the class.

This is also fixes a couple refcount bugs that can be triggered
when users have a sysfs file open, close the session, then
read or write to the file.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: add high mem support
Mike Christie [Sat, 14 Jan 2006 00:05:47 +0000 (18:05 -0600)]
[SCSI] iscsi: add high mem support

From Mike Christie <michaelc@cs.wisc.edu> and FUJITA Tomonori <tomof@acm.org>:

We cannot use page_address becuase some pages could be highmem.
Instead, we can use sock_no_sendpage which does kmap for us.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: data digest page cache usage fix
FUJITA Tomonori [Sat, 14 Jan 2006 00:05:44 +0000 (18:05 -0600)]
[SCSI] iscsi: data digest page cache usage fix

Users can write to a page while we are sending it and making
digest calculations. This ends up causing us to retry the command
when a digest error is later reported. By using sock_no_sendpage
when data digests are calculated we can avoid a lot of (not all but it
helps) the retries becuase sock_no_sendpage is not zero copy.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: host locking fix
zhenyu.z.wang@intel.com [Sat, 14 Jan 2006 00:05:41 +0000 (18:05 -0600)]
[SCSI] iscsi: host locking fix

We should be taking the host_lock instead of the conn lock when
checking host_busy.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: data under/over flow fix
zhenyu.z.wang@intel.com [Sat, 14 Jan 2006 00:05:38 +0000 (18:05 -0600)]
[SCSI] iscsi: data under/over flow fix

We need to check the ISCSI_FLAG_DATA_* flags.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] iscsi: whitespace cleanup
FUJITA Tomonori [Sat, 14 Jan 2006 00:05:35 +0000 (18:05 -0600)]
[SCSI] iscsi: whitespace cleanup

Remove extra whitespaces.

Signed-off-by: Alex Aizman <itn780@yahoo.com>
Signed-off-by: Dmitry Yusupov <dmitry_yus@yahoo.com>
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] sem2mutex 3w-[x9]xxx
Jes Sorensen [Wed, 11 Jan 2006 13:39:45 +0000 (08:39 -0500)]
[SCSI] sem2mutex 3w-[x9]xxx

Convert a the 3w-9xxx.c and 3w-xxxx.c drivers to use mutexes instead
of semaphores. Untested, but compiles and looks obviously correct.

Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] mptfc: need to select transport attrs
James Bottomley [Sat, 14 Jan 2006 15:28:07 +0000 (09:28 -0600)]
[SCSI] mptfc: need to select transport attrs

Now that mptfc actually uses the transport class, it can't be built
without it.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion - fix pci express bug
Moore, Eric [Fri, 13 Jan 2006 23:25:29 +0000 (16:25 -0700)]
[SCSI] fusion - fix pci express bug

The fix is to write  'MPI_HIM_DIM' to the Host Interrupt Mask
register, when enabling interrupts.  Instead of the
tilde of MPI_HIM_RIM.

Apparently writing '1's to some of the reserved bits was causing
all the bits to go to `1`, which effectly disabled all interrupts.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] scsi_transport_sas: mapping the rphy channel equal to the port identifier
Moore, Eric [Fri, 13 Jan 2006 23:33:59 +0000 (16:33 -0700)]
[SCSI] scsi_transport_sas: mapping the rphy channel equal to the port identifier

We will be mapping the RAID volumes in mptsas to a reserved
channel that
is one larger than the anticapated number of ports on the direct
attached host
adapter.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion - mpi header udpate
Moore, Eric [Fri, 13 Jan 2006 23:25:23 +0000 (16:25 -0700)]
[SCSI] fusion - mpi header udpate

This updates mpi headers in fusion drivers to version 1.5.12.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion - adding raid support in mptsas
Moore, Eric [Fri, 13 Jan 2006 23:25:20 +0000 (16:25 -0700)]
[SCSI] fusion - adding raid support in mptsas

The SAS RAID volumes are reported beyond the expected number of phys.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] remove target parent limitiation
Christoph Hellwig [Fri, 13 Jan 2006 18:04:00 +0000 (19:04 +0100)]
[SCSI] remove target parent limitiation

When James Smart fixed the issue of the userspace scan atributes
crashing the system with the FC transport class he added a patch to
let the transport class check if the parent is valid for a given
transport class.

When adding support for the integrated raid of fusion sas devices
we ran into a problem with that, as it didn't allow adding virtual
raid volumes without the transport class knowing about it.

So this patch adds a user_scan attribute instead, that takes over from
scsi_scan_host_selected if the transport class sets it and thus lets
the transport class control the user-initiated scanning.  As this
plugs the hole about user-initiated scanning the target_parent hook
goes away and we rely on callers of the scanning routines to do
something sensible.

For SAS this meant I had to switch from a spinlock to a mutex to
synchronize the topology linked lists, in FC they were completely
unsynchronized which seems wrong.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion - adding support for FC949ES
Moore, Eric [Fri, 13 Jan 2006 23:25:26 +0000 (16:25 -0700)]
[SCSI] fusion - adding support for FC949ES

Add software recognition for the new LSI Logic Fibre Channel controller.

Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] mptfusion - fc transport attributes
Michael Reed [Fri, 13 Jan 2006 20:31:54 +0000 (14:31 -0600)]
[SCSI] mptfusion - fc transport attributes

Signed-off-by: Michael Reed <mdr@sgi.com>
Signed-off-by: Eric Moore <Eric.Moore@lsil.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] sem2mutex: scsi_transport_spi.c
Jes Sorensen [Sat, 14 Jan 2006 00:05:44 +0000 (16:05 -0800)]
[SCSI] sem2mutex: scsi_transport_spi.c

Convert the SCSI transport class code to use a mutex rather than a
semaphore.

Signed-off-by: Jes Sorensen <jes@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fix up message/i2o/pci.c
James Bottomley [Fri, 13 Jan 2006 21:36:25 +0000 (15:36 -0600)]
[SCSI] fix up message/i2o/pci.c

There was a use before initialisation of c->name

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion: kzalloc / kcalloc conversion
Christoph Hellwig [Fri, 13 Jan 2006 17:27:50 +0000 (18:27 +0100)]
[SCSI] fusion: kzalloc / kcalloc conversion

Convert kmalloc + memset to kzalloc or kcalloc in fusion.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fusion: convert semaphores to mutexes
Christoph Hellwig [Fri, 13 Jan 2006 17:27:11 +0000 (18:27 +0100)]
[SCSI] fusion: convert semaphores to mutexes

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] mptsas: support basic hotplug
Christoph Hellwig [Fri, 13 Jan 2006 17:04:41 +0000 (18:04 +0100)]
[SCSI] mptsas: support basic hotplug

Adds hotplug support for SAS end devices.  Unfortunately the fusion
firmware doesn't generate similar events for expanders addition/removal
so we can't support them yet.  Eric has an idea about a clever scheme to
find out about expander changes so that'll be added later on.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] I2O: move pci_request_regions() just behind pci_enable_device()
Salyzyn, Mark [Thu, 12 Jan 2006 13:31:57 +0000 (08:31 -0500)]
[SCSI] I2O: move pci_request_regions() just behind pci_enable_device()

The problem in dpt_i2o could be the pci config space accesses it
triggers as it loads, dangerous to do if there is any I/O activity going
on in the other driver (probable if a boot driver I guess).

I approve this patch to dpt_i2o.c, and am applying it to the Adaptec
branch of the driver.

Thanks for the investigation Ryoji.

---

In linux 2.6.15, data transfer does hang when both dpt_i2o
and i2o_block drivers are loaded.
It seems that location of pci_request_regions() are wrong.
I moved it just behind pci_enable_device() like other drivers,
and it becomes fine.

Signed-off-by: Ryoji Kamei <kamei@miraclelinux.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] ips: Mode Sense (Caching Page ) fix
Jack Hammer [Fri, 13 Jan 2006 15:06:50 +0000 (10:06 -0500)]
[SCSI] ips: Mode Sense (Caching Page ) fix

To avoid the "sda: got wrong page" message, the ServeRAID driver
should be setting flags indicating that the Mode Sense commands are
not supported.

Signed-off-by: Jack Hammer <jack_hammer@adaptec.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] zfcp: transport class adaptations II
Andreas Herrmann [Fri, 13 Jan 2006 01:26:11 +0000 (02:26 +0100)]
[SCSI] zfcp: transport class adaptations II

Replaced zfcp adapter attributes with fc_host attributes:
fc_topology by port_type, physical_wwpn by permanent_port_name.
Make use of fc_host attribute supported_speeds.
Removed zfcp adapter attribute physical_s_id.

Signed-off-by: Andreas Herrmann <aherrman@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] zfcp: transport class adaptations
Andreas Herrmann [Thu, 5 Jan 2006 08:59:34 +0000 (09:59 +0100)]
[SCSI] zfcp: transport class adaptations

Added host stats, removed superfluous get_starget_ functions,
removed some attributes from zfcp specific sysfs tree (e.g.
scsi_host_no, scsi_lun, wwnn and d_id).
Host stats are given for the physical adapter port not for the
virtual adapter. Reset stats is implemented in the device driver.

Signed-off-by: Andreas Herrmann <aherrman@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] zfcp: handle unsolicited status notification lost
Maxim Shchetynin [Thu, 5 Jan 2006 08:56:47 +0000 (09:56 +0100)]
[SCSI] zfcp: handle unsolicited status notification lost

Handle unsolicited adapter status that informs about loss of
previous unsolicited status notification(s).

Signed-off-by: Maxim Shchetynin <maxim@de.ibm.com>
Signed-off-by: Andreas Herrmann <aherrman@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] fc transport: add permanent_port_name fc_host attribute
Andreas Herrmann [Fri, 13 Jan 2006 01:16:54 +0000 (02:16 +0100)]
[SCSI] fc transport: add permanent_port_name fc_host attribute

Add fc_host attribute permanent_port_name which is
used to show the port name of the primary port -
the port that initially logged into the fabric.

For a virtual port (registered via the primary port with
FDISC command) it is useful to know not only its (virtual)
port name but also the permanent port name.

Signed-off-by: Andreas Herrmann <aherrman@de.ibm.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] sr: split sr_audio_ioctl into specific helpers
Christoph Hellwig [Wed, 11 Jan 2006 13:28:06 +0000 (14:28 +0100)]
[SCSI] sr: split sr_audio_ioctl into specific helpers

split each ioctl handled in sr_audio_ioctl into a function of it's own.
This cleans the code up nicely, and allows various places in sr_ioctl
to call these helpers directly instead of going through the multiplexer.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Jens Axboe <axboe@suse.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] always handle REQ_BLOCK_PC requests in common code
Christoph Hellwig [Fri, 6 Jan 2006 17:34:07 +0000 (18:34 +0100)]
[SCSI] always handle REQ_BLOCK_PC requests in common code

LLDDs should never see REQ_BLOCK_PC requests, we can handle them just
fine in the core code.  There is a small behaviour change in that some
check in sr's rw_intr are bypassed, but I consider the old behaviour
a bug.

Mike found this cleanup opportunity and provdided early patches, so all
the credit goes to him, even if I redid the patches from scratch beause
that was easier than forward-porting the old patches.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years ago[SCSI] sas: fix removal of devices behind expanders
Christoph Hellwig [Wed, 4 Jan 2006 12:45:20 +0000 (13:45 +0100)]
[SCSI] sas: fix removal of devices behind expanders

We need to iterate over all children when removing and expander, else
stale objects will be around after host removal.  This fixes the oops
Eric Moore saw when removing and reloading mptsas.

Also don't try the scsi_remove_target call unless operating on an end
device.  The current unconditional call is harmless but confusing.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
18 years agoInput: HID - add support for fn key on Apple PowerBooks
Michael Hanselmann [Sat, 14 Jan 2006 15:08:06 +0000 (10:08 -0500)]
Input: HID - add support for fn key on Apple PowerBooks

This patch implements support for the fn key on Apple PowerBooks using
USB based keyboards and makes them behave like their ADB counterparts.

Signed-off-by: Michael Hanselmann <linux-kernel@hansmi.ch>
Acked-by: Rene Nussbaumer <linux-kernel@killerfox.forkbomb.ch>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoInput: wacom - fix compile on PowerPC
Dmitry Torokhov [Sat, 14 Jan 2006 05:28:04 +0000 (00:28 -0500)]
Input: wacom - fix compile on PowerPC

Rename G4 (new Graphire4) to WACOM_G4 to avoid clashes on PowerPC

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoInput: HID - add more simulation usages
Dmitry Torokhov [Sat, 14 Jan 2006 05:27:51 +0000 (00:27 -0500)]
Input: HID - add more simulation usages

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoInput: psmouse - attempt to re-synchronize mouse every 5 seconds
Dmitry Torokhov [Sat, 14 Jan 2006 05:27:37 +0000 (00:27 -0500)]
Input: psmouse - attempt to re-synchronize mouse every 5 seconds

This should help driver to deal vith KVMs that reset mice when
switching between boxes.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoInput: HID - fix an oops in PID initialization code
Dmitry Torokhov [Sat, 14 Jan 2006 05:26:15 +0000 (00:26 -0500)]
Input: HID - fix an oops in PID initialization code

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoInput: HID - add support for Cherry Cymotion keyboard
Vojtech Pavlik [Sat, 14 Jan 2006 05:25:39 +0000 (00:25 -0500)]
Input: HID - add support for Cherry Cymotion keyboard

The Cherry Cymotion is a special Linux keyboard made by Cherry, with
only one little problem: it doesn't work with Linux. This patch
(originally by hexten.net, cleaned up by me) makes it work including
all the special keys.

Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge
Linus Torvalds [Sat, 14 Jan 2006 05:24:55 +0000 (21:24 -0800)]
Merge git://git./linux/kernel/git/paulus/powerpc-merge

18 years agoInput: i8042 - add Sony Vaio FSC-115b to MUX blacklist
Vojtech Pavlik [Sat, 14 Jan 2006 05:24:06 +0000 (00:24 -0500)]
Input: i8042 - add Sony Vaio FSC-115b to MUX blacklist

Signed-off-by: Vojtech Pavlik <vojtech@suse.cz>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
18 years ago[PATCH] powerpc: Recognize /chaos bridge on old pmacs as PCI
Paul Mackerras [Sat, 14 Jan 2006 04:08:50 +0000 (15:08 +1100)]
[PATCH] powerpc: Recognize /chaos bridge on old pmacs as PCI

The first generation of PCI powermacs had a host bridge called /chaos
which was for all intents and purposes a PCI host bridge, but has a
device_type of "vci" in the device tree (presumably it's not really
PCI at the hardware level or something).

The OF parsing stuff in arch/powerpc/kernel/prom_parse.c currently
doesn't recognize it as a PCI bridge, which means that controlfb.c
can't get its device addresses.

This makes prom_parse.c recognize a device_type of "vci" as indicating
a PCI host bridge.  With this, controlfb works again.

Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: Avoid unaligned loads and stores in boot memcpy code
Paul Mackerras [Sat, 14 Jan 2006 04:06:51 +0000 (15:06 +1100)]
powerpc: Avoid unaligned loads and stores in boot memcpy code

The 601 processor will generate an alignment exception for accesses
which cross a page boundary.  In the boot wrapper code, OF is still
handling all exceptions, and it doesn't have an alignment exception
handler that emulates the instruction and continues.

This changes the memcpy and memmove routines in the boot wrapper to
avoid doing unaligned accesses.  If the source and destination are
misaligned with respect to each other, we just copy one byte at a
time.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: Make COFF zImages for old 32-bit powermacs
Paul Mackerras [Sat, 14 Jan 2006 04:04:06 +0000 (15:04 +1100)]
powerpc: Make COFF zImages for old 32-bit powermacs

This adds code to build zImage.coff and/or zImage.initrd.coff when
CONFIG_PPC32 and CONFIG_PPC_PMAC are defined.  It also restructures
the OF client code and adds some workarounds for OF quirks on the
older machines.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: macio-adb build fix
David Woodhouse [Sat, 14 Jan 2006 00:15:19 +0000 (00:15 +0000)]
[PATCH] powerpc: macio-adb build fix

This makes macio-adb.c build again. Entirely untested.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Make CHRP build again
David Woodhouse [Sat, 14 Jan 2006 00:13:49 +0000 (00:13 +0000)]
[PATCH] powerpc: Make CHRP build again

This makes CHRP build again, although it's untested because my Pegasos
is currently in pieces.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Sat, 14 Jan 2006 01:13:44 +0000 (17:13 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

18 years ago[PATCH] powerpc: special-case ibm,suspend-me RTAS call
Dave C Boutcher [Sat, 14 Jan 2006 00:39:24 +0000 (18:39 -0600)]
[PATCH] powerpc: special-case ibm,suspend-me RTAS call

Handle the ibm,suspend-me RTAS call specially.  It needs
to be wrapped in a set of synchronization hypervisor calls
(H_Join).  When the H_Join calls are made on all CPUs, the
intent is that only one will return with H_Continue, meaning
that he is the "last man standing".  That CPU then issues the
ibm,suspend-me call.  What is interesting, of course, is that
the CPU running when the rtas syscall is made, may NOT be the
CPU that ultimately executes the ibm,suspend-me rtas call.

Signed-off-by: Dave Boutcher <sleddog@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoppc: Remove duplicate export of get_wchan
Paul Mackerras [Sat, 14 Jan 2006 00:17:32 +0000 (11:17 +1100)]
ppc: Remove duplicate export of get_wchan

The arch/powerpc version of process.c exports get_wchan itself.  When
I moved ARCH=ppc over to using arch/powerpc/kernel/process.c the
get_wchan export in arch/ppc/kernel/ppc_ksyms.c became redundant, so
remove it.

Signed-off-by: Paul Mackerras <paulus@samba.org>
(cherry picked from 9871166ad692121d6b944159ef3f053570158ea8 commit)

18 years ago[PATCH] SPI: add spi_butterfly driver
David Brownell [Wed, 11 Jan 2006 19:23:49 +0000 (11:23 -0800)]
[PATCH] SPI: add spi_butterfly driver

This adds a bitbanging parport based adaptor cable for AVR Butterfly, giving
SPI links to its DataFlash chip and (eventually) firmware running in the card.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: remove fastcall crap
Andrew Morton [Wed, 11 Jan 2006 19:23:49 +0000 (11:23 -0800)]
[PATCH] spi: remove fastcall crap

gcc4 generates warnings when a non-FASTCALL function pointer is assigned to a
FASTCALL one.  Perhaps it has taste.

Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: misc fixes
David Brownell [Sun, 8 Jan 2006 21:34:29 +0000 (13:34 -0800)]
[PATCH] spi: misc fixes

This collects some small SPI patches that seem to be missing from the MM tree:

  - spi_butterfly kbuild hooks got dropped somehow; this restores them
  - quick fix for a (theoretical?) m25p80_write() oops noted by Andrew
  - quick fix for a potential config-specific oops for mtd_dataflash()
  - minor doc tweaks

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: use linked lists rather than an array
Vitaly Wool [Sun, 8 Jan 2006 21:34:28 +0000 (13:34 -0800)]
[PATCH] spi: use linked lists rather than an array

This makes the SPI core and its users access transfers in the SPI message
structure as linked list not as an array, as discussed on LKML.

From: David Brownell <dbrownell@users.sourceforge.net>

  Updates including doc, bugfixes to the list code, add
  spi_message_add_tail().  Plus, initialize things _before_ grabbing the
  locks in some cases (in case it grows more expensive).  This also merges
  some bitbang updates of mine that didn't yet make it into the mm tree.

Signed-off-by: Vitaly Wool <vwool@ru.mvista.com>
Signed-off-by: Dmitry Pervushin <dpervushin@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: M25 series SPI flash
Mike Lavender [Sun, 8 Jan 2006 21:34:27 +0000 (13:34 -0800)]
[PATCH] spi: M25 series SPI flash

This was originally a driver for the ST M25P80 SPI flash.  It's been
updated slightly to handle other M25P series chips.

For many of these chips, the specific type could be probed, but for now
this just requires static setup with flash_platform_data that lists the
chip type (size, format) and any default partitioning to use.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Mike Lavender <mike@steroidmicros.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: add spi_bitbang driver
David Brownell [Sun, 8 Jan 2006 21:34:26 +0000 (13:34 -0800)]
[PATCH] spi: add spi_bitbang driver

This adds a bitbanging spi master, hooking up to board/adapter-specific glue
code which knows how to set and read the signals (gpios etc).

This code kicks in after the glue code creates a platform_device with the
right platform_data.  That data includes I/O loops, which will usually
come from expanding an inline function (provided in the header).  One goal
is that the I/O loops should be easily optimized down to a few GPIO register
accesses, in common cases, for speed and minimized overhead.

This understands all the currently defined protocol tweaking options in the
SPI framework, and might eventually serve as as reference implementation.

  - different word sizes (1..32 bits)
  - differing clock rates
  - SPI modes differing by CPOL (affecting chip select and I/O loops)
  - SPI modes differing by CPHA (affecting I/O loops)
  - delays (usecs) after transfers
  - temporarily deselecting chips in mid-transfer

A lot of hardware could work with this framework, though common types of
controller can't reach peak performance without switching to a driver
structure that supports pipelining of transfers (e.g.  DMA queues) and maybe
controllers (e.g.  IRQ driven).

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: ads7836 uses spi_driver
David Brownell [Sun, 8 Jan 2006 21:34:25 +0000 (13:34 -0800)]
[PATCH] spi: ads7836 uses spi_driver

This updates the ads7864 driver to use the new "spi_driver" struct, and
includes some minor unrelated cleanup.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] SPI core tweaks, bugfix
David Brownell [Sun, 8 Jan 2006 21:34:25 +0000 (13:34 -0800)]
[PATCH] SPI core tweaks, bugfix

This includes various updates to the SPI core:

  - Fixes a driver model refcount bug in spi_unregister_master() paths.

  - The spi_master structures now have wrappers which help keep drivers
    from needing class-level get/put for device data or for refcounts.

  - Check for a few setup errors that would cause oopsing later.

  - Docs say more about memory management.  Highlights the use of DMA-safe
    i/o buffers, and zero-initializing spi_message and such metadata.

  - Provide a simple alloc/free for spi_message and its spi_transfer;
    this is only one of the possible memory management policies.

Nothing to break code that already works.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: add spi_driver to SPI framework
David Brownell [Sun, 8 Jan 2006 21:34:23 +0000 (13:34 -0800)]
[PATCH] spi: add spi_driver to SPI framework

This is a refresh of the "Simple SPI Framework" found in 2.6.15-rc3-mm1
which makes the following changes:

  * There's now a "struct spi_driver".  This increase the footprint
    of the core a bit, since it now includes code to do what the driver
    core was previously handling directly.  Documentation and comments
    were updated to match.

  * spi_alloc_master() now does class_device_initialize(), so it can
    at least be refcounted before spi_register_master().  To match,
    spi_register_master() switched over to class_device_add().

  * States explicitly that after transfer errors, spi_devices will be
    deselected.  We want fault recovery procedures to work the same
    for all controller drivers.

  * Minor tweaks:  controller_data no longer points to readonly data;
    prevent some potential cast-from-null bugs with container_of calls;
    clarifies some existing kerneldoc,

And a few small cleanups.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: mtd dataflash driver
David Brownell [Sun, 8 Jan 2006 21:34:22 +0000 (13:34 -0800)]
[PATCH] spi: mtd dataflash driver

This is a conversion of the AT91rm9200 DataFlash MTD driver to use the
lightweight SPI framework, and no longer be AT91-specific.  It compiles
down to less than 3KBytes on ARM.

The driver allows board-specific init code to provide platform_data with
the relevant MTD partitioning information, and hotplugs.

This version has been lightly tested.  Its parent at91_dataflash driver has
been pretty well banged on, although kernel.org JFFS2 dataflash support was
acting broken the last time I tried it.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: ads7846 driver
David Brownell [Sun, 8 Jan 2006 21:34:21 +0000 (13:34 -0800)]
[PATCH] spi: ads7846 driver

This is a driver for the ADS7846 touchscreen sensor, derived from
the corgi_ts and omap_ts drivers.  Key differences from those two:

  - Uses the new SPI framework (minimalist version)
  - <linux/spi/ads7846.h> abstracts board-specific touchscreen info
  - Sysfs attributes for the temperature and voltage sensors
  - Uses fewer ARM-specific IRQ primitives

The temperature and voltage sensors show up in sysfs like this:

  $ pwd
  /sys/devices/platform/omap-uwire/spi2.0
  $ ls
  bus@          input:event0@ power/        temp1         vbatt
  driver@       modalias      temp0         vaux
  $ cat modalias
  ads7846
  $ cat temp0
  991
  $ cat temp1
  1177
  $

So far only basic testing has been done.  There's a fair amount of hardware
that uses this sensor, and which also runs Linux, which should eventually
be able to use this driver.

One portability note may be of special interest.  It turns out that not all
SPI controllers are happy issuing requests that do things like "write 8 bit
command, read 12 bit response".  Most of them seem happy to handle various
word sizes, so the issue isn't "12 bit response" but rather "different rx
and tx write sizes", despite that being a common MicroWire convention.  So
this version of the driver no longer reads 12 bit native-endian words; it
reads 16-bit big-endian responses, then byteswaps them and shifts the
results to discard the noise.

Signed-off-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[PATCH] spi: simple SPI framework
David Brownell [Sun, 8 Jan 2006 21:34:19 +0000 (13:34 -0800)]
[PATCH] spi: simple SPI framework

This is the core of a small SPI framework, implementing the model of a
queue of messages which complete asynchronously (with thin synchronous
wrappers on top).

  - It's still less than 2KB of ".text" (ARM).  If there's got to be a
    mid-layer for something so simple, that's the right size budget.  :)

  - The guts use board-specific SPI device tables to build the driver
    model tree.  (Hardware probing is rarely an option.)

  - This version of Kconfig includes no drivers.  At this writing there
    are two known master controller drivers (PXA/SSP, OMAP MicroWire)
    and three protocol drivers (CS8415a, ADS7846, DataFlash) with LKML
    mentions of other drivers in development.

  - No userspace API.  There are several implementations to compare.
    Implement them like any other driver, and bind them with sysfs.

The changes from last version posted to LKML (on 11-Nov-2005) are minor,
and include:

  - One bugfix (removes a FIXME), with the visible effect of making device
    names be "spiB.C" where B is the bus number and C is the chipselect.

  - The "caller provides DMA mappings" mechanism now has kerneldoc, for
    DMA drivers that want to be fancy.

  - Hey, the framework init can be subsys_init.  Even though board init
    logic fires earlier, at arch_init ... since the framework init is
    for driver support, and the board init support uses static init.

  - Various additional spec/doc clarifications based on discussions
    with other folk.  It adds a brief "thank you" at the end, for folk
    who've helped nudge this framework into existence.

As I've said before, I think that "protocol tweaking" is the main support
that this driver framework will need to evolve.

From: Mark Underwood <basicmark@yahoo.com>

  Update the SPI framework to remove a potential priority inversion case by
  reverting to kmalloc if the pre-allocated DMA-safe buffer isn't available.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
18 years ago[NETFILTER] x-tables: Missing linux/ipv6.h includes.
David S. Miller [Sat, 14 Jan 2006 00:19:44 +0000 (16:19 -0800)]
[NETFILTER] x-tables: Missing linux/ipv6.h includes.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PATCH] powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults
Marcelo Tosatti [Fri, 13 Jan 2006 16:16:12 +0000 (14:16 -0200)]
[PATCH] powerpc/8xx: Use 8MB D-TLB's for kernel static mapping faults

The following implements support for instantiation of 8MB D-TLB
entries for the kernel direct virtual mapping on 8xx, thus reducing TLB
space consumed for the kernel.

Test used: writing 40MB from /dev/zero to file in ext2fs over
RAMDISK.

$ time dd if=/dev/zero of=file bs=4k count=10000

VANILLA 8MB kernel data pages

real    0m11.485s real    0m11.267s
user    0m0.218s        user    0m0.250s
sys     0m8.939s sys     0m9.108s

real    0m11.518s real    0m10.978s
user    0m0.203s  user    0m0.222s
sys     0m9.585s sys     0m9.138s

real    0m11.554s real    0m10.967s
user    0m0.228s     user    0m0.222s
sys     0m9.497s sys     0m9.127s

real    0m11.633s real 0m11.286s
user    0m0.214s user    0m0.196s
sys     0m9.529s sys     0m9.134s

and averages for both:

real 11.54750 real 11.12450

Which is a 3.6% improvement in execution time. More improvement is
expected for loads with larger kernel data footprint (real workloads).

Signed-off-by: Marcelo Tosatti <marcelo.tosatti@cyclades.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add MPC834x SYS board to arch/powerpc
Kumar Gala [Fri, 13 Jan 2006 17:19:58 +0000 (11:19 -0600)]
[PATCH] powerpc: Add MPC834x SYS board to arch/powerpc

Add the first MPC83xx board that uses a flat device tree to arch/powerpc.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Add FSL SOC library and setup code
Kumar Gala [Fri, 13 Jan 2006 17:19:13 +0000 (11:19 -0600)]
[PATCH] powerpc: Add FSL SOC library and setup code

Parse the flat device tree for devices on Freescale SOC's that we know
about (gianfar, gianfar_mdio, i2c, mpc83xx_wdt).  We need to setup
platform devices and platform data for these devices to match arch/ppc
usage.

Also add a helper function (get_immrbase) that reports the base
address of the MMIO registers on the SOC.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Allow for ppc_md restart, power_off, and halt to be NULL
Kumar Gala [Fri, 13 Jan 2006 16:15:17 +0000 (10:15 -0600)]
[PATCH] powerpc: Allow for ppc_md restart, power_off, and halt to be NULL

On a number of embedded reference boards there isn't always a
way to reset, power_off, or halt the board.  Rather than having
each board implement a spin loop just let the generic code do
it.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: oprofile cpu type names clash with other code
Andy Whitcroft [Fri, 13 Jan 2006 12:35:49 +0000 (12:35 +0000)]
[PATCH] powerpc: oprofile cpu type names clash with other code

In 2.6.15-git6 a change was commited in the oprofile support in
the powerpc architecture.  It introduced the powerpc_oprofile_type
which contains the define G4.  This causes a name clash with the
existing wacom usb tablet driver.

      CC [M]  drivers/usb/input/wacom.o
    drivers/usb/input/wacom.c:98: error: conflicting types for `G4'
    include/asm/cputable.h:37: error: previous declaration of `G4'
      CC [M]  drivers/usb/mon/mon_text.o
    make[3]: *** [drivers/usb/input/wacom.o] Error 1
    make[2]: *** [drivers/usb/input] Error 2

The elements of an enum declared in global scope are effectivly
global identifiers themselves.  As such we need to ensure the names
are unique.  This patch updates the later oprofile support to use
unique names.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Fri, 13 Jan 2006 23:29:07 +0000 (15:29 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 13 Jan 2006 23:28:10 +0000 (15:28 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

18 years agopowerpc: Provide a suitable AT_PLATFORM value
Paul Mackerras [Fri, 13 Jan 2006 23:11:39 +0000 (10:11 +1100)]
powerpc: Provide a suitable AT_PLATFORM value

The glibc folks want to use AT_PLATFORM to select between possible
alternative versions of shared libraries.  This commit makes the kernel
supply an AT_PLATFORM string that indicates what class of processor
we are running on.  Processors with the same set of user-level
instructions and roughly the same instruction scheduling characteristics
are given the same AT_PLATFORM value; for example, 821, 823 and 860
are all reported as "ppc823", and 7447, 7447A, 7448, 7450, 7451, 7455
are all called "ppc7450".

The intention is that the AT_PLATFORM values match the values that
gcc accepts for the -mcpu= option.  For values which are numeric
(e.g. -mcpu=750), "ppc" has been prepended.

This also adds a PPC_FEATURE_BOOKE bit to the AT_HWCAP value and sets
it for the 440 family and the Freescale 85xx family.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[IA64] build broken for ia64 simserial.c
Andreas Schwab [Fri, 13 Jan 2006 22:46:38 +0000 (23:46 +0100)]
[IA64] build broken for ia64 simserial.c

TTY layer buffering revamp broke ia64 in commit
 33f0f88f1c51ae5c2d593d26960c760ea154c2e2

  CC      arch/ia64/hp/sim/simserial.o
arch/ia64/hp/sim/simserial.c: In function `receive_chars':
arch/ia64/hp/sim/simserial.c:170: error: structure has no member named `flip'
 ... and so on ...
make[1]: *** [arch/ia64/hp/sim/simserial.o] Error 1

Patch from Andreas Schwab.

Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years agoIB: convert from semaphores to mutexes
Ingo Molnar [Fri, 13 Jan 2006 22:51:39 +0000 (14:51 -0800)]
IB: convert from semaphores to mutexes

semaphore to mutex conversion by Ingo and Arjan's script.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
[ Sanity-checked on real IB hardware ]
Signed-off-by: Roland Dreier <rolandd@cisco.com>
18 years ago[IA64] prevent accidental modification of args in jprobe handler
Zhang Yanmin [Fri, 13 Jan 2006 22:45:21 +0000 (14:45 -0800)]
[IA64] prevent accidental modification of args in jprobe handler

When jprobe is hit, the function parameters of the original function
should be saved before jprobe handler is executed, and restored it after
jprobe handler is executed, because jprobe handler might change the
register values due to tail call optimization by the gcc.

Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
18 years ago[PKT_SCHED]: Change default clock source to gettimeofday
Patrick McHardy [Fri, 13 Jan 2006 22:36:55 +0000 (14:36 -0800)]
[PKT_SCHED]: Change default clock source to gettimeofday

The default of using jiffies is very bad and results in
underutilization except with very low bandwidth.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>