openwrt/staging/blogic.git
17 years agoV4L/DVB (6499): tda10021: Bit error counting fixed
Hartmut Birr [Wed, 31 Oct 2007 04:50:47 +0000 (01:50 -0300)]
V4L/DVB (6499): tda10021: Bit error counting fixed

Bit error counting fixed for the tda10021.

Signed-off-by: Hartmut Birr <e9hack@googlemail.com>
Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6498): ves1820: Change the acquisition range for clock recovery from 120...
Oliver Endriss [Wed, 31 Oct 2007 04:34:25 +0000 (01:34 -0300)]
V4L/DVB (6498): ves1820: Change the acquisition range for clock recovery from 120 ppm to 240ppm

Change the acquisition range for clock recovery from 120 ppm to
240ppm. Apparently, some cable providers in Germany are playing with
their parameters, and the capture range of the ves1820 is too small
to acquire a lock with the current setting... ;-(

Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6495): saa7146: saa7146_wait_for_debi_done fixes
Oliver Endriss [Wed, 31 Oct 2007 03:39:48 +0000 (00:39 -0300)]
V4L/DVB (6495): saa7146: saa7146_wait_for_debi_done fixes

Two fixes for the 'saa7146_wait_for_debi_done' code:
(a) Timeout did not work when the routine was called with
    interrupts disabled.
(b) Reduce PCI I/O load caused by saa7146_wait_for_debi_done.
    Seems to be very important on fast machines!

Based on code posted by Hartmut Birr @vdr-portal.

Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6479): use input functions, should depend on INPUT
Randy Dunlap [Mon, 29 Oct 2007 18:19:55 +0000 (15:19 -0300)]
V4L/DVB (6479): use input functions, should depend on INPUT

All of these drivers select VIDEO_IR, which uses the input subsystem,
so they should also depend on INPUT.

Problem examples:

drivers/built-in.o: In function `ir_input_key_event':
ir-functions.c:(.text+0x10849a): undefined reference to `input_event'
ir-functions.c:(.text+0x1084ac): undefined reference to `input_event'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11cc0a): undefined reference to `get_key_pinnacle_color'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11cc4f): undefined reference to `get_key_pinnacle_grey'
drivers/built-in.o: In function `saa7134_input_fini':
(.text+0x11cd8b): undefined reference to `input_unregister_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d1fa): undefined reference to `input_allocate_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d317): undefined reference to `input_register_device'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11d6ca): undefined reference to `input_free_device'

drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c3f3): undefined reference to `ir_codes_hauppauge_new'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c450): undefined reference to `ir_codes_pinnacle_color'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c480): undefined reference to `ir_codes_purpletv'
drivers/built-in.o: In function `saa7134_set_i2c_ir':
(.text+0x11c495): undefined reference to `ir_codes_pinnacle_grey'
drivers/built-in.o: In function `saa7134_ir_start':
(.text+0x11c622): undefined reference to `ir_rc5_timer_end'
drivers/built-in.o: In function `saa7134_ir_start':
(.text+0x11c637): undefined reference to `ir_rc5_timer_keyup'
drivers/built-in.o: In function `build_key':
saa7134-input.c:(.text+0x11c769): undefined reference to `ir_extract_bits'
saa7134-input.c:(.text+0x11c7ad): undefined reference to `ir_input_keydown'
saa7134-input.c:(.text+0x11c7f0): undefined reference to `ir_input_keydown'
saa7134-input.c:(.text+0x11c7f9): undefined reference to `ir_input_nokey'
saa7134-input.c:(.text+0x11c806): undefined reference to `ir_input_nokey'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ca07): undefined reference to `ir_codes_encore_enltv'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11caf6): undefined reference to `ir_input_init'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cbf2): undefined reference to `ir_codes_avermedia'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc24): undefined reference to `ir_codes_pctv_sedna'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc53): undefined reference to `ir_codes_flydvb'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cc85): undefined reference to `ir_codes_videomate_tv_pvr'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ccb7): undefined reference to `ir_codes_pixelview'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cce9): undefined reference to `ir_codes_eztv'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cd1b): undefined reference to `ir_codes_manli'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cda8): undefined reference to `ir_codes_cinergy'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cdd7): undefined reference to `ir_codes_flyvideo'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ce06): undefined reference to `ir_codes_asus_pc39'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11ce7d): undefined reference to `ir_codes_gotview7135'
drivers/built-in.o: In function `saa7134_input_init1':
(.text+0x11cee1): undefined reference to `ir_codes_proteus_2309'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6478): ir-functions use input functions, should depend on INPUT
Randy Dunlap [Mon, 29 Oct 2007 18:19:50 +0000 (15:19 -0300)]
V4L/DVB (6478): ir-functions use input functions, should depend on INPUT

Media ir-functions uses input_(*) functions so it should depend
on the INPUT config symbol.

drivers/built-in.o: In function `ir_input_key_event':
ir-functions.c:(.text+0x10849a): undefined reference to `input_event'
ir-functions.c:(.text+0x1084ac): undefined reference to `input_event'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6432): tuner: fix CONFIG_TUNER_TEA5761=m
Adrian Bunk [Wed, 24 Oct 2007 12:06:47 +0000 (09:06 -0300)]
V4L/DVB (6432): tuner: fix CONFIG_TUNER_TEA5761=m

This patch fixes CONFIG_TUNER_TEA5761=m broken by
commit ca805d57cf5ea7482ed3da28653f30621249ee45.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6407): planb: fix obvious interrupt handling bugs
Jeff Garzik [Fri, 26 Oct 2007 12:00:37 +0000 (09:00 -0300)]
V4L/DVB (6407): planb: fix obvious interrupt handling bugs

irq handlers have returned a return value for years now... catch up with
the times.

Also, ditch unneeded prototype.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6406): saa7134: fix analog audio in on medion md8800 quadro
hermann pitton [Fri, 26 Oct 2007 00:26:53 +0000 (21:26 -0300)]
V4L/DVB (6406): saa7134: fix analog audio in on medion md8800 quadro

saa7134: fix analog audio in on medion md8800 quadro, aka CTX944

Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6403): mt2131: replace comma with semicolon fix
Steven Toth [Thu, 25 Oct 2007 02:12:58 +0000 (23:12 -0300)]
V4L/DVB (6403): mt2131: replace comma with semicolon fix

Semicolon fix.

Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6402): s5h1409: Fix broken QAM support
Steven Toth [Thu, 25 Oct 2007 00:05:51 +0000 (21:05 -0300)]
V4L/DVB (6402): s5h1409: Fix broken QAM support

This patch enables QAM Annex-B support (US digital cable)
for the s5h1409 VSB/QAM demodulator.

Tested successfully with the mt2131 tuner,
present on the following supported boards:

Hauppauge WinTV-HVR-1250
Hauppauge WinTV-HVR-1800
Hauppauge WinTV-HVR-1800lp

This patch is also known to work with an upcoming XC5000 tuner driver.

Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6395): cafe_ccic: Add a pointer to the data sheet
Jonathan Corbet [Tue, 23 Oct 2007 20:31:36 +0000 (17:31 -0300)]
V4L/DVB (6395): cafe_ccic: Add a pointer to the data sheet

Add a pointer to the (recently posted) Cafe data sheet.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6394): Fix a cafe_ccic resume bug
Jonathan Corbet [Tue, 23 Oct 2007 20:30:27 +0000 (17:30 -0300)]
V4L/DVB (6394): Fix a cafe_ccic resume bug

If the system is suspended while the camera is streaming, it will not
continue streaming on resume.  Save the state properly so that resume
works.

Signed-off-by: Jonathan Corbet <corbet@lwn.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6392): bttv: Update initial image size when set via V4L1 VIDIOCMCAPTURE
Trent Piepho [Mon, 22 Oct 2007 20:44:55 +0000 (17:44 -0300)]
V4L/DVB (6392): bttv: Update initial image size when set via V4L1 VIDIOCMCAPTURE

The V4L1 spec says that the image size should be with with VIDIOCSWIN before
requesting buffers with VIDIOCGMBUF and capturing into them with
VIDIOCMCAPTURE.

But it seems that many apps don't do this.  They set the size using the fields
in the VIDIOCMCAPTURE ioctl.  The driver doesn't know what size to capture
until it actually starts to capture.  In particular, it doesn't know what size
to capture until it has already mmap the captured buffers.  Which is quite
stupid.  Why V4L1 has size and format fields for VIDIOCMCAPTURE I have no idea.

Many drivers don't support this, including those using v4l1-compat.

The bttv does, which is probably the only reason such broken software is so
prevalent.

But, the driver doesn't adjust its idea of what size is being captured when it
is set this way.  If you try to query the driver's current setting with
v4l2-ctl, it won't be correct.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6391): bttv: SPICT ioctl doesn't work with vlc
Trent Piepho [Mon, 22 Oct 2007 20:44:54 +0000 (17:44 -0300)]
V4L/DVB (6391): bttv: SPICT ioctl doesn't work with vlc

The bttv driver instists that the depth specified in the call to VIDIOCSPICT
match the pixel format specified in the same call.

vlc doesn't set the depth field, which makes the SPICT ioctl always fail.

The V4L1 standard is not clear on how most operation are supposed to work, and
this is no exception.  The depth field would appear to be entirely redundant,
as the pixel format specifies a specific depth.  It could be that this field
was only meant for output from the *G*PICT ioctl and should be ignored in
*S*PICT.  This is in fact what the v4l1-compat wrapper does.

Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (6390): Updates missing entries at CARDLIST.em28xx
Mauro Carvalho Chehab [Fri, 26 Oct 2007 03:11:17 +0000 (00:11 -0300)]
V4L/DVB (6390): Updates missing entries at CARDLIST.em28xx

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394...
Linus Torvalds [Sun, 4 Nov 2007 21:14:15 +0000 (13:14 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ieee1394/linux1394-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
  ieee1394: iso and async streams: s/g list fix

17 years agortc: ignore msb when reading back mday from alarm
Mark Lord [Sun, 4 Nov 2007 02:04:03 +0000 (22:04 -0400)]
rtc: ignore msb when reading back mday from alarm

I have a system here that actively relies upon RTC wake alarms, and it
has been failing (again) for a few days when attempting to use the
/sys/class/rtc/rtc?/wakealarm interface.

The old (fixed by Linus) /proc/ interface still works, but I'd like to
get it using the new one.

This patch fixes rtc-cmos to ignore the two upper bits when reading the
BCD mday (day of month) register from CMOS.  Some systems (eg.  mine)
seem to have the top bit set to "1" for some reason.

The older /proc/ interface ignores the upper bits, and so we should too.

Signed-off-by: Mark Lord <mlord@pobox.com>
Acked-by: David Brownell <david-b@pacbell.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoieee1394: iso and async streams: s/g list fix
Jens Axboe [Sun, 4 Nov 2007 08:44:56 +0000 (09:44 +0100)]
ieee1394: iso and async streams: s/g list fix

Torsten Kaiser wrote:
> Looking that calltrace upwards, it seems replacing the
> memset(dma->sglist,...) with sg_init_table(...) would fix the BUG_ON()
> as that inits the SG_MAGIC.

Tested-by: Torsten Kaiser <just.for.lkml@googlemail.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
17 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Sat, 3 Nov 2007 19:43:36 +0000 (12:43 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
  [BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them
  dm: bounce_pfn limit added
  Deadline iosched: Fix batching fairness
  Deadline iosched: Reset batch for ordered requests
  Deadline iosched: Factor out finding latter reques

17 years agoMerge branch 'sg' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Sat, 3 Nov 2007 19:43:21 +0000 (12:43 -0700)]
Merge branch 'sg' of git://git.kernel.dk/linux-2.6-block

* 'sg' of git://git.kernel.dk/linux-2.6-block:
  [SG] Get rid of __sg_mark_end()
  cleanup asm/scatterlist.h includes
  SG: Make sg_init_one() use general table init functions

17 years agoMerge branch 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Sat, 3 Nov 2007 19:42:52 +0000 (12:42 -0700)]
Merge branch 'v2.6.24-rc1-lockdep' of git://git./linux/kernel/git/peterz/linux-2.6-lockdep

* 'v2.6.24-rc1-lockdep' of git://git.kernel.org/pub/scm/linux/kernel/git/peterz/linux-2.6-lockdep:
  lockdep: fix a typo in the __lock_acquire comment
  sched: fix unconditional irq lock
  lockdep: fixup irq tracing

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6
Linus Torvalds [Sat, 3 Nov 2007 19:41:58 +0000 (12:41 -0700)]
Merge /pub/scm/linux/kernel/git/lethal/sh64-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh64-2.6:
  sh64: Update defconfigs.
  sh64: fix dma_cache_sync() compilation
  sh64: Move DMA macros from pci.h to scatterlist.h.

17 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6
Linus Torvalds [Sat, 3 Nov 2007 19:41:42 +0000 (12:41 -0700)]
Merge /pub/scm/linux/kernel/git/lethal/sh-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6: (24 commits)
  sh: Update r7785rp defconfig.
  sh: mach-type updates.
  sh: Fix up r7780rp highlander CF access size.
  sh: Terminate .eh_frame in VDSO with a 4-byte 0.
  sh: Correct SUBARCH matching.
  sh: Decouple 4k and soft/hardirq stacks.
  sh: Fix optimized __copy_user() movca.l usage.
  sh: Clean up SR.RB Kconfig mess.
  sh: Kill off dead ipr_irq_demux().
  sh: Make SH7750 oprofile compile again.
  sh: Provide a __read_mostly section wrapper.
  sh: linker script tidying.
  sh: Move zero page param defs somewhere sensible.
  sh: Use generic SMP_CACHE_BYTES/L1_CACHE_ALIGN.
  sh: Kill off legacy embedded ramdisk section.
  sh: Fix up early mem cmdline parsing.
  sh: Enable USBF on MS7722SE.
  sh: Add resource of USBF for SH7722.
  maple: Fix maple bus compiler warning
  sh: fix zImage build with >=binutils-2.18
  ...

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Sat, 3 Nov 2007 19:27:56 +0000 (12:27 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev: (23 commits)
  libata: don't configure downstream links faster than the upstream link
  libata: request PHY speed configuration on SControl access failure
  libata: consider errors not associated with commands for speed down
  libata: more robust reset failure handling
  libata: cosmetic clean up / reorganization of ata_eh_reset()
  libata: fix timing computation in ata_eh_reset()
  libata: increase 128 KB / cmd limit for ATAPI tape drives
  sata_promise: fix endianess bug in ASIC PRD bug workaround
  libata: fix docbook
  make ata_scsi_lpm_get() static
  libata: suppress two warnings
  ata/sata_fsl: Remove ata_scsi_suspend/resume callbacks
  ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()
  ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef
  ata/sata_fsl: cleanup style problem
  ata/sata_fsl: remove unneeded sata_fsl_hardreset()
  ata/sata_fsl: remove unneeded on-stack copy of FIS
  ata/sata_fsl: cleanup needless casts to/from void __iomem *
  ata/sata_fsl: Remove unnecessary SCR cases
  ata/sata_fsl: Kill ata_sg_is_last()
  ...

17 years agoNTFS: Fix read regression.
Anton Altaparmakov [Sat, 3 Nov 2007 07:38:59 +0000 (07:38 +0000)]
NTFS: Fix read regression.

The regression was caused by:
        commit[a32ea1e1f925399e0d81ca3f7394a44a6dafa12c] Fix read/truncate race

This causes ntfs_readpage() to be called for a zero i_size inode, which
failed when the file was compressed and non-resident.

Thanks a lot to Mike Galbraith for reporting the issue and tracking down
the commit that caused the regression.

Looking into it I found three bugs which the patch fixes.

Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Tested-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agolibata: don't configure downstream links faster than the upstream link
Tejun Heo [Wed, 31 Oct 2007 01:17:07 +0000 (10:17 +0900)]
libata: don't configure downstream links faster than the upstream link

There's nothing to be gained by configuring downstream links faster
than the upstream link and such configurations cause problems on
certain PMPs.  Limit downstream link speed by the upstream link speed.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: request PHY speed configuration on SControl access failure
Tejun Heo [Wed, 31 Oct 2007 01:17:06 +0000 (10:17 +0900)]
libata: request PHY speed configuration on SControl access failure

In sata_set_spd_needed(), if SControl read failed, it returned 0 and
skipped PHY speed configuration.  However, if SControl access fails,
it's far more logical to request PHY speed configuration.  Reverse the
logic.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: consider errors not associated with commands for speed down
Tejun Heo [Wed, 31 Oct 2007 01:17:05 +0000 (10:17 +0900)]
libata: consider errors not associated with commands for speed down

libata EH used to ignore errors not associated with commands when
determining whether speed down is necessary or not.  This leads to the
following problems.

* Errors not associated with commands can occur indefinitely without
  libata EH taking corrective actions.

* Upstream link errors don't trigger speed down when PMP is attached
  to it and commands issued to downstream device trigger errors on the
  upstream link.

This patch makes ata_eh_link_autopsy() consider errors not associated
with command for speed down.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: more robust reset failure handling
Tejun Heo [Wed, 31 Oct 2007 01:17:04 +0000 (10:17 +0900)]
libata: more robust reset failure handling

Reset failure is a critical error.  It results in disabling the link
requiring user intervention to re-enable it.  Make reset failure
handling more robust such that libata EH doesn't give up too early.

* Temporary glitches during hardreset may lead to classification
  failure when there's no softreset available.  Retry instead of
  giving up.

* Initial softreset or follow up softreset may fail classification.
  Move classification error handling block out of followup softreset
  block such that both cases are handled and retry instead of giving
  up.  Also, on the last try, give ATA class a blind shot.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: cosmetic clean up / reorganization of ata_eh_reset()
Tejun Heo [Wed, 31 Oct 2007 01:17:03 +0000 (10:17 +0900)]
libata: cosmetic clean up / reorganization of ata_eh_reset()

Clean up and reorganize ata_eh_reset() to ease further changes.

* Cache ARRAY_SIZE(ata_eh_reset_timeouts) in @max_tries.
* Cache link->flags in @lflags.
* Move failure handling block to the end of the function and unnest
  both success and failure handling blocks.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: fix timing computation in ata_eh_reset()
Tejun Heo [Wed, 31 Oct 2007 01:17:02 +0000 (10:17 +0900)]
libata: fix timing computation in ata_eh_reset()

As jiffies changes asynchronously, it needs to be cached if unchanging
timestamp is needed.  The code in ata_eh_reset() intended to do that
with @now but never actually did it.  Fix it.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: increase 128 KB / cmd limit for ATAPI tape drives
Tony Battersby [Tue, 30 Oct 2007 15:44:35 +0000 (11:44 -0400)]
libata: increase 128 KB / cmd limit for ATAPI tape drives

Commands sent to ATAPI tape drives via the SCSI generic (sg) driver are
limited in the amount of data that they can transfer by the max_sectors
value.  The max_sectors value is currently calculated according to the
command set for disk drives, which doesn't apply to tape drives.  The
default max_sectors value of 256 limits ATAPI tape drive commands to
128 KB.  This patch against 2.6.24-rc1 increases the max_sectors value
for tape drives to 65535, which permits tape drive commands to transfer
just under 32 MB.

Tested with a SuperMicro PDSME motherboard, AHCI, and a Sony SDX-570V
SATA tape drive.

Note that some of the chipset drivers also set their own max_sectors
value, which may override the value set in libata-core.  I don't have
any of these chipsets to test, so I didn't go messing with them.  Also,
ATAPI devices other than tape drives may benefit from similar changes,
but I have only tape drives and disk drives to test.

Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agosata_promise: fix endianess bug in ASIC PRD bug workaround
Mikael Pettersson [Wed, 31 Oct 2007 12:21:29 +0000 (13:21 +0100)]
sata_promise: fix endianess bug in ASIC PRD bug workaround

The original workaround for the Promise ASIC PRD bug
contained an endianess bug which I failed to detect:
the adjustment of the last PRD entry's length field
applied host arithmetic to little-endian data, which
is incorrect on big-endian machines.

We have the length available in host-endian format, so
do the adjustment on host-endian data and then convert
and store it in the PRD entry's little-endian data field.

Thanks to an anonymous reviewer for detecting this bug.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: fix docbook
Stephen Hemminger [Wed, 31 Oct 2007 17:00:27 +0000 (10:00 -0700)]
libata: fix docbook

Fix docbook format in the comments.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agomake ata_scsi_lpm_get() static
Adrian Bunk [Tue, 30 Oct 2007 23:50:23 +0000 (00:50 +0100)]
make ata_scsi_lpm_get() static

ata_scsi_lpm_get() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agolibata: suppress two warnings
Stephen Rothwell [Wed, 31 Oct 2007 03:53:32 +0000 (14:53 +1100)]
libata: suppress two warnings

drivers/ata/libata-core.c:768: warning: 'ata_lpm_enable' defined but not used
drivers/ata/libata-core.c:784: warning: 'ata_lpm_disable' defined but not used

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Remove ata_scsi_suspend/resume callbacks
ashish kalra [Wed, 31 Oct 2007 11:28:04 +0000 (19:28 +0800)]
ata/sata_fsl: Remove ata_scsi_suspend/resume callbacks

Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()
ashish kalra [Wed, 31 Oct 2007 11:28:03 +0000 (19:28 +0800)]
ata/sata_fsl: Remove sending LOG EXT command in sata_fsl_softreset()

Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef
ashish kalra [Wed, 31 Oct 2007 11:28:02 +0000 (19:28 +0800)]
ata/sata_fsl: Move MPC8315DS link speed limit workaround to specific ifdef

Signed-off-by: ashish kalra <ashish.kalra@freescale.com>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: cleanup style problem
Li Yang [Wed, 31 Oct 2007 11:28:01 +0000 (19:28 +0800)]
ata/sata_fsl: cleanup style problem

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: remove unneeded sata_fsl_hardreset()
Jeff Garzik [Wed, 31 Oct 2007 11:28:00 +0000 (19:28 +0800)]
ata/sata_fsl: remove unneeded sata_fsl_hardreset()

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: remove unneeded on-stack copy of FIS
Jeff Garzik [Wed, 31 Oct 2007 11:27:59 +0000 (19:27 +0800)]
ata/sata_fsl: remove unneeded on-stack copy of FIS

Remove unneeded on-stack copy of FIS
in sata_fsl_cache_taskfile_from_d2h_fis().

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: cleanup needless casts to/from void __iomem *
Jeff Garzik [Wed, 31 Oct 2007 11:27:58 +0000 (19:27 +0800)]
ata/sata_fsl: cleanup needless casts to/from void __iomem *

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Remove unnecessary SCR cases
Jeff Garzik [Wed, 31 Oct 2007 11:27:57 +0000 (19:27 +0800)]
ata/sata_fsl: Remove unnecessary SCR cases

SCRs in the driver map to the standard values found in include/linux/ata.h,
so no need for individual scr_read/scr_write case statements duplicating
the natural value.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Kill ata_sg_is_last()
Li Yang [Wed, 31 Oct 2007 11:27:56 +0000 (19:27 +0800)]
ata/sata_fsl: Kill ata_sg_is_last()

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: save irq in private data for irq unmapping
Li Yang [Wed, 31 Oct 2007 11:27:55 +0000 (19:27 +0800)]
ata/sata_fsl: save irq in private data for irq unmapping

Powerpc uses virtual irq which has to be unmapped.

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Remove deprecated hooks
Li Yang [Wed, 31 Oct 2007 11:27:54 +0000 (19:27 +0800)]
ata/sata_fsl: Remove deprecated hooks

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoata/sata_fsl: Update for ata_link introduction
Li Yang [Wed, 31 Oct 2007 11:27:53 +0000 (19:27 +0800)]
ata/sata_fsl: Update for ata_link introduction

Update the driver to use the newly added ata_link structure.

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
17 years agoUse i8253.c lock for PC speaker on MIPS, too.
Ralf Baechle [Fri, 2 Nov 2007 17:26:06 +0000 (17:26 +0000)]
Use i8253.c lock for PC speaker on MIPS, too.

The Jazz machines have to use the PIT timer for dyntick and highresolution
kernels.  This may break because currently just like i386 used to do MIPS
uses two separate spinlocks in the actual PIT code and the PC speaker
code.  So switch to do it the same that x86 currently does PIT locking.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Sat, 3 Nov 2007 02:37:41 +0000 (19:37 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: linux-input mailing list moved to vger.kernel.org
  Input: inport, logibm - use KERN_INFO when reporting missing mouse
  Input: appletouch - idle reset logic broke older Fountains
  Input: hp_sdc.c - fix section mismatch
  Input: appletouch - add Johannes Berg as maintainer
  Input: Add Euro and Dollar key codes
  Input: xpad - add more USB IDs

17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Sat, 3 Nov 2007 02:37:26 +0000 (19:37 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (25 commits)
  [MIPS] Jazz: disable PIT; cleanup R4030 clockevent
  [MIPS] Bigsur supports highmem.
  [MIPS] mtx-1: Enable -Werror.
  [MIPS] mtx-1: Remove unused mtx1_sys_btn.
  [MIPS] Pb1200: Enable -Werror.
  [MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.
  [MIPS] SNI: register a02r clockevent; don't use PIT timer
  [MIPS] i8253.h: Remove all i8259 related definitions.
  [MIPS] i8253: Cleanup.
  [MIPS] Cobalt: Fix IRQ comment; the Cobalt kernel uses CP0 counter now.
  [MIPS] Pb1200: Fix warning.
  [MIPS] Pb1200: Fix warning.
  [MIPS] IP27: Fix build error.
  [MIPS] Excite: Fix build error.
  [MIPS] Sibyte: Split and move clock code.
  [MIPS] Sibyte: Fixes for oneshot timer mode.
  [MIPS] Sibyte: Remove blank line.
  [MIPS] Swarm: Fix build failure
  [MIPS] time: Code cleanups
  [MIPS] time: Remove now unused local_timer_interrupt.
  ...

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Sat, 3 Nov 2007 02:36:26 +0000 (19:36 -0700)]
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's
  [WATCHDOG] iTCO_wdt.c init & exit fixes
  [WATCHDOG] iTCO_wdt.c pci_device_id table clean-up
  [WATCHDOG] spin_lock_init() fixes
  [WATCHDOG] Unlock in iTCO_wdt_start when reboot is disabled
  [WATCHDOG] Add necessary braces to if (...) \n #if... cases
  [WATCHDOG] trivial fix two returns in void functions

17 years ago[WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's
Wim Van Sebroeck [Fri, 31 Aug 2007 08:23:10 +0000 (08:23 +0000)]
[WATCHDOG] iTCO_wdt.c ICH8 pci-device-id's

Add the pci-device-id's for the ICH8M and the ICH8M-E chipsets.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
17 years ago[WATCHDOG] iTCO_wdt.c init & exit fixes
Wim Van Sebroeck [Fri, 31 Aug 2007 08:15:34 +0000 (08:15 +0000)]
[WATCHDOG] iTCO_wdt.c init & exit fixes

Mark init and exit procedures as __devinit & _-devexit.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
17 years ago[WATCHDOG] iTCO_wdt.c pci_device_id table clean-up
Wim Van Sebroeck [Sun, 19 Aug 2007 20:17:58 +0000 (20:17 +0000)]
[WATCHDOG] iTCO_wdt.c pci_device_id table clean-up

Make the pci_device_id table more readable.

Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
17 years ago[WATCHDOG] spin_lock_init() fixes
Alexey Dobriyan [Thu, 1 Nov 2007 23:27:08 +0000 (16:27 -0700)]
[WATCHDOG] spin_lock_init() fixes

Some watchdog drivers initialize global spinlocks in module's init function
which is tolerable, but some do it in PCI probe function.  So, switch to
static initialization to fix theoretical bugs and, more importantly, stop
giving people bad examples.

Signed-off-by: Alexey Dobriyan <adobriyan@sw.ru>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
17 years ago[MIPS] Jazz: disable PIT; cleanup R4030 clockevent
Thomas Bogendoerfer [Fri, 2 Nov 2007 10:17:13 +0000 (11:17 +0100)]
[MIPS] Jazz: disable PIT; cleanup R4030 clockevent

Fix ISA irq acknowledge.
Make r4030 clockevent code look like other mips clockevent code.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Bigsur supports highmem.
Ralf Baechle [Thu, 1 Nov 2007 21:55:39 +0000 (21:55 +0000)]
[MIPS] Bigsur supports highmem.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] mtx-1: Enable -Werror.
Ralf Baechle [Thu, 1 Nov 2007 16:50:06 +0000 (16:50 +0000)]
[MIPS] mtx-1: Enable -Werror.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] mtx-1: Remove unused mtx1_sys_btn.
Ralf Baechle [Thu, 1 Nov 2007 16:49:12 +0000 (16:49 +0000)]
[MIPS] mtx-1: Remove unused mtx1_sys_btn.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Pb1200: Enable -Werror.
Ralf Baechle [Thu, 1 Nov 2007 16:46:14 +0000 (16:46 +0000)]
[MIPS] Pb1200: Enable -Werror.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.
Ralf Baechle [Thu, 1 Nov 2007 15:45:37 +0000 (15:45 +0000)]
[MIPS] Fix and cleanup the MIPS part of the (ab)use of CLOCK_TICK_RATE.

This is the clock rate of the i8253 PIT.  A MIPS system may not have
a PIT by the symbol is used all over the kernel including some APIs.
So keeping it defined to the number for the PIT is the only sane thing
for now.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SNI: register a02r clockevent; don't use PIT timer
Thomas Bogendoerfer [Thu, 1 Nov 2007 10:36:42 +0000 (11:36 +0100)]
[MIPS] SNI: register a02r clockevent; don't use PIT timer

Register A20R clockevent.
Remove PIT timer setup because it doesn't work

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] i8253.h: Remove all i8259 related definitions.
Ralf Baechle [Thu, 1 Nov 2007 14:44:57 +0000 (14:44 +0000)]
[MIPS] i8253.h: Remove all i8259 related definitions.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] i8253: Cleanup.
Ralf Baechle [Thu, 1 Nov 2007 14:38:20 +0000 (14:38 +0000)]
[MIPS] i8253: Cleanup.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Cobalt: Fix IRQ comment; the Cobalt kernel uses CP0 counter now.
Yoichi Yuasa [Thu, 1 Nov 2007 12:51:23 +0000 (21:51 +0900)]
[MIPS] Cobalt: Fix IRQ comment; the Cobalt kernel uses CP0 counter now.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Pb1200: Fix warning.
Ralf Baechle [Thu, 1 Nov 2007 12:59:18 +0000 (12:59 +0000)]
[MIPS] Pb1200: Fix warning.

arch/mips/au1000/pb1200/irqmap.c:101: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result

And while at it a few coding style cleanups.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Pb1200: Fix warning.
Ralf Baechle [Thu, 1 Nov 2007 12:22:53 +0000 (12:22 +0000)]
[MIPS] Pb1200: Fix warning.

arch/mips/au1000/pb1200/board_setup.c:71: warning: unused variable 'pin_func'

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP27: Fix build error.
Ralf Baechle [Thu, 1 Nov 2007 12:20:51 +0000 (12:20 +0000)]
[MIPS] IP27: Fix build error.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Excite: Fix build error.
Ralf Baechle [Thu, 1 Nov 2007 12:16:20 +0000 (12:16 +0000)]
[MIPS] Excite: Fix build error.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Split and move clock code.
Ralf Baechle [Thu, 1 Nov 2007 01:57:55 +0000 (01:57 +0000)]
[MIPS] Sibyte: Split and move clock code.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Fixes for oneshot timer mode.
Ralf Baechle [Thu, 1 Nov 2007 00:24:50 +0000 (00:24 +0000)]
[MIPS] Sibyte: Fixes for oneshot timer mode.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Remove blank line.
Ralf Baechle [Thu, 1 Nov 2007 00:10:07 +0000 (00:10 +0000)]
[MIPS] Sibyte: Remove blank line.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Swarm: Fix build failure
Thiemo Seufer [Wed, 31 Oct 2007 16:26:56 +0000 (16:26 +0000)]
[MIPS] Swarm: Fix build failure

Signed-off-by: Thiemo Seufer <ths@networkno.de>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Code cleanups
Atsushi Nemoto [Tue, 30 Oct 2007 16:21:03 +0000 (01:21 +0900)]
[MIPS] time: Code cleanups

* Do not include unnecessary headers.
* Do not mention time.README.
* Do not mention mips_timer_ack.
* Make clocksource_mips static.  It is now dedicated to c0_timer.
* Initialize clocksource_mips.read statically.
* Remove null_hpt_read.
* Remove an argument of plat_timer_setup.  It is just a placeholder.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Remove now unused local_timer_interrupt.
Ralf Baechle [Tue, 30 Oct 2007 14:24:51 +0000 (14:24 +0000)]
[MIPS] time: Remove now unused local_timer_interrupt.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP32: Fix address of 2nd serial interface.
Ralf Baechle [Wed, 31 Oct 2007 13:10:00 +0000 (13:10 +0000)]
[MIPS] IP32: Fix address of 2nd serial interface.

Found by Giuseppe Sacco <giuseppe@eppesuigoccas.homedns.org>.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SB1250: Use the right irqaction for the timer interrupt.
Ralf Baechle [Wed, 31 Oct 2007 12:42:56 +0000 (12:42 +0000)]
[MIPS] SB1250: Use the right irqaction for the timer interrupt.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SB1250: Remove stray assignment of cpumask.
Ralf Baechle [Wed, 31 Oct 2007 12:36:42 +0000 (12:36 +0000)]
[MIPS] SB1250: Remove stray assignment of cpumask.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Fix names of the clockevent devices.
Ralf Baechle [Wed, 31 Oct 2007 12:34:42 +0000 (12:34 +0000)]
[MIPS] Sibyte: Fix names of the clockevent devices.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Build fixes / dead code removal.
Ralf Baechle [Wed, 31 Oct 2007 00:08:06 +0000 (00:08 +0000)]
[MIPS] Sibyte: Build fixes / dead code removal.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years agoInput: linux-input mailing list moved to vger.kernel.org
Dmitry Torokhov [Fri, 2 Nov 2007 13:07:33 +0000 (09:07 -0400)]
Input: linux-input mailing list moved to vger.

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Jiri Kosina <jkosina@suse.cz>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
17 years ago[BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them
Jens Axboe [Fri, 2 Nov 2007 07:49:08 +0000 (08:49 +0100)]
[BLOCK] Don't allow empty barriers to be passed down to queues that don't grok them

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agodm: bounce_pfn limit added
Vasily Averin [Wed, 31 Oct 2007 07:33:24 +0000 (08:33 +0100)]
dm: bounce_pfn limit added

Device mapper uses its own bounce_pfn that may differ from one on underlying
device. In that way dm can build incorrect requests that contain sg elements
greater than underlying device is able to handle.

This is the cause of slab corruption in i2o layer, occurred on i386 arch when
very long direct IO requests are addressed to dm-over-i2o device.

Signed-off-by: Vasily Averin <vvs@sw.ru>
Cc: <stable@kernel.org>
Cc: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoDeadline iosched: Fix batching fairness
Aaron Carroll [Tue, 30 Oct 2007 09:40:13 +0000 (10:40 +0100)]
Deadline iosched: Fix batching fairness

After switching data directions, deadline always starts the next batch
from the lowest-sector request.  This gives excessive deadline expiries
and large latency and throughput disparity between high- and low-sector
requests; an order of magnitude in some tests.

This patch changes the batching behaviour so new batches start from the
request whose expiry is earliest.

Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoDeadline iosched: Reset batch for ordered requests
Aaron Carroll [Tue, 30 Oct 2007 09:40:13 +0000 (10:40 +0100)]
Deadline iosched: Reset batch for ordered requests

The deadline I/O scheduler does not reset the batch count when starting
a new batch at a higher-sectored request.  This means the second and
subsequent batch in the same data direction will never exceed a single
request in size whenever higher-sectored requests are pending.

This patch gives new batches in the same data direction as old ones
their full quota of requests by resetting the batch count.

Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoDeadline iosched: Factor out finding latter reques
Aaron Carroll [Tue, 30 Oct 2007 09:40:12 +0000 (10:40 +0100)]
Deadline iosched: Factor out finding latter reques

Factor finding the next request in sector-sorted order into
a function deadline_latter_request.

Signed-off-by: Aaron Carroll <aaronc@gelato.unsw.edu.au>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years ago[SG] Get rid of __sg_mark_end()
Jens Axboe [Wed, 31 Oct 2007 11:06:37 +0000 (12:06 +0100)]
[SG] Get rid of __sg_mark_end()

sg_mark_end() overwrites the page_link information, but all users want
__sg_mark_end() behaviour where we just set the end bit. That is the most
natural way to use the sg list, since you'll fill it in and then mark the
end point.

So change sg_mark_end() to only set the termination bit. Add a sg_magic
debug check as well, and clear a chain pointer if it is set.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agocleanup asm/scatterlist.h includes
Adrian Bunk [Tue, 30 Oct 2007 09:35:04 +0000 (10:35 +0100)]
cleanup asm/scatterlist.h includes

Not architecture specific code should not #include <asm/scatterlist.h>.

This patch therefore either replaces them with
#include <linux/scatterlist.h> or simply removes them if they were
unused.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoSG: Make sg_init_one() use general table init functions
Jens Axboe [Tue, 30 Oct 2007 09:34:33 +0000 (10:34 +0100)]
SG: Make sg_init_one() use general table init functions

Don't open code sg_init_one(), make it reuse sg_init_table().

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agosh64: Update defconfigs.
Paul Mundt [Fri, 2 Nov 2007 05:36:55 +0000 (14:36 +0900)]
sh64: Update defconfigs.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Update r7785rp defconfig.
Paul Mundt [Fri, 2 Nov 2007 05:33:21 +0000 (14:33 +0900)]
sh: Update r7785rp defconfig.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: mach-type updates.
Paul Mundt [Fri, 2 Nov 2007 05:28:07 +0000 (14:28 +0900)]
sh: mach-type updates.

This adds in the x3proto and magicpanelr2 mach types, plugs in
highlander and rts7751r2d groups, and also hooks up the r2d
subtypes.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Fix up r7780rp highlander CF access size.
Paul Mundt [Fri, 2 Nov 2007 05:17:19 +0000 (14:17 +0900)]
sh: Fix up r7780rp highlander CF access size.

R7780RP can't do byte-sized accesses to CF, so needs to do word
sized access with low-byte masking. This same problem exists
on older versions of the R2D, with the same workaround having
been implemented in 43f4b8c7578b928892b6f01d374346ae14e5eb70
there. Follow that change for the highlander boards.

This does not impact R7780MP or SH7785 based Highlander modules.

If you're unfortunate enough to be stuck with an R7780RP, this
patch is for you!

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Terminate .eh_frame in VDSO with a 4-byte 0.
Kaz Kojima [Fri, 2 Nov 2007 03:29:37 +0000 (12:29 +0900)]
sh: Terminate .eh_frame in VDSO with a 4-byte 0.

It's assumed that .eh_frame is terminated with 4-byte 0 in shared
libraries and executable.  It seems to be the case for VDSOs too.
Without this terminator, I saw failures when unwinding from VDSO,
though I don't know how other architectures handle this issue.
For the normal libs, crtendS.o gives this terminator.  We can use
such terminating objects.  Or we can add a 4-byte 0 with modifying
the linker script like as the patch below.

Signed-off-by: Kaz Kojima <kkojima@rr.iij4u.or.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Correct SUBARCH matching.
Paul Mundt [Fri, 2 Nov 2007 03:22:47 +0000 (12:22 +0900)]
sh: Correct SUBARCH matching.

When configuring the kernel natively the uname matching is off,
so fix up the uname mangling to get the proper SUBARCH. Needs
an explicit range so that SH-5 doesn't break.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Decouple 4k and soft/hardirq stacks.
Paul Mundt [Fri, 2 Nov 2007 03:16:51 +0000 (12:16 +0900)]
sh: Decouple 4k and soft/hardirq stacks.

While using separate IRQ stacks can cut down on stack consumption,
many users can also use 4k stacks directly without the additional
need of separate stacks for soft and hardirqs.

With this split, we support the same rationale for 4KSTACKS as
m68knommu, with the IRQSTACKS abstraction as per ppc64.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agosh: Fix optimized __copy_user() movca.l usage.
Stuart Menefy [Fri, 2 Nov 2007 03:14:09 +0000 (12:14 +0900)]
sh: Fix optimized __copy_user() movca.l usage.

movca.l is restricted to SH-4 and up only, though compilers that
are unable to support ISA tuning (especially older versions of
binutils) will happily compile in the bogus opcode on older parts.

Conditionalize it to fix SH-3 regressions noted by Kristoffer.

Signed-off-by: Stuart Menefy <stuart.menefy@st.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
17 years agoInput: inport, logibm - use KERN_INFO when reporting missing mouse
Helge Deller [Fri, 2 Nov 2007 02:19:15 +0000 (22:19 -0400)]
Input: inport, logibm - use KERN_INFO when reporting missing mouse

Many mouse drivers are often compiled (e.g. in Linux distributions) into the
kernel at the same time just to make sure that at least one driver will suceed
in find it's mouse device. Nevertheless, only the inport and logitech busmouse
mouse drivers report with KERN_ERR log level if the mouse wasn't found. They
should use KERN_INFO instead, because it's not an error if the mouse isn't
attached at all.

Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
17 years agoInput: appletouch - idle reset logic broke older Fountains
Dmitry Torokhov [Fri, 2 Nov 2007 02:13:32 +0000 (22:13 -0400)]
Input: appletouch - idle reset logic broke older Fountains

Fountains do not support change mode request and therefore
should be excluded from idle reset attempts.

Also:
 - do not re-submit URB when we decide that touchpad needs to be
   reinicialized
 - do not repeat size detection when reinitializing the touchpad
 - Add missing KERN_* prefixes to messages

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Acked-by: Johannes Berg <johannes@sipsolutions.net>