]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
17 years agoserial_8250: pci_enable_device fail is not fully handled
Alan Cox [Mon, 13 Oct 2008 09:36:11 +0000 (10:36 +0100)]
serial_8250: pci_enable_device fail is not fully handled

<rmk> talking about leaks - I noticed that the 'check return of
pci_enable_dev()' in the 8250 pci resume function finally made it in
despite my objections against it (causing stuff in higher levels to
leak).

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoftdi: A few errors are err() that should be debug which causes much spewage
Alan Cox [Mon, 13 Oct 2008 09:36:00 +0000 (10:36 +0100)]
ftdi: A few errors are err() that should be debug which causes much spewage

Fixes #10783

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agousb: fix pl2303 initialization
Jason Wessel [Mon, 13 Oct 2008 09:35:51 +0000 (10:35 +0100)]
usb: fix pl2303 initialization

This patch removes the private check for the termios_initialized for
the pl2303 usb driver.  It forced the baud to 9600 on the first call
to pl2303_set_termios()

Based on the tty changes in the 2.6.27 kernel, the termios passed to
the *_set_termios functions is always populated the first time.

This means there is no need to privately initialize the settings the
first time, and doing so will not allow the use of the kernel
parameter "console=ttyUSB0,115200" as an example.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoserial-make-uart_ports-ioport-unsigned-long-fix
Andrew Morton [Mon, 13 Oct 2008 09:35:42 +0000 (10:35 +0100)]
serial-make-uart_ports-ioport-unsigned-long-fix

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agonozomi: Fix close on error
Alan Cox [Mon, 13 Oct 2008 09:35:33 +0000 (10:35 +0100)]
nozomi: Fix close on error

Nozomi assumes the close method isn't called if open errors. The tty layer
is different to other drives in this respect however. Pointed out by Denis J
Barrow.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoserial: Make uart_port's ioport "unsigned long".
David Miller [Mon, 13 Oct 2008 09:35:23 +0000 (10:35 +0100)]
serial: Make uart_port's ioport "unsigned long".

Otherwise the top 32-bits of the resource value get chopped
off on 64-bit systems, and the resulting I/O accesses go to
random places.

Thanks to testing and debugging by Josip Rodin, which helped
track this down.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoaudit: Handle embedded NUL in TTY input auditing
Miloslav Trmac [Mon, 13 Oct 2008 09:35:15 +0000 (10:35 +0100)]
audit: Handle embedded NUL in TTY input auditing

Data read from a TTY can contain an embedded NUL byte (e.g. after
pressing Ctrl-2, or sent to a PTY).  After the previous patch, the data
would be logged only up to the first NUL.

This patch modifies the AUDIT_TTY record to always use the hexadecimal
format, which does not terminate at the first NUL byte.  The vast
majority of recorded TTY input data will contain either ' ' or '\n', so
the hexadecimal format would have been used anyway.

Signed-off-by: Miloslav Trmac <mitr@redhat.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoip2: avoid add_timer with pending timer
Akinobu Mita [Mon, 13 Oct 2008 09:35:05 +0000 (10:35 +0100)]
ip2: avoid add_timer with pending timer

add_timer() is not supposed to be called when the timer is pending.
ip2 driver attempts to avoid that condition by setting and resetting
a flag (TimerOn) in timer function. But there is some gap between
add_timer() and setting TimerOn.

This patch fix this problem by using mod_timer() and remove TimerOn
which has been unnecessary by this change.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoip2: init/deinit cleanup
Jiri Slaby [Mon, 13 Oct 2008 09:34:56 +0000 (10:34 +0100)]
ip2: init/deinit cleanup

Cleanup of module_init/exit:
- mostly whitespace
- remove empty functions
- replace c++ comments
- remove useless prints (module loaded, unloaded)
- mark the calls as __exit and __init
- use break; and return; to save some indent levels after it
- note resource leakage

It's still mess, but now it's readable.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoip2: fix sparse warnings
Jiri Slaby [Mon, 13 Oct 2008 09:34:45 +0000 (10:34 +0100)]
ip2: fix sparse warnings

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoip2: cleanup globals
Jiri Slaby [Mon, 13 Oct 2008 09:34:36 +0000 (10:34 +0100)]
ip2: cleanup globals

- do not init .bss zeroed data to zero again (by memset or
  explicit assignment)
- use char [] instead of char * for string constants

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoChar: merge ip2main and ip2base
Jiri Slaby [Mon, 13 Oct 2008 09:34:27 +0000 (10:34 +0100)]
Char: merge ip2main and ip2base

It's pretty useless to have one setup() function separated along with
module_init() which only calls a function from ip2main anyway. Get rid
of ip2base.

Remove also checks of always-true now.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoChar: sx, fix io unmapping
Jiri Slaby [Mon, 13 Oct 2008 09:34:18 +0000 (10:34 +0100)]
Char: sx, fix io unmapping

board->base is increased for CF cards after mapping. Use board->base2
for unmapping the region, since it holds the original/correct address.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoChar: cyclades. remove bogus iomap
Jiri Slaby [Mon, 13 Oct 2008 09:34:09 +0000 (10:34 +0100)]
Char: cyclades. remove bogus iomap

readl/writel are not expected to accept iomap return value. Replace
bogus mapping by standard ioremap.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoFix oti6858 debug level
Scott Ashcroft [Mon, 13 Oct 2008 09:34:00 +0000 (10:34 +0100)]
Fix oti6858 debug level

For some reason the oti6858 driver undefines and redefines the dbg
macro. This makes it spew debugging messages at KERN_INFO instead of
KERN_DEBUG.

This patch removes the undef and define making the driver log like every
other USB serial driver.

Signed-off-by: Scott Ashcroft <scott.ashcroft@talk21.com>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: Fix bug - request UART2/3 peripheral mapped interrupts in...
Sonic Zhang [Mon, 13 Oct 2008 09:33:51 +0000 (10:33 +0100)]
Blackfin Serial Driver: Fix bug - request UART2/3 peripheral mapped interrupts in PIO mode

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: Fix bug - ircp fails on sir over Blackfin UART
Graf Yang [Mon, 13 Oct 2008 09:33:42 +0000 (10:33 +0100)]
Blackfin Serial Driver: Fix bug - ircp fails on sir over Blackfin UART

We now use the sir_dev/irtty_sir/uart/bfin_serial drivers framework
to monitor the TX status.

Signed-off-by: Graf Yang <graf.yang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: Fix bug - Don't call tx_stop in tx_transfer.
Sonic Zhang [Mon, 13 Oct 2008 09:33:33 +0000 (10:33 +0100)]
Blackfin Serial Driver: Fix bug - Don't call tx_stop in tx_transfer.

Disable irq and return immediately.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: Remove useless stop
Sonic Zhang [Mon, 13 Oct 2008 09:33:25 +0000 (10:33 +0100)]
Blackfin Serial Driver: Remove useless stop

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: move common variables out of serial headers and into the...
Mike Frysinger [Mon, 13 Oct 2008 09:33:16 +0000 (10:33 +0100)]
Blackfin Serial Driver: move common variables out of serial headers and into the serial driver

move common variables out of serial headers and into the serial driver and
rename "nr_ports" to "nr_active_ports" so as to easily differentiate
between BFIN_UART_NR_PORTS (the # of available) and nr_ports (the # of enabled)

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: trim trailing whitespace -- no functional changes
Mike Frysinger [Mon, 13 Oct 2008 09:33:06 +0000 (10:33 +0100)]
Blackfin Serial Driver: trim trailing whitespace -- no functional changes

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: Fix bug - should suspend/resume/remove all uart ports.
Sonic Zhang [Mon, 13 Oct 2008 09:32:44 +0000 (10:32 +0100)]
Blackfin Serial Driver: Fix bug - should suspend/resume/remove all uart ports.

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoBlackfin Serial Driver: use __initdata for data, not __init
Mike Frysinger [Mon, 13 Oct 2008 09:32:35 +0000 (10:32 +0100)]
Blackfin Serial Driver: use __initdata for data, not __init

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoepca: call tty_port_init
Alan Cox [Mon, 13 Oct 2008 09:32:09 +0000 (10:32 +0100)]
epca: call tty_port_init

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agocoldfire: scheduled SERIAL_COLDFIRE removal
Adrian Bunk [Mon, 13 Oct 2008 09:31:59 +0000 (10:31 +0100)]
coldfire: scheduled SERIAL_COLDFIRE removal

This patch contains the scheduled removal of the obsolete
SERIAL_COLDFIRE driver.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agodrivers/char/hvc_console.c: adjust call to put_tty_driver
Julia Lawall [Mon, 13 Oct 2008 09:31:49 +0000 (10:31 +0100)]
drivers/char/hvc_console.c: adjust call to put_tty_driver

The call to put_tty_driver is out of place and is applied to the wrong
argument.

The function enclosing the patched code calls alloc_tty_driver and stores
the result in drv.  Subsequently, there are two occurrences of error
handling code, one making a goto to put_tty and one making a goto to
stop_thread.  At the point of the first one the assignment hvc_driver = drv
has not yet been executed, and from inspecting the rest of the file it
seems that hvc_driver would be NULL.  Thus the current call to
put_tty_driver is useless, and one applied to drv is needed.  The goto
stop_thread is in the error handling code for a call to
tty_register_driver, but the error cases in tty_register_driver do not free
its argument, so it should be done here.  Thus, I have moved the put_tty
label after the stop_thread label, so that put_tty_driver is called in both
cases.

The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@r exists@
local idexpression x;
expression E,f;
position p1,p2,p3;
identifier l;
statement S;
@@

x = alloc_tty_driver@p1(...)
...
if (x == NULL) S
... when != E = x
    when != put_tty_driver(x)
goto@p2 l;
... when != E = x
    when != f(...,x,...)
    when any
(
return \(0\|x\);
|
return@p3 ...;
)

@script:python@
p1 << r.p1;
p2 << r.p2;
p3 << r.p3;
@@

print "%s: call on line %s not freed or saved before return on line %s via line %s" % (p1[0].file,p1[0].line,p3[0].line,p2[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agodrivers/serial/crisv10.c: add missing put_tty_driver
Julia Lawall [Mon, 13 Oct 2008 09:31:37 +0000 (10:31 +0100)]
drivers/serial/crisv10.c: add missing put_tty_driver

alloc_tty_driver is called at the beginning of the function containing the
lines of code shown in the patch.  Thus, put_tty_driver is needed before
returning in the error handling code.

The semantic match that finds this problem is as follows:
(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@nr exists@
local idexpression x;
expression E,f;
position p1,p2,p3;
identifier l;
statement S;
@@

x = alloc_tty_driver@p1(...)
...
if (x == NULL) S
... when != E = x
    when != put_tty_driver(x)
    when != goto l;
(
return \(0\|x\);
|
return@p3 ...;
)

@script:python@
p1 << nr.p1;
p3 << nr.p3;
@@

print "%s: call on line %s not freed or saved before return on line %s" % (p1[0].file,p1[0].line,p3[0].line)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agopowerpc: fix fsl_upm nand driver modular build
Anton Vorontsov [Thu, 9 Oct 2008 00:32:59 +0000 (04:32 +0400)]
powerpc: fix fsl_upm nand driver modular build

The fsl_upm nand driver fails to build because fsl_lbc_lock isn't
exported, the lock is needed by the inlined fsl_upm_run_pattern()
function:

ERROR: "fsl_lbc_lock" [drivers/mtd/nand/fsl_upm.ko] undefined!

Dave Jones purposed to export the lock, but it is better to just uninline
the fsl_upm_run_pattern().

When uninlined we also no longer need the exported fsl_lbc_regs, and
both fsl_lbc_lock and fsl_lbc_regs could be marked static.

While at it, also add some missing includes that we should have included
explicitly.

Reported-by: Dave Jones <davej@redhat.com>
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agoMerge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
David Woodhouse [Mon, 13 Oct 2008 16:13:56 +0000 (17:13 +0100)]
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6

Conflicts:

include/asm-x86/statfs.h

17 years agopowerpc/83xx: add NAND support for the MPC8360E-RDK boards
Anton Vorontsov [Fri, 10 Oct 2008 18:05:12 +0000 (22:05 +0400)]
powerpc/83xx: add NAND support for the MPC8360E-RDK boards

The StMicro NAND chip (512Mbit, 64MB) is connected to the local bus,
the first local bus' user-programmable machine is configured by the
firmware to work with NAND chips.

QE GPIO pin is used to poll the NAND's Ready-Not-Busy signal.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agox86/mm: unify init task OOM handling
Ingo Molnar [Mon, 13 Oct 2008 15:49:02 +0000 (17:49 +0200)]
x86/mm: unify init task OOM handling

Linus noticed that the "again:" versus "survive:" OOM logic for
the init task was arbitrarily different.

The 64-bit codepath is the better one, because it correctly re-lookups
the vma after having dropped the ->mmap_sem.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agopowerpc: FPGA support for GE Fanuc SBC610
Martyn Welch [Mon, 13 Oct 2008 15:16:45 +0000 (16:16 +0100)]
powerpc: FPGA support for GE Fanuc SBC610

Support for the SBC610 VPX Single Board Computer from GE Fanuc (PowerPC
MPC8641D).

This patch adds support for the registers held in the devices main FPGA,
exposing extra information about the revision of the board through cpuinfo.

Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agoi2c: MPC8349E-mITX Power Management and GPIO expander driver
Anton Vorontsov [Tue, 23 Sep 2008 14:13:00 +0000 (18:13 +0400)]
i2c: MPC8349E-mITX Power Management and GPIO expander driver

On MPC8349E-mITX, MPC8315E-RDB and MPC837x-RDB boards there is a
Freescale MC9S08QG8 (MCU) chip with the custom firmware
pre-programmed. The chip is used to power-off the board by the
software, and to control some GPIO pins.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: reserve two DMA channels for audio in MPC8610 HPCD device tree
Timur Tabi [Fri, 10 Oct 2008 16:52:32 +0000 (11:52 -0500)]
powerpc: reserve two DMA channels for audio in MPC8610 HPCD device tree

The Freescale Elo DMA driver binds to all DMA channels in the device tree that
are compatible with "fsl,eloplus-dma-channel".  This conflicts with the sound
drivers for the MPC8610 HPCD.  On this board, the SSI uses two DMA channels and
therefore those channels are not available for general purpose use.  We
change the compatible properties for these channels "fsl,ssi-dma-channel".
This works because the sound drivers don't actually check the compatible
property when it grabs channels.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: document the "fsl,ssi-dma-channel" compatible property
Timur Tabi [Fri, 10 Oct 2008 16:52:31 +0000 (11:52 -0500)]
powerpc: document the "fsl,ssi-dma-channel" compatible property

The "fsl,ssi-dma-channel" compatible property is used to specify a DMA channel
on the Freescale Elo DMA controller that should be used exclusively by the
Freescale SSI audio controller.  When a property is marked as such, the Elo
DMA driver will ignore it, and so it will be available for the sound drivers.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: disable CHRP and PMAC support in various defconfigs
Timur Tabi [Fri, 10 Oct 2008 15:35:50 +0000 (10:35 -0500)]
powerpc: disable CHRP and PMAC support in various defconfigs

Because CHRP and PMAC are by default enabled, several non-CHRP and non-PMAC
PowerPC defconfigs will have these Kconfig options set erroneously.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agoOF: add fsl,mcu-mpc8349emitx to the exception list
Anton Vorontsov [Tue, 23 Sep 2008 14:12:19 +0000 (18:12 +0400)]
OF: add fsl,mcu-mpc8349emitx to the exception list

of/base.c matches on the first (most specific) entries, which isn't
quite practical but it was discussed[1] that this won't change.

The bindings specifies verbose information for the devices, but
it doesn't fit in the I2C ID's 20 characters limit. The limit won't
change[2], and the bindings won't change either as they're correct.

So we have to put an exception for the MPC8349E-mITX-compatible
MCUs.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/83xx: add DS1374 RTC support for the MPC837xE-MDS boards
Anton Vorontsov [Wed, 8 Oct 2008 18:16:05 +0000 (22:16 +0400)]
powerpc/83xx: add DS1374 RTC support for the MPC837xE-MDS boards

The RTC is sitting on the I2C1 bus at address 0x68. RTC interrupt signal
is connected to the IPIC's EXT3 interrupt line.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: remove support for bootmem-allocated memory for the DIU driver
Timur Tabi [Tue, 23 Sep 2008 14:47:01 +0000 (09:47 -0500)]
powerpc: remove support for bootmem-allocated memory for the DIU driver

Early versions of the Freescale DIU framebuffer driver depended on a bootmem
allocation of memory for the video buffer.  The need for this feature was
removed in commit 6b51d51a, so now we can remove the platform-specific code
that allocated that memory.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: remove non-dependent load fsl_booke PTE_64BIT
Milton Miller [Fri, 10 Oct 2008 11:56:52 +0000 (06:56 -0500)]
powerpc: remove non-dependent load fsl_booke PTE_64BIT

b38fd42ff46a4a31dced8533e8a6e549693500b6 added false dependencys
to order the load of upper and lower halfs of the pte, but only
adjusted whitespace instead of deleting the old load in the iside
handler, letting the hardware see the non-dependent load.

This patch removes the extra load.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/5121: Add PCI support.
John Rigby [Tue, 7 Oct 2008 21:13:18 +0000 (15:13 -0600)]
powerpc/5121: Add PCI support.

Uses mpc83xx_add_bridge in fsl_pci.c

Adds second register tuple to pci node register property
as done for 83xx device trees in a previous patch.

Signed-off-by: John Rigby <jrigby@freescale.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: 83xx: pci: Remove need for get_immrbase from mpc83xx_add_bridge.
John Rigby [Tue, 7 Oct 2008 19:00:18 +0000 (13:00 -0600)]
powerpc: 83xx: pci: Remove need for get_immrbase from mpc83xx_add_bridge.

Modify mpc83xx_add_bridge to get config space register base address from
the device tree instead of immr + hardcoded offset.

83xx pci nodes have this change:
    register properties now contain two address length tuples:
First is the pci bridge register base, this has always been there.
Second is the config base, this is new.

This is documented in dts-bindings/fsl/83xx-512x-pci.txt

The changes accomplish these things:
    mpc83xx_add_bridge no longer needs to call get_immrbase
    it uses hard coded addresses if the second register value is missing

Signed-off-by: John Rigby <jrigby@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/fsl: Hide MPC5121 pci bridge.
John Rigby [Tue, 7 Oct 2008 19:00:20 +0000 (13:00 -0600)]
powerpc/fsl: Hide MPC5121 pci bridge.

The class of the MPC5121 pci host bridge is PCI_CLASS_BRIDGE_OTHER
while other freescale host bridges have class set to
PCI_CLASS_PROCESSOR_POWERPC.

This patch makes fixup_hide_host_resource_fsl match
PCI_CLASS_BRIDGE_OTHER in addition to PCI_CLASS_PROCESSOR_POWERPC.

Signed-off-by: John Rigby <jrigby@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/83xx: don't probe broken PCI on mpc837x_mds boards
Anton Vorontsov [Mon, 6 Oct 2008 17:08:39 +0000 (21:08 +0400)]
powerpc/83xx: don't probe broken PCI on mpc837x_mds boards

In the standalone setup the board's CPLD disables the PCI internal
arbiter, thus any access to the PCI bus will hang the board.

The common way to disable particular devices in the device tree is to
put the "status" property with any value other than "ok" or "okay"
into the device node we want to disable.

So, when there is no PCI arbiter on the bus the u-boot adds status =
"broken (no arbiter)" property into the PCI controller's node, and so
marks the PCI controller as unavailable.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/QE: move QE_GPIO Kconfig symbol into the platforms/Kconfig
Anton Vorontsov [Fri, 3 Oct 2008 19:40:36 +0000 (23:40 +0400)]
powerpc/QE: move QE_GPIO Kconfig symbol into the platforms/Kconfig

Specifying user-selectable option in the qe_lib/Kconfig was a bad idea
because the qe_lib/Kconfig is included into the top level Kconfig, and
thus the QE_GPIO option appears at the top level menu.

This patch effectively moves the QE_GPIO option under the platform menu
instead.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: make Freescale QE support a selectable Kconfig option
Timur Tabi [Fri, 3 Oct 2008 16:14:10 +0000 (11:14 -0500)]
powerpc: make Freescale QE support a selectable Kconfig option

Modify the Kconfig so that Freescale QUICC Engine (QE) support is a selectable
option, thereby allowing users to compile kernels without any QE support.

The drawback is that QE support is now disabled by default on platforms that
have a QE, and so a defconfig is needed to enable QE and QE devices (like
UCC GETH).  Fortunately, all the current relevant defconfigs do that already.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc: GE Fanuc's FPGA based PIC controller on the SBC610
Martyn Welch [Wed, 1 Oct 2008 08:32:39 +0000 (09:32 +0100)]
powerpc: GE Fanuc's FPGA based PIC controller on the SBC610

Support for the SBC610 VPX Single Board Computer from GE Fanuc (PowerPC MPC8641D).

A number of MPC8641D based route interrupts for on-board interrupts through
a FPGA based interrupt controller, which is chained with the
MPC8641D's mpic. This patch provides a basic driver to allow basic routing
of interrupts to the mpic.

Signed-off-by: Martyn Welch <martyn.welch@gefanuc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agopowerpc/85xx: Wire up RTC interrupt on MPC8536DS
Kumar Gala [Thu, 2 Oct 2008 08:58:08 +0000 (03:58 -0500)]
powerpc/85xx: Wire up RTC interrupt on MPC8536DS

Add interrupt info to the MPC8536DS .dts for the RTC

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
17 years agox86/mm: do not trigger a kernel warning if user-space disables interrupts and generat...
Linus Torvalds [Sun, 12 Oct 2008 20:16:12 +0000 (13:16 -0700)]
x86/mm: do not trigger a kernel warning if user-space disables interrupts and generates a page fault

Arjan reported a spike in the following bug pattern in v2.6.27:

   http://www.kerneloops.org/searchweek.php?search=lock_page

which happens because hwclock started triggering warnings due to
a (correct) might_sleep() check in the MM code.

The warning occurs because hwclock uses this dubious sequence of
code to run "atomic" code:

  static unsigned long
  atomic(const char *name, unsigned long (*op)(unsigned long),
         unsigned long arg)
  {
    unsigned long v;
    __asm__ volatile ("cli");
    v = (*op)(arg);
    __asm__ volatile ("sti");
    return v;
  }

Then it pagefaults in that "atomic" section, triggering the warning.

There is no way the kernel could provide "atomicity" in this path,
a page fault is a cannot-continue machine event so the kernel has to
wait for the page to be filled in.

Even if it was just a minor fault we'd have to take locks and might have
to spend quite a bit of time with interrupts disabled - not nice to irq
latencies in general.

So instead just enable interrupts in the pagefault path unconditionally
if we come from user-space, and handle the fault.

Also, while touching this code, unify some trivial parts of the x86
VM paths at the same time.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Reported-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agorangetimers: fix the bug reported by Ingo for real
Arjan van de Ven [Mon, 13 Oct 2008 14:32:15 +0000 (10:32 -0400)]
rangetimers: fix the bug reported by Ingo for real

and please hand me a brown paper bag

(thanks to Thomas for pointing out this very obvious bug)

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
17 years agoFix autoloading of MacBook Pro backlight driver.
David Woodhouse [Tue, 16 Sep 2008 23:25:24 +0000 (16:25 -0700)]
Fix autoloading of MacBook Pro backlight driver.

Use new MODULE_DEVICE_TABLE(dmi, ...) facility. There's no need for
every driver to screw it up for themselves, when the alias can be
generated automatically.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
17 years agoAutomatic MODULE_ALIAS() for DMI match tables.
David Woodhouse [Tue, 16 Sep 2008 23:23:28 +0000 (16:23 -0700)]
Automatic MODULE_ALIAS() for DMI match tables.

This makes modpost handle MODULE_DEVICE_TABLE(dmi, xxxx).

I had to change the string pointers in the match table to char arrays,
and picked a size of 79 bytes almost at random -- do we need to make it
bigger than that? I was a bit concerned about the 'bloat' this
introduces into the match tables, but they should all be __initdata so
it shouldn't matter too much.

(Actually, modpost does go through the relocations and look at most of
them; it wouldn't be impossible to make it handle string pointers -- but
doesn't seem to be worth the effort, since they're __initdata).

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
17 years agoavr32: Add defconfig for the mimc200 board
Haavard Skinnemoen [Mon, 13 Oct 2008 15:01:34 +0000 (17:01 +0200)]
avr32: Add defconfig for the mimc200 board

Provided by Mark Jackson.

Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
17 years agoV4L/DVB (9186): Added support for Prof 7300 DVB-S/S2 cards
Oleg Roitburd [Wed, 8 Oct 2008 09:48:08 +0000 (06:48 -0300)]
V4L/DVB (9186): Added support for Prof 7300 DVB-S/S2 cards

Added support for Prof 7300 DVB-S/S2 card. The card
based on cx24116 demodulator.

Signed-off-by: Oleg Roitburd <oroitburd@gmail.com>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
[mchehab@redhat.com: fixed CARDLIST.cx88 entry]
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoMN10300: MEI are renaming themselves to Panasonic
David Howells [Mon, 13 Oct 2008 09:42:44 +0000 (10:42 +0100)]
MN10300: MEI are renaming themselves to Panasonic

MEI are renaming themselves to Panasonic, so update the MAINTAINERS
record for the MN10300 arch.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoavr32: Add MIMC200 board support
Mark Jackson [Mon, 13 Oct 2008 13:14:50 +0000 (13:14 +0000)]
avr32: Add MIMC200 board support

Please consider the following patch which adds support for a new AVR32
based board.

The board is closely based on Atmel's NGW100 reference board, but has an
extra 8MByte FLASH and 128KByte FRAM.

Signed-off-by: Mark Jackson <mpfj@mimc.co.uk>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
17 years agoavr32: Fix MIMC200 board use of SPD network pins
Mark Jackson [Mon, 13 Oct 2008 10:46:27 +0000 (10:46 +0000)]
avr32: Fix MIMC200 board use of SPD network pins

The MIMC200 board uses the SPD output pin from the Ethernet MACs for
other purposes.

One of these is as a board-reset, so I've had to #define off the SPD
output pin declaration.

This is probably not the best way of achieving this, but works in the
current framework.

Signed-off-by: Mark Jackson <mpfj@mimc.co.uk>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
17 years agoV4L/DVB (9185): S2API: Ensure we have a reasonable ROLLOFF default
Darron Broad [Tue, 7 Oct 2008 20:30:45 +0000 (17:30 -0300)]
V4L/DVB (9185): S2API: Ensure we have a reasonable ROLLOFF default

Non-initialised cache values get a reasonble default.

Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9184): cx24116: Change the default SNR units back to percentage by default.
Steven Toth [Tue, 7 Oct 2008 16:10:12 +0000 (13:10 -0300)]
V4L/DVB (9184): cx24116: Change the default SNR units back to percentage by default.

cx24116: Change the default SNR units back to percentage by default.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9183): S2API: Return error of the caller provides 0 commands.
Steven Toth [Tue, 7 Oct 2008 01:46:08 +0000 (22:46 -0300)]
V4L/DVB (9183): S2API: Return error of the caller provides 0 commands.

S2API: Return error of the caller provides 0 commands.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9182): S2API: Added support for DTV_HIERARCHY
Steven Toth [Tue, 7 Oct 2008 01:01:47 +0000 (22:01 -0300)]
V4L/DVB (9182): S2API: Added support for DTV_HIERARCHY

A user tuning DVB-T via the S2API reports that this was not implemented,
and his tuning was failing.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9181): S2API: Add support fot DTV_GUARD_INTERVAL and DTV_TRANSMISSION_MODE
Steven Toth [Tue, 7 Oct 2008 00:56:59 +0000 (21:56 -0300)]
V4L/DVB (9181): S2API: Add support fot DTV_GUARD_INTERVAL and DTV_TRANSMISSION_MODE

Tuning DVB-T via the S2API was failing, missing some essential items.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9180): S2API: Added support for DTV_CODE_RATE_HP/LP
Steven Toth [Tue, 7 Oct 2008 00:55:46 +0000 (21:55 -0300)]
V4L/DVB (9180): S2API: Added support for DTV_CODE_RATE_HP/LP

Reports from users that using the new API for tuning DTV was failing,
and the cache was missing some essential items.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9179): S2API: frontend.h cleanup
Brandon Philips [Tue, 7 Oct 2008 00:31:48 +0000 (21:31 -0300)]
V4L/DVB (9179): S2API: frontend.h cleanup

Reviewing the code briefly and saw this.
You can't change more than DTV_IOCTL_MAX_MSGS at once, not 16.

Signed-off-by: Brandon Philips <bphilips@suse.de>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9178): cx24116: Add module parameter to return SNR as ESNO.
Steven Toth [Tue, 7 Oct 2008 00:20:21 +0000 (21:20 -0300)]
V4L/DVB (9178): cx24116: Add module parameter to return SNR as ESNO.

I've retained the older percentage code after discussing this with
Darron Broad, but made the ESNO option default.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9177): S2API: Change _8PSK / _16APSK to PSK_8 and APSK_16
Steven Toth [Tue, 7 Oct 2008 00:06:48 +0000 (21:06 -0300)]
V4L/DVB (9177): S2API: Change _8PSK / _16APSK to PSK_8 and APSK_16

... and cleanup any drivers using them.
I've also removed NBC_QPSK and modified the cx24116 driver to check
the delivery_type also, removing some excess namespace baggage.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9176): Add support for DvbWorld USB cards with STV0288 demodulator.
Igor M. Liplianin [Sun, 5 Oct 2008 12:11:21 +0000 (09:11 -0300)]
V4L/DVB (9176): Add support for DvbWorld USB cards with STV0288 demodulator.

Add support for DvbWorld USB cards with STV0288 demodulator.
Those cards use Earda EDS-1547 tuner.

Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9175): Remove NULL pointer in stb6000 driver.
Igor M. Liplianin [Sun, 5 Oct 2008 11:57:11 +0000 (08:57 -0300)]
V4L/DVB (9175): Remove NULL pointer in stb6000 driver.

Remove NULL pointer in stb6000 driver,
as it raises error for DvbWorld USB card.

Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9174): Allow custom inittab for ST STV0288 demodulator.
Igor M. Liplianin [Sun, 5 Oct 2008 11:52:18 +0000 (08:52 -0300)]
V4L/DVB (9174): Allow custom inittab for ST STV0288 demodulator.

Allow custom inittab for ST STV0288 demodulator,
as it is needed for DvbWorld USB card.

Signed-off-by: Igor M. Liplianin <liplianin@me.by>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9173): S2API: Remove the hardcoded command limit during validation
Steven Toth [Mon, 6 Oct 2008 23:44:04 +0000 (20:44 -0300)]
V4L/DVB (9173): S2API: Remove the hardcoded command limit during validation

This means that when developers add new commands then they'll be see
the DTV_MAX_COMMAND define and will be more likely to modify it, without
having to modify the command validation code.

Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9172): S2API: Bugfix related to DVB-S / DVB-S2 tuning for the legacy API.
Darron Broad [Fri, 3 Oct 2008 14:53:18 +0000 (11:53 -0300)]
V4L/DVB (9172): S2API: Bugfix related to DVB-S / DVB-S2 tuning for the legacy API.

Fixes switching from S2API to legacy where legacy params given to S2API
aware demods are cached ones and not those implied in the legacy API.

It was found (on an S2API aware demod at least) that after using
an S2API aware application and then switching to a legacy application
that prior S2API params were in effect were legacy has only
implied values. This fixes this.

Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9171): S2API: Stop an OOPS if illegal commands are dumped in S2API.
Darron Broad [Fri, 3 Oct 2008 14:50:00 +0000 (11:50 -0300)]
V4L/DVB (9171): S2API: Stop an OOPS if illegal commands are dumped in S2API.

Quick fix to stop an OOPS if illegal commands are dumped in S2API.

Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9170): cx24116: Sanity checking to data input via S2API to the cx24116 demod.
Darron Broad [Fri, 3 Oct 2008 14:47:46 +0000 (11:47 -0300)]
V4L/DVB (9170): cx24116: Sanity checking to data input via S2API to the cx24116 demod.

Add some sanity checking to data input via S2API to the cx24116 demod.
This patch is valid for both s2-mfe and s2.

It was found when testing KAFFEINE with S2API support that invalid
modulation modes amongst other parameters were being delivered to
the demod. In order to debug this sanity checking has been added.

An example session would involve kaffeine setting QAM_AUTO when
querying DVB-T, then later when trying to tune to DVB-S this
cached value would be presented in error.

Signed-off-by: Darron Broad <darron@kewl.org>
Signed-off-by: Steven Toth <stoth@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years agoV4L/DVB (9169): uvcvideo: Support two new Bison Electronics webcams.
Laurent Pinchart [Sun, 21 Sep 2008 12:06:29 +0000 (09:06 -0300)]
V4L/DVB (9169): uvcvideo: Support two new Bison Electronics webcams.

This adds required quirks for the Compaq Presario B1200 and Acer Travelmate
7720 integrated webcams.

Signed-off-by: Laurent Pinchart <laurent.pinchart@skynet.be>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
17 years ago[MTD] remove unused mtd parameter in of_mtd_parse_partitions()
Sebastian Andrzej Siewior [Sun, 12 Oct 2008 14:18:36 +0000 (16:18 +0200)]
[MTD] remove unused mtd parameter in of_mtd_parse_partitions()

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
17 years agoavr32: add support for EarthLCD Favr-32 board
Hans-Christian Egtvedt [Tue, 29 Jul 2008 09:25:37 +0000 (09:25 +0000)]
avr32: add support for EarthLCD Favr-32 board

This patch adds support for the Favr-32 board made by EarthLCD.

This kit, which is also called ezLCD-101, has a 10.4" touch screen LCD panel,
16 MB 32-bit SDRAM, 8 MB parallel flash, Ethernet, audio out, USB device,
SD-card slot, USART and various other connectors for cennecting stuff to SPI,
I2C, GPIO, etc.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
17 years agolibiscsi: fix locking in iscsi_eh_device_reset
Mike Christie [Wed, 24 Sep 2008 16:46:15 +0000 (11:46 -0500)]
libiscsi: fix locking in iscsi_eh_device_reset

We must be using the bh spin locking functions in
iscsi_eh_device_reset becuase the session lock interacts with
a thread and softirq.

This patch also fixes up a bogus comment and check in fail_command,
because no one drops the lock (bnx2i did but it is not going
upstream yet and there were other refcount changes for that).

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years agolibiscsi: check reason why we are stopping iscsi session to determine error value
Mike Christie [Wed, 24 Sep 2008 16:46:14 +0000 (11:46 -0500)]
libiscsi: check reason why we are stopping iscsi session to determine error value

Some wires got crossed on some patches and I messed up in the code
below when rebuilding a patch. We want to be checking if flag
equaled the value indicating if we killing the session due to
final logout or if we just trying to relogin.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] iscsi_tcp: return a descriptive error value during connection errors
Mike Christie [Wed, 24 Sep 2008 16:46:13 +0000 (11:46 -0500)]
[SCSI] iscsi_tcp: return a descriptive error value during connection errors

The segment->done functions return a iscsi error value which gives
a lot more info than conn failed, so this patch has us return
that value. I also add a new one for xmit failures.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] libiscsi: rename host reset to target reset
Mike Christie [Wed, 24 Sep 2008 16:46:12 +0000 (11:46 -0500)]
[SCSI] libiscsi: rename host reset to target reset

I had this in my patchset to add target reset support, but
it got dropped due to patching conflicts. This initial patch
just renames the function and users. We are actually just
dropping the session, and so this does not have anything to do
with the host exactly. It does for software iscsi because
we allocate a host per session, but for cxgb3i this makes no
sense.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] iscsi class: fix endpoint id handling
Mike Christie [Wed, 24 Sep 2008 16:46:11 +0000 (11:46 -0500)]
[SCSI] iscsi class: fix endpoint id handling

Some endpoint code was using unsigned int and some
was using uint64_t. This converts it all to uint64_t.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] libiscsi: Support drivers initiating session removal
Mike Christie [Wed, 24 Sep 2008 16:46:10 +0000 (11:46 -0500)]
[SCSI] libiscsi: Support drivers initiating session removal

If the driver knows when hardware is removed like with cxgb3i,
bnx2i, qla4xxx and iser then we will want to remove the sessions/devices
that are bound to that device before removing the host.

cxgb3i and in the future bnx2i will remove the host and that will
remove all the sessions on the hba. iser can call iscsi_kill_session
when it gets an event that indicates that a hca is removed.
And when qla4xxx is hooked in to the lib (it is only hooked into
the class right now) it can call iscsi remove host like the
partial offload card drivers.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] libiscsi: fix data corruption when target has to resend data-in packets
Mike Christie [Wed, 24 Sep 2008 16:46:09 +0000 (11:46 -0500)]
[SCSI] libiscsi: fix data corruption when target has to resend data-in packets

iscsi_tcp was updating the exp_statsn (exp_statsn acknowledges
status and tells the target it is ok to let the resources for
a iscsi pdu to be reused) before it got all the data for pdu read
into OS buffers. Data corruption was occuring if something happens
to a packet and the network layer requests a retransmit, and the
initiator has told the target about the udpated exp_statsn ack,
then the target may be sending data from a buffer it has reused
for a new iscsi pdu. This fixes the problem by having the LLD
(iscsi_tcp in this case) just handle the transferring of data, and
has libiscsi handle the processing of status (libiscsi completion
processing is done after LLD data transfers are complete).

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] sd: Switch kernel printing level for DIF messages
Martin K. Petersen [Wed, 1 Oct 2008 05:37:21 +0000 (01:37 -0400)]
[SCSI] sd: Switch kernel printing level for DIF messages

For some reason these messages ended up being printed with KERN_INFO
rendering them invisible to pretty much everyone.  Switch to
KERN_NOTICE.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] sd: Correctly handle all combinations of DIF and DIX
Martin K. Petersen [Fri, 19 Sep 2008 22:47:21 +0000 (18:47 -0400)]
[SCSI] sd: Correctly handle all combinations of DIF and DIX

The old detection code couldn't handle all possible combinations of
DIX and DIF.  This version does, giving priority to DIX if the
controller is capable.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] sd: Always print actual protection_type
Martin K. Petersen [Fri, 19 Sep 2008 22:47:20 +0000 (18:47 -0400)]
[SCSI] sd: Always print actual protection_type

Now that we no longer use protection_type as trigger for preparing
protected CDBs we can remove the places that set it to zero.  This
allows userland to see which protection type the device is formatted
with regardless of whether the HBA supports DIF or not.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] sd: Issue correct protection operation
Martin K. Petersen [Fri, 19 Sep 2008 22:47:19 +0000 (18:47 -0400)]
[SCSI] sd: Issue correct protection operation

Use the same logic to prepare RD/WRPROTECT and the protection
operation.  Fixes a corner case where we could issue an unprotected
CDB and yet tell the HBA to do DIF to the drive.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] scsi_error: fix target reset handling
James Bottomley [Fri, 12 Sep 2008 21:46:51 +0000 (16:46 -0500)]
[SCSI] scsi_error: fix target reset handling

There's a target reset bug.

This loop:

for (id = 0; id <= shost->max_id; id++) {

Never terminates if shost->max_id is set to ~0, like aic94xx does.

It's also pretty inefficient since you mostly have compact target
numbers, but the max_id can be very high.  The best way would be to
sort the recovery list by target id and skip them if they're equal,
but even a worst case O(N^2) traversal is probably OK here, so fix it
by finding the next highest target number (assuming n+1) and
terminating when there isn't one.

Cc: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 v2 : Add statistical reporting control and additional fc vendor...
James Smart [Sun, 7 Sep 2008 15:52:10 +0000 (11:52 -0400)]
[SCSI] lpfc 8.2.8 v2 : Add statistical reporting control and additional fc vendor events

Added support for new sysfs attributes: lpfc_stat_data_ctrl and
lpfc_max_scsicmpl_time. The attributes control statistical reporting
of io load.

Added support for new fc vendor events for error reporting.

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 v2 : Add sysfs control of target queue depth handling
James Smart [Sun, 7 Sep 2008 15:52:04 +0000 (11:52 -0400)]
[SCSI] lpfc 8.2.8 v2 : Add sysfs control of target queue depth handling

Added new sysfs attribute lpfc_max_scsicmpl_time. Attribute, when enabled,
will control target queue depth based on I/O completion time.

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 v2 : Revert target busy in favor of transport disrupted
James Smart [Sun, 7 Sep 2008 15:51:56 +0000 (11:51 -0400)]
[SCSI] lpfc 8.2.8 v2 : Revert target busy in favor of transport disrupted

Revert the target busy response in favor of the transport disrupted
response for node state transitions.

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] scsi_dh_alua: remove REQ_NOMERGE
Mike Christie [Sat, 6 Sep 2008 13:39:16 +0000 (08:39 -0500)]
[SCSI] scsi_dh_alua: remove REQ_NOMERGE

We do not need to set REQ_NOMERGE because when the module calls
blk_execute_rq -> blk_execute_rq_nowait, blk_execute_rq_nowait sets
it for us. This brings all the modules in sync for those bits.

Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : update driver version to 8.2.8
James Smart [Mon, 25 Aug 2008 01:50:45 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : update driver version to 8.2.8

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Add MSI-X support
James Smart [Mon, 25 Aug 2008 01:50:30 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : Add MSI-X support

Add support for MSI-X Multi-Message interrupts. We use different vectors
for fast-path interrupts (i/o) and slow-patch interrupts (discovery, etc).

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Update driver to use new Host byte error code DID_TRANSPORT_DISRUPTED
James Smart [Mon, 25 Aug 2008 01:50:18 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : Update driver to use new Host byte error code DID_TRANSPORT_DISRUPTED

[jejb: drop rejecting hunk altered by target busy patches]
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Add support for PCI-EEH permanent disabling
James Smart [Mon, 25 Aug 2008 01:50:11 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : Add support for PCI-EEH permanent disabling

Add support for PCI-EEH permanent-disabling a device via lpfc_pci_remove_one()

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Add new FCOE hardware support
James Smart [Mon, 25 Aug 2008 01:50:06 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : Add new FCOE hardware support

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Miscellaneous Bug Fixes
James Smart [Mon, 25 Aug 2008 01:50:00 +0000 (21:50 -0400)]
[SCSI] lpfc 8.2.8 : Miscellaneous Bug Fixes

Miscellaneous Fixes:
- Fix the wrong variable name used for checking node active usage status
- Fix numerous duplicate log message numbers
- Fix change KERN_WARNING messages to KERN_INFO.
- Stop sending erroneous LOGO to fabric after vport is already terminated
- Fix HBQ allocates that were kalloc'ing w/ GFP_KERNEL while holding a lock.
- Fix gcc 4.3.2 compiler warnings and a sparse warning
- Fix bugs in handling unsolicited ct event queue
- Reorder some of the initial link up checks, to remove odd VPI states.
- Correct poor VPI handling
- Add debug messages
- Expand Update_CFG mailbox definition
- Fix handling of VPD data offsets
- Reorder loopback flags
- convert to use offsetof()

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Update driver for new SLI-3 features
James Smart [Mon, 25 Aug 2008 01:49:55 +0000 (21:49 -0400)]
[SCSI] lpfc 8.2.8 : Update driver for new SLI-3 features

Update driver for new SLI-3 features:
- interrupt enhancements
- lose adapter doorbell writes
- inlining support for FCP_Ixx cmds

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
17 years ago[SCSI] lpfc 8.2.8 : Miscellaneous Discovery Fixes
James Smart [Mon, 25 Aug 2008 01:49:45 +0000 (21:49 -0400)]
[SCSI] lpfc 8.2.8 : Miscellaneous Discovery Fixes

Miscellaneous Discovery fixes:
- Fix rejection followed by acceptance in handling RPL and RPS
  unsolicited events
- Fix for vport delete crash
- Fix PLOGI vs ADISC race condition

Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>