android_kernel_samsung_msm8976/drivers
James.Smart@Emulex.Com 875fbdfe9b [SCSI] lpfc 8.1.1 : Add polled-mode support
- Add functionality to run in polled mode only. Includes run time
  attribute to enable mode.
- Enable runtime writable hba settings for coallescing and delay parameters

Customers have requested a mode in the driver to run strictly polled.
This is generally to support an environment where the server is extremely
loaded and is looking to reclaim some cpu cycles from adapter interrupt
handling.

This patch adds a new "poll" attribute, and the following behavior:

if value is 0 (default):
  The driver uses the normal method for i/o completion. It uses the
  firmware feature of interrupt coalesing. The firmware allows a
  minimum number of i/o completions before an interrupt, or a maximum
  time delay between interrupts.  By default, the driver sets these
  to no delay (disabled) or 1 i/o - meaning coalescing is disabled.

  Attributes were provided to change the coalescing values, but it was
  a module-load time only and global across all adapters.
  This patch allows them to be writable on a per-adapter basis.

if value is 1 :
  Interrupts are left enabled, expecting that the user has tuned the
  interrupt coalescing values. When this setting is enabled, the driver
  will attempt to service completed i/o whenever new i/o is submitted
  to the adapter. If the coalescing values are large, and the i/o
  generation rate steady, an interrupt will be avoided by servicing
  completed i/o prior to the coalescing thresholds kicking in. However,
  if the i/o completion load is high enough or i/o generation slow, the
  coalescion values will ensure that completed i/o is serviced in a timely
  fashion.

if value is 3 :
  Turns off FCP i/o interrupts altogether. The coalescing values now have
  no effect. A new attribute "poll_tmo" (default 10ms) exists to set
  the polling interval for i/o completion. When this setting is enabled,
  the driver will attempt to service completed i/o and restart the
  interval timer whenever new i/o is submitted. This behavior allows for
  servicing of completed i/o sooner than the interval timer, but ensures
  that if no i/o is being issued, then the interval timer will kick in
  to service the outstanding i/o.

Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
2005-12-13 18:34:14 -07:00
..
acorn
acpi [PATCH] ACPI: fix sleeping whilst atomic warnings on resume 2005-12-12 08:57:45 -08:00
atm [ATM]: [adummy] dummy ATM driver (similar to net/dummy) 2005-11-29 16:17:11 -08:00
base [PATCH] Small fixes to driver core 2005-11-23 23:03:06 -08:00
block [PATCH] cciss: fix for deregister_disk 2005-12-12 22:31:16 -08:00
bluetooth [Bluetooth]: Add endian annotations to the core 2005-11-08 09:57:21 -08:00
cdrom
char [drm] fix radeon aperture issue 2005-12-12 21:02:22 -08:00
connector [PATCH] Add timestamp field to process events 2005-12-12 08:57:42 -08:00
cpufreq [PATCH] clean up lock_cpu_hotplug() in cpufreq 2005-11-28 14:42:23 -08:00
crypto
dio
eisa
fc4
firmware [PATCH] dell_rbu driver depends on x86[64] 2005-11-22 09:13:44 -08:00
hwmon [PATCH] hwmon: w83792d fix unused fan pins 2005-11-29 21:39:22 -08:00
i2c [PATCH] Fix IXP4xx I2C driver build breakage 2005-11-17 11:23:48 -08:00
ide [PATCH] ide: add missing __init tags to device drivers 2005-11-19 22:24:35 +01:00
ieee1394 sbp2_command_orb_lock must be held when accessing the _orb_inuse list. 2005-11-18 16:41:39 -05:00
infiniband IB/uverbs: track multicast group membership for userspace QPs 2005-11-29 16:57:01 -08:00
input Input: make serio and gameport more swsusp friendly 2005-11-20 00:56:43 -05:00
isdn [PARISC] Mark hisax and pcbit ISDN drivers as not for parisc 2005-11-18 16:20:10 -05:00
macintosh [PATCH] Fix windfarm model-id table 2005-12-09 15:42:17 +11:00
mca
md [PATCH] md: use correct size of raid5 stripe cache when measuring how full it is 2005-12-12 09:06:04 -08:00
media [PATCH] V4L/DVB: (3151) I2C ID renamed to I2C_DRIVERID_INFRARED 2005-12-12 08:57:45 -08:00
message Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6 2005-12-02 14:32:44 -08:00
mfd [PATCH] input: fix ucb1x00-ts breakage after conversion to dynamic input_dev allocation 2005-12-12 08:57:45 -08:00
misc Merge master.kernel.org:/home/rmk/linux-2.6-drvmodel 2005-11-11 09:24:26 -08:00
mmc [MMC] Proper check of SCR error code 2005-12-05 10:00:50 +00:00
mtd [PATCH] blkmtd: use clear_page_dirty() 2005-12-12 08:57:41 -08:00
net [PATCH] skge: get rid of warning on race 2005-12-12 23:33:03 -05:00
nubus
oprofile
parisc [PARISC] Make superio.c initialize before any driver needs it 2005-11-17 16:44:57 -05:00
parport
pci [PATCH] PCI: kernel-doc fix for pci-acpi.c 2005-11-23 23:04:27 -08:00
pcmcia [PATCH] m32r: M3A-2170(Mappi-III) IDE support 2005-11-28 14:42:24 -08:00
pnp
rapidio
s390 [SCSI] zfcp: fix return code of zfcp_scsi_slave_alloc 2005-12-01 15:59:49 -06:00
sbus [SPARC]: drivers/sbus/char/aurora.c: "extern inline" -> "static inline" 2005-11-22 15:30:29 -08:00
scsi [SCSI] lpfc 8.1.1 : Add polled-mode support 2005-12-13 18:34:14 -07:00
serial [SERIAL] 8250_pci: Remove redundant assignment, and mark fallthrough. 2005-12-07 18:11:26 +00:00
sh
sn
tc [MIPS] zs.c: Resurrect the deceased zs.c for now. 2005-11-17 16:23:39 +00:00
telephony [PATCH] changing CONFIG_LOCALVERSION rebuilds too much, for no good reason 2005-11-09 07:55:57 -08:00
usb [PATCH] USB: ehci fixups 2005-11-29 21:39:23 -08:00
video [PATCH] fbdev: Fix incorrect unaligned access in little-endian machines 2005-12-12 22:31:17 -08:00
w1
zorro
Kconfig
Makefile Link USB drivers later in the kernel 2005-12-03 20:50:51 -08:00