09 Jun, 2009
3 commits
-
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
MIPS: Outline udelay and fix a few issues.
MIPS: ioctl.h: Fix headers_check warnings
MIPS: Cobalt: PCI bus is always required to obtain the board ID
MIPS: Kconfig: Remove "Support for" from Cavium system type
MIPS: Sibyte: Honor CONFIG_CMDLINE
SSB: BCM47xx: Export ssb_watchdog_timer_set -
The previous patch submission had a I typo I didn't catch but Bartlomiej
noted. Guess this proves the point about any patch being risky late in an rcSigned-off-by: Alan Cox
Signed-off-by: Linus Torvalds -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
pdc202xx_old: fix resetproc() method
pdc202xx_old: fix 'pdc20246_dma_ops'
08 Jun, 2009
3 commits
-
this patch export ssb_watchdog_timer_set to allow to use it in a Linux
watchdog driver.Signed-off-by: Matthieu CASTET
Acked-by : Michael Buesch
Signed-off-by: Ralf Baechle -
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] 5543/1: arm: serial amba: add missing declaration in serial.h
[ARM] pxa: fix pxa27x_udc default pullup GPIO
[ARM] pxa/imote2: fix UCAM sensor board ADC model number
mx[23]: don't put clock lookups in __initdata
fix oops when using console=ttymxcN with N > 0
[ARM] ARMv7 errata: only apply fixes when running on applicable CPU
[ARM] 5534/1: kmalloc must return a cache line aligned buffer -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/drzeus/mmc:
sdhci-of: Fix the wrong accessor to HOSTVER register
mvsdio: fix config failure with some high speed SDHC cards
mvsdio: ignore high speed timing requests from the core
mmc/omap: Use disable_irq_nosync() from within irq handlers.
sdhci-of: Add fsl,esdhc as a valid compatible to bind against
mvsdio: allow automatic loading when modular
mxcmmc: Fix missing return value checking in DMA setup code.
mxcmmc : Reset the SDHC hardware if software timeout occurs.
omap_hsmmc: Trivial fix for a typo in comment
mxcmmc: decrease minimum frequency to make MMC cards work
07 Jun, 2009
4 commits
-
pdc202xx_reset() calls pdc202xx_reset_host() twice, for both channels, while
that function actually twiddles the single, shared software reset bit -- the
net effect is a duplicated reset and horrendous 4 second delay happening not
only on a channel reset but also when dma_lost_irq() and dma_clear() methods
are called. Fold pdc202xx_reset_host() into pdc202xx_reset(), fix printk(),
and move it before the actual reset...Signed-off-by: Sergei Shtylyov
Signed-off-by: Bartlomiej Zolnierkiewicz -
Commit ac95beedf8bc97b24f9540d4da9952f07221c023 (ide: add struct ide_port_ops
(take 2)) erroneously converted the driver's dma_timeout() and dma_lost_irq()
methods to call the driver's resetproc() method regardless of whether it was
defined for this specific controller while it hadn't been defined and hence
called for PDC20246. So the dma_clear() method, the successor of dma_timeout(),
shouldn't exist and the dma_lost_irq() method should be standard for PDC20246.Signed-off-by: Sergei Shtylyov
Signed-off-by: Bartlomiej Zolnierkiewicz -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
x86/pci: fix mmconfig detection with 32bit near 4g
PCI: use fixed-up device class when configuring device -
* 'upstream-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
[libata] pata_ali: Use IGN_SIMPLEX
06 Jun, 2009
8 commits
-
Some ALi devices report simplex if they have been disabled and re-enabled, and
restoring the byte does not work. Ignore it - the needed supporting logic is
already present for the SATA ULi ports.Signed-off-by: Alan Cox
Signed-off-by: Jeff Garzik -
DaVinci clock support has been updated in mainline.
Update clock names accordingly.Signed-off-by: Kevin Hilman
Acked-by: David Brownell
Signed-off-by: Artem Bityutskiy
Signed-off-by: David Woodhouse
Signed-off-by: Linus Torvalds -
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
ata_piix: Add HP Compaq nc6000 to the broken poweroff list
ahci: add warning messages for hp laptops with broken suspend
pata_efar: fix PIO2 underclocking
pata_legacy: wait for async probing -
HP Compaq nc6000 suffers from the double disk spindown issue.
Add it to the broken poweroff DMI list.Signed-off-by: Ville Syrjala
Signed-off-by: Jeff Garzik -
Harddisks on HP dv[4-6] and HDX18 fail to come online after resume on
earlier BIOSen. Fortunately, HP recently released BIOS updates for
all machines to fix the issue. Detect old BIOSen, warn the user to
update BIOS on boot and suspend attempts and fail suspend.Kudos to all the bug reporters.
Signed-off-by: Tejun Heo
Cc: kernel.org@epperson.homelinux.net
Cc: emisca@gmail.com
Cc: Gadi Cohen
Cc: Paul Swanson
Cc: s@ourada.org
Cc: Trevor Davenport
Cc: corruptor1972
Cc: Victoria Wilson
Cc: khiraly
Cc: Sean
Signed-off-by: Jeff Garzik -
Fix the PIO mode 2 using mode 0 timings -- this driver should enable the
fast timing bank starting with PIO2, just like the PIIX/ICH drivers do.
Also, fix/rephrase some comments while at it.Signed-off-by: Sergei Shtylyov
Signed-off-by: Jeff Garzik -
The basic problem here that pata_legacy attaches the host, sees if it found
any devices and detaches it if none were found. With async probing, it's not
waiting until discovery is finished before deciding it has no devices and
trying the detach leading to this warning:ata1: PATA max PIO4 cmd 0x1f0 ctl 0x3f6 irq 14
------------[ cut here ]------------
WARNING: at drivers/ata/libata-core.c:6222 ata_host_detach+0x75/0x90()
Modules linked in:
Pid: 1, comm: swapper Not tainted 2.6.30-rc7 #1
Call Trace:
[] ? ata_host_detach+0x75/0x90
[] ? ata_host_detach+0x75/0x90
[] ? warn_slowpath_common+0x45/0x80
[] ? warn_slowpath_null+0xa/0x10
[] ? ata_host_detach+0x75/0x90
[] ? legacy_init+0x44e/0x87f
[] ? legacy_init+0x0/0x87f
[] ? _stext+0x21/0x140
[] ? proc_register+0x2f/0x190
[] ? create_proc_entry+0x5c/0xc0
[] ? register_irq_proc+0x6e/0x90
[] ? kernel_init+0x6e/0xbf
[] ? kernel_init+0x0/0xbf
[] ? kernel_thread_helper+0x7/0x10
---[ end trace ef1ee36e873ae3a0 ]---Because it detaches before the probe is complete.
One way to fix it would be to put an async_synchronize_full() before looking
for devices, which this patch does. A better way might be to separate libata
into its own domain and only wait for that.Reported-by: Mikael Pettersson
Signed-off-by: James Bottomley
Signed-off-by: Jeff Garzik -
This reverts commit 6c51d1cfa0a370b48a157163340190cf5fd2346b, which
apparently causes DRI initialization failures on Radeons.Reported-by: Markus Trippelsdorf
Requested-by: Dave Airlie
Signed-off-by: Linus Torvalds
05 Jun, 2009
4 commits
-
The ivtv stream buffers may be for receive or for send but the attached
sg handle is always destined cpu->device. We flush it correctly but the
allocation is wrongly done with the same type as the buffers.See bug: http://bugzilla.kernel.org/show_bug.cgi?id=13385
(Note this doesn't close the bug - it fixes the ivtv part and in turn
the logging next shows up some rather alarming DMA sg list warnings in
libata)Signed-off-by: Alan Cox
Acked-by: Hans Verkuil
Signed-off-by: Linus Torvalds -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel:
drm/i915: Remove a bad BUG_ON in the fence management code. -
* 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
drm: ignore EDID with really tiny modes.
drm: don't associate _DRM_DRIVER maps with a master
drm/i915: intel_lvds.c fix section mismatch
drm: Hook up DPMS property handling in drm_crtc.c. Add drm_helper_connector_dpms.
drm: set permissions on edid file to 0444
drm: add newlines to text sysfs files
drm/radeon: fix ring free alignment calculations
drm: fix irq naming for kms drivers. -
While running 20 parallel instances of dd as follows:
#!/bin/bash
for i in `seq 1 20`; do
dd if=/dev/zero of=/export/hda3/dd_$i bs=1073741824 count=1 &
done
waiton a 16G machine, we noticed that rather than just killing the processes,
the entire kernel went down. Stracing dd reveals that it first does an
mmap2, which makes 1GB worth of zero page mappings. Then it performs a
read on those pages from /dev/zero, and finally it performs a write.The machine died during the reads. Looking at the code, it was noticed
that /dev/zero's read operation had been changed by
557ed1fa2620dc119adb86b34c614e152a629a80 ("remove ZERO_PAGE") from giving
zero page mappings to actually zeroing the page.The zeroing of the pages causes physical pages to be allocated to the
process. But, when the process exhausts all the memory that it can, the
kernel cannot kill it, as it is still in the kernel mode allocating more
memory. Consequently, the kernel eventually crashes.To fix this, I propose that when a fatal signal is pending during
/dev/zero read operation, we simply return and let the user process die.Signed-off-by: Salman Qazi
Cc: Nick Piggin
Signed-off-by: Andrew Morton
[ Modified error return and comment trivially. - Linus]
Signed-off-by: Linus Torvalds
04 Jun, 2009
18 commits
-
This could be triggered by a gtt mapping fault on 965 that decides to
remove the fence from another object that happens to be active currently.
Since the other object doesn't rely on the fence reg for its execution, we
don't wait for it to finish. We'll soon be not waiting on 915 most of the
time as well, so just drop the BUG_ON.Signed-off-by: Eric Anholt
-
The device class may be changed after the fixup, so re-read the class
value from pci_dev when configuring the device. Otherwise some devices
such as JMicron SATA controller won't work.Reviewed-by: Matthew Wilcox
Reviewed-by: Grant Grundler
Tested-by: Marc Dionne
Signed-off-by: Yu Zhao
Signed-off-by: Jesse Barnes -
Some EDIDs lie and report tiny modes that aren't possible. Ignore
these modes.Signed-off-by: Adam Jackson
Signed-off-by: Dave Airlie -
A driver will use the _DRM_DRIVER map flag to indicate that it wants
to be responsible for removing the map itself, bypassing the DRM's
automagic cleanup code.Since the multi-master changes this has been broken, resulting in some
drivers having their registers unmapped before it's finished with them.Signed-off-by: Ben Skeggs
Signed-off-by: Dave Airlie -
intel_no_lvds[] does not require __initdata as it is used only by
void intel_lvds_init(struct drm_device *dev).
Signed-off-by: Jaswinder Singh Rajput
Signed-off-by: Dave Airlie -
Making the drm_crtc.c code recognize the DPMS property and invoke the
connector->dpms function doesn't remove any capability from the driver while
reducing code duplication.That just highlighted the problem with the existing DPMS functions which
could turn off the connector, but failed to turn off any relevant crtcs. The
new drm_helper_connector_dpms function manages all of that, using the
drm_helper-specific crtc and encoder dpms functions, automatically computing
the appropriate DPMS level for each object in the system.This fixes the current troubles in the i915 driver which left PLLs, pipes
and planes running while in DPMS_OFF mode or even while they were unused.Signed-off-by: Keith Packard
Signed-off-by: Dave Airlie -
Without initializing the sysfs attributes for the edid file,
it was created with mode 0, making it difficult for applications to use.Signed-off-by: Keith Packard
Signed-off-by: Dave Airlie -
The contents of various simple text files in sysfs should end with
a newline to make them easier to read from the console.Signed-off-by: Keith Packard
Signed-off-by: Dave Airlie -
fd.o bz#21849
We were aligning to +16 dwords, instead of to the next 16dword
boundary in the ring. Fix the calculation to go to the next 16dword
boundary when space checking.Signed-off-by: Dave Airlie
-
allocating devname in the i915 driver was a hack originally and I
forgot to figure out how to do this properly back then.So this is the cleaner version that just picks devname or driver name
in the irq code.It removes the devname allocs from the i915 driver.
Signed-off-by: Dave Airlie
-
Freescale eSDHC controller has the special order for
the HOST version register. that is not same as the other's
registers. The address of HOSTVER in spec is 0xFE, and
we need use the in_be16(0xFE) to access it, not in_be16(0xFC).Signed-off-by: Dave Liu
Acked-by: Anton Vorontsov
Signed-off-by: Pierre Ossman -
Especially with Sandisk SDHC cards, the second SWITCH command was failing
with a timeout and the card was not recognized at all. However if the
system was busy, or debugging was enabled, or a udelay(100) was inserted
before the second SWITCH command in the core code, then the timing was
so that the card started to work.With some unusual block sizes, the data FIFO status doesn't indicate a
"empty" state right away when the data transfer is done. Queuing
another data transfer in that condition results in a transfer timeout.The empty FIFO bit eventually get set by itself in less than 50 usecs
when it is not set right away. So let's just poll for that bit before
configuring the controller with a new data transfer.Signed-off-by: Nicolas Pitre
Signed-off-by: Pierre Ossman -
Empirical evidences show that this is causing far more problems than it
solves when this mode is enabled in the host hardware. Amongst those
cards that are known to be non functional when this bit is set are:A-Data "Speedy" 2GB SD card
Kodak 512MB SD card
Ativa 1GB MicroSD card
Marvell 8688 (WIFI/Bluetooth) SDIO cardSince those cards do work on other host controllers which do honnor the
hs timing, the issue must be with this particular host hardware.Signed-off-by: Nicolas Pitre
Signed-off-by: Pierre Ossman -
disable_irq() should wait for all running handlers to complete
before returning. As such, if it's used to disable an interrupt
from that interrupt's handler it will deadlock. This replaces
the dangerous instances with the _nosync() variant which doesn't
have this problem.Signed-off-by: Ben Nizette
Acked-by: Tony Lindgren
Signed-off-by: Pierre Ossman -
We plan to use fsl,esdhc going forward as the base compatible so update
the driver to bind against it.Signed-off-by: Kumar Gala
Signed-off-by: Pierre Ossman -
Signed-off-by: Nicolas Pitre
Tested-by: Martin Michlmayr
Signed-off-by: Pierre Ossman -
Signed-off-by: Martin Fuzzey
-
When a software timeout occurs in polling mode hardware was left in
an indeterminate state causing subsequent operations to block.Signed-off-by: Martin Fuzzey