]> Git Repo - linux.git/log
linux.git
14 years agodrm/i915: Avoid blocking the kworker thread on a stuck mutex
Chris Wilson [Wed, 29 Sep 2010 11:26:37 +0000 (12:26 +0100)]
drm/i915: Avoid blocking the kworker thread on a stuck mutex

Just reschedule the retire requests again if the device is currently
busy. The request list will be pruned along other paths so will never
grow unbounded and so we can afford to miss the occasional pruning.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/debug: Remove default WATCH_BUF
Chris Wilson [Wed, 29 Sep 2010 10:39:53 +0000 (11:39 +0100)]
drm/i915/debug: Remove default WATCH_BUF

Replaced by tracepoints.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/debug: Remove defunct WATCH_LRU
Chris Wilson [Wed, 29 Sep 2010 10:36:22 +0000 (11:36 +0100)]
drm/i915/debug: Remove defunct WATCH_LRU

This has bitrotted through inuse and superseded by tracing and debugfs.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/dvo: Fix panel and DDC i2c pins
Chris Wilson [Tue, 28 Sep 2010 22:34:44 +0000 (23:34 +0100)]
drm/i915/dvo: Fix panel and DDC i2c pins

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Tidy dvo_ch7017 and print out which chip we detect
Chris Wilson [Tue, 28 Sep 2010 22:33:17 +0000 (23:33 +0100)]
drm/i915: Tidy dvo_ch7017 and print out which chip we detect

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Disable LVDS i2c probing when using GPIO bit banging
Chris Wilson [Tue, 28 Sep 2010 15:41:32 +0000 (16:41 +0100)]
drm/i915: Disable LVDS i2c probing when using GPIO bit banging

This check only appears to succeed when using GMBUS, so we need to skip
it if we have fallen back to using GPIO bit banging.

Signed-off-by: Chris Wilson <[email protected]>
14 years agoMerge branch 'drm-intel-fixes' into drm-intel-next
Chris Wilson [Tue, 28 Sep 2010 14:48:38 +0000 (15:48 +0100)]
Merge branch 'drm-intel-fixes' into drm-intel-next

14 years agoMAINTAINERS: Add contact details for drm/i915
Chris Wilson [Tue, 28 Sep 2010 13:07:26 +0000 (14:07 +0100)]
MAINTAINERS: Add contact details for drm/i915

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Use i2c bit banging instead of GMBUS
Chris Wilson [Tue, 28 Sep 2010 12:35:47 +0000 (13:35 +0100)]
drm/i915: Use i2c bit banging instead of GMBUS

There are several reported instances of GMBUS failing to successfully
read the EDID, so revert back to bit banging until the issue is
resolved.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=30371
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/sdvo: Fix GMBUSification
Chris Wilson [Fri, 24 Sep 2010 11:52:03 +0000 (12:52 +0100)]
drm/i915/sdvo: Fix GMBUSification

Besides a couple of bugs when writing more than a single byte along the
GMBUS, SDVO was completely failing whilst trying to use GMBUS, so use
bit banging instead.

Signed-off-by: Chris Wilson <[email protected]>
14 years agoRevert "drm/i915: Drop ring->lazy_request"
Chris Wilson [Tue, 28 Sep 2010 09:07:56 +0000 (10:07 +0100)]
Revert "drm/i915: Drop ring->lazy_request"

With multiple rings generating requests independently, the outstanding
requests must also be track independently.

Reported-by: Wang Jinjin <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=30380
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/radeon/kms: add quirk for MSI K9A2GM motherboard
Alex Deucher [Mon, 27 Sep 2010 15:33:00 +0000 (11:33 -0400)]
drm/radeon/kms: add quirk for MSI K9A2GM motherboard

Board has no digital connectors

Reported-by: Andy Walls <[email protected]>
Tested-by: Andy Walls <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
14 years agodrm/radeon/kms: fix potential segfault in r600_ioctl_wait_idle
Alex Deucher [Mon, 27 Sep 2010 14:57:10 +0000 (10:57 -0400)]
drm/radeon/kms: fix potential segfault in r600_ioctl_wait_idle

radeon_gem_wait_idle_ioctl can apparently get called prior to
the vram page being set up or even if accel if false, so make
sure it's valid before using it.

Should fix:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=597636
https://bugs.freedesktop.org/show_bug.cgi?id=29834

Signed-off-by: Alex Deucher <[email protected]>
Cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
14 years agodrm: Prune GEM vma entries
Chris Wilson [Mon, 27 Sep 2010 20:28:30 +0000 (21:28 +0100)]
drm: Prune GEM vma entries

Hook the GEM vm open/close ops into the generic drm vm open/close so
that the private vma entries are created and destroy appropriately.
Fixes the leak of the drm_vma_entries during the lifetime of the filp.

Reported-by: Matt Mackall <[email protected]>
Cc: Jesse Barnes <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
Acked-by: Jesse Barnes <[email protected]>
Cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
14 years agodrm/i915: fix GMCH power reporting
Jesse Barnes [Mon, 27 Sep 2010 17:35:44 +0000 (10:35 -0700)]
drm/i915: fix GMCH power reporting

The IPS driver needs to know the current power consumption of the GMCH
in order to make decisions about when to increase or decrease the CPU
and/or GPU power envelope.  So fix up the divisions to save the results
so the numbers are actually correct (contrary to some earlier comments
and code, these functions do not modify the first argument and use it
for the result).

Signed-off-by: Jesse Barnes <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
Cc: [email protected]
14 years agodrm/radeon/kms: fix up encoder info messages for DFP6
Alex Deucher [Fri, 24 Sep 2010 18:59:32 +0000 (14:59 -0400)]
drm/radeon/kms: fix up encoder info messages for DFP6

encoder info was not printed properly on boards using the
DFP6 id.

Signed-off-by: Alex Deucher <[email protected]>
Cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
14 years agodrm/radeon: fix PCI ID 5657 to be an RV410
Dave Airlie [Sat, 25 Sep 2010 07:45:50 +0000 (17:45 +1000)]
drm/radeon: fix PCI ID 5657 to be an RV410

fixes https://bugzilla.kernel.org/show_bug.cgi?id=19012

cc: [email protected]
Signed-off-by: Dave Airlie <[email protected]>
14 years agodrm/i915: Ensure that the mode change flushing is currently uninterruptible
Chris Wilson [Sun, 26 Sep 2010 21:47:46 +0000 (22:47 +0100)]
drm/i915: Ensure that the mode change flushing is currently uninterruptible

Introduced by 48b956c5, I had thought I had already fixed this. Oh well.

Reported-by: Sitsofe Wheeler <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: fix debugging compilation error from previous commit
Chris Wilson [Sun, 26 Sep 2010 21:21:10 +0000 (22:21 +0100)]
drm/i915: fix debugging compilation error from previous commit

There is no equivalent to mutex_destroy() for spinlocks so just delete
the code.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Convert the file mutex into a spinlock
Chris Wilson [Sun, 26 Sep 2010 10:03:27 +0000 (11:03 +0100)]
drm/i915: Convert the file mutex into a spinlock

Daniel Vetter pointed out that in this case is would be clearer and
cleaner to use a spinlock instead of a mutex to protect the per-file
request list manipulation. Make it so.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm: readd drm_lock_free in drm_unlock
Daniel Vetter [Sat, 25 Sep 2010 22:24:48 +0000 (00:24 +0200)]
drm: readd drm_lock_free in drm_unlock

I've accidently killed a little bit too much in

commit 1da3f87ebb7edb3e0b829ec4bbe5fb3d9d93986f
Author: Daniel Vetter <[email protected]>
Date:   Mon Aug 23 22:53:24 2010 +0200

    drm: kill kernel_context_switch callbacks

Note to self: Next time also test with AIGLX disabled.

Reported-and-Tested-by: Andy Furniss <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=30374
Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
14 years agoalpha: fix usp value in multithreaded coredumps
Al Viro [Sat, 25 Sep 2010 20:07:51 +0000 (21:07 +0100)]
alpha: fix usp value in multithreaded coredumps

rdusp() gives us the right value only for the current thread...

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agoalpha: fix hae_cache race in RESTORE_ALL
Al Viro [Sat, 25 Sep 2010 20:07:14 +0000 (21:07 +0100)]
alpha: fix hae_cache race in RESTORE_ALL

We want interrupts disabled on all paths leading to RESTORE_ALL;
otherwise, we are risking an IRQ coming between the updates of
alpha_mv->hae_cache and *alpha_mv->hae_register and set_hae()
within the IRQ getting badly confused.

RESTORE_ALL used to play with disabling IRQ itself, but that got
removed back in 2002, without making sure we had them disabled
on all paths.  It's cheaper to make sure we have them disabled than
to revert to original variant...

Remove the detritus left from that commit back in 2002; we used to
need a reload of $0 and $1 since swpipl would change those, but
doing that had become pointless when we stopped doing swpipl in
there...

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Sat, 25 Sep 2010 16:51:54 +0000 (09:51 -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: prevent merges of discard and write requests

14 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Sat, 25 Sep 2010 16:51:31 +0000 (09:51 -0700)]
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ALSA: sound/pci/rme9652: prevent reading uninitialized stack memory
  ALSA: hda - Fix auto-parse of SPDIF input of Realtek codecs
  ASoC: Fix multi-componentism
  ASoC: Fix soc-cache buffer overflow bug
  ALSA: oxygen: fix analog capture on Claro halo cards
  ALSA: hda - Add Dell Latitude E6400 model quirk
  ASoC: fix clkdev API usage in sh/migor.c

14 years agoAvoid pgoff overflow in remap_file_pages
Larry Woodman [Fri, 24 Sep 2010 16:04:48 +0000 (12:04 -0400)]
Avoid pgoff overflow in remap_file_pages

Thomas Pollet noticed that the remap_file_pages() system call in
fremap.c has a potential overflow in the first part of the if statement
below, which could cause it to process bogus input parameters.
Specifically the pgoff + size parameters could be wrap thereby
preventing the system call from failing when it should.

Reported-by: Thomas Pollet <[email protected]>
Signed-off-by: Larry Woodman <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agoMerge branch 'fix/hda' into for-linus
Takashi Iwai [Sat, 25 Sep 2010 15:57:53 +0000 (17:57 +0200)]
Merge branch 'fix/hda' into for-linus

14 years agoMerge branch 'fix/asoc' into for-linus
Takashi Iwai [Sat, 25 Sep 2010 15:57:49 +0000 (17:57 +0200)]
Merge branch 'fix/asoc' into for-linus

14 years agoALSA: sound/pci/rme9652: prevent reading uninitialized stack memory
Dan Rosenberg [Sat, 25 Sep 2010 15:07:27 +0000 (11:07 -0400)]
ALSA: sound/pci/rme9652: prevent reading uninitialized stack memory

The SNDRV_HDSP_IOCTL_GET_CONFIG_INFO and
SNDRV_HDSP_IOCTL_GET_CONFIG_INFO ioctls in hdspm.c and hdsp.c allow
unprivileged users to read uninitialized kernel stack memory, because
several fields of the hdsp{m}_config_info structs declared on the stack
are not altered or zeroed before being copied back to the user.  This
patch takes care of it.

Signed-off-by: Dan Rosenberg <[email protected]>
Cc: <[email protected]>
Signed-off-by: Takashi Iwai <[email protected]>
14 years agodrm/i915: kill ring->setup_status_page
Daniel Vetter [Fri, 24 Sep 2010 19:49:27 +0000 (21:49 +0200)]
drm/i915: kill ring->setup_status_page

It's the same code, essentially, so kill all copies safe one unified
version.

Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: kill ring->get_active_head
Daniel Vetter [Fri, 24 Sep 2010 19:20:10 +0000 (21:20 +0200)]
drm/i915: kill ring->get_active_head

All functions are extremely similar, so fold them into one generic
implementation.

This function isn't used anyway, because there's not yet a bsd ring
error state dumper.

Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: kill per-ring macros
Daniel Vetter [Fri, 24 Sep 2010 19:14:22 +0000 (21:14 +0200)]
drm/i915: kill per-ring macros

Two macros that use a base address for HWS_PGA were missing, add them.
Also switch the remaining users of *_ACTHD to the ring-base one.
Kill the other ring-specific macros because they're now unused.

Signed-off-by: Daniel Vetter <[email protected]>
[ickle: And silence checkpatch whilst in the vicinity]
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: fix ACTHD for gen <= 3
Daniel Vetter [Fri, 24 Sep 2010 19:08:29 +0000 (21:08 +0200)]
drm/i915: fix ACTHD for gen <= 3

This was mixed up in the following patch:

commit a6c45cf013a57e32ddae43dd4ac911eb4a3919fd
Author: Chris Wilson <[email protected]>
Date:   Fri Sep 17 00:32:17 2010 +0100

    drm/i915: INTEL_INFO->gen supercedes i8xx, i9xx, i965g

Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: kill now unnecessary gtt defines from i915_reg.h
Daniel Vetter [Fri, 24 Sep 2010 18:54:39 +0000 (20:54 +0200)]
drm/i915: kill now unnecessary gtt defines from i915_reg.h

Everything is now handled in intel-gtt.h so these defines
are only confusing.

Signed-off-by: Daniel Vetter <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Make the mutex_lock interruptible on ioctl paths
Chris Wilson [Sat, 25 Sep 2010 10:22:51 +0000 (11:22 +0100)]
drm/i915: Make the mutex_lock interruptible on ioctl paths

... and combine it with the wedged completion handler.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Adjust hangcheck EIO semantics
Chris Wilson [Sat, 25 Sep 2010 09:19:17 +0000 (10:19 +0100)]
drm/i915: Adjust hangcheck EIO semantics

Owain Ainsworth reported an issue between the interaction of the
hangcheck and userspace immediately (and permanently) falling back to
s/w rasterisation. In order to break the mutex and begin resetting the
GPU, we must abort the current operation (usually within the wait) and
climb sufficiently far back up the call chain to drop the mutex. In his
implementation, Owain has a loop within the ioctl handler to detect the
hang and then sleep until the error handler has run. I've chosen to
return to userspace and report an EAGAIN which should trigger the
userspace ioctl handler to repeat the call (simply because it felt less
invasive...). Before hitting a wedged GPU, we then wait upon completion
of the error handler.

Reported-by: Owain G. Ainsworth <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agoblock: prevent merges of discard and write requests
Adrian Hunter [Sat, 25 Sep 2010 10:42:55 +0000 (12:42 +0200)]
block: prevent merges of discard and write requests

Add logic to prevent two I/O requests being merged if
only one of them is a discard.  Ditto secure discard.

Without this fix, it is possible for write requests
to transform into discard requests.  For example:

  Submit bio 1 to discard 8 sectors from sector n
  Submit bio 2 to write 8 sectors from sector n + 16
  Submit bio 3 to write 8 sectors from sector n + 8

Bio 1 becomes request 1.  Bio 2 becomes request 2.
Bio 3 is merged with request 2, and then subsequently
request 2 is merged with request 1 resulting in just
one I/O request which discards all 24 sectors.

Signed-off-by: Adrian Hunter <[email protected]>
(Moved the checks above the position checks /Jens)

Signed-off-by: Jens Axboe <[email protected]>
14 years agoMerge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groec...
Linus Torvalds [Sat, 25 Sep 2010 02:09:20 +0000 (19:09 -0700)]
Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging

* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/staging:
  x86/hwmon: pkgtemp has no dependency on PCI
  MAINTAINERS: Update hwmon entry
  x86/hwmon: register alternate sibling upon CPU removal
  x86/hwmon: fix initialization of pkgtemp
  x86/hwmon: fix initialization of coretemp
  x86/hwmon: don't leak device attribute file from pkgtemp_probe() and pkgtemp_remove()
  x86/hwmon: avoid deadlock on CPU removal in pkgtemp
  x86/hwmon: fix module init for hotplug-but-no-device-found case
  hwmon: (lis3) Fix Oops with NULL platform data

14 years agoMerge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux...
Linus Torvalds [Sat, 25 Sep 2010 02:08:39 +0000 (19:08 -0700)]
Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile

* 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
  arch/tile: remove dead code from intvec_32.S

14 years agoarch/tile: remove dead code from intvec_32.S
Chris Metcalf [Fri, 24 Sep 2010 21:19:20 +0000 (17:19 -0400)]
arch/tile: remove dead code from intvec_32.S

This "bpt_code" instruction was killed off in our development line a while
ago (the actual definition of bpt_code that is used is in kernel/traps.c)
but I didn't push it for 2.6.36 because it seemed harmless and I didn't
want to try to push more than absolutely necessary.

However, we recently fixed a bug in our gcc that had been causing
"-gdwarf2" not to be passed to the assembler, and passing this flag causes
an erroneous assembler failure in the presence of code in a data section,
sometimes.  While we'd like to track down the bug in the assembler,
we'd also like to make sure 2.6.36 builds with the current toolchain,
so I'm removing this dead code as well.

Signed-off-by: Chris Metcalf <[email protected]>
14 years agofremap: get rid of broken 'end' variable
Linus Torvalds [Fri, 24 Sep 2010 21:13:57 +0000 (14:13 -0700)]
fremap: get rid of broken 'end' variable

Thomas Pollet points out that the 'end' variable is broken.  It was
computed based on start/size before they were page-aligned, and as such
doesn't actually match any of the other actions we take.  The overflow
test on end was also redundant, since we had already tested it with the
properly aligned version.

So just get rid of it entirely.  The one remaining use for that broken
variable can just use 'start+size' like all the other cases already did.

Reported-by: Thomas Pollet <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agoMerge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec...
Linus Torvalds [Fri, 24 Sep 2010 21:08:15 +0000 (14:08 -0700)]
Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2

* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2:
  o2dlm: force free mles during dlm exit
  ocfs2: Sync inode flags with ext2.
  ocfs2: Move 'wanted' into parens of ocfs2_resmap_resv_bits.
  ocfs2: Use cpu_to_le16 for e_leaf_clusters in ocfs2_bg_discontig_add_extent.
  ocfs2: update ctime when changing the file's permission by setfacl
  ocfs2/net: fix uninitialized ret in o2net_send_message_vec()
  Ocfs2: Handle empty list in lockres_seq_start() for dlmdebug.c
  Ocfs2: Re-access the journal after ocfs2_insert_extent() in dxdir codes.
  ocfs2: Fix lockdep warning in reflink.
  ocfs2/lockdep: Move ip_xattr_sem out of ocfs2_xattr_get_nolock.

14 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6
Linus Torvalds [Fri, 24 Sep 2010 20:55:29 +0000 (13:55 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6:
  USB: update Kconfig help text for CONFIG_USB_SUSPEND
  usb: musb: gadget: restart request on clearing endpoint halt
  usb: musb: host: Issue a memory barrier before starting DMA
  usb: musb: gadget: fix dma length in txstate
  usb: musb: gadget: complete request only if data is transfered over
  usb: musb: gadget: fix DMA length for OUT transfer
  usb: musb: gadget: enable autoclear for OUT transfer in both DMA 0 and DMA 1
  usb: musb: gadget: fix bulk IN infinit hangs in double buffer case
  usb: musb: gadget: fix kernel panic if using out ep with FIFO_TXRX style
  USB: fix bug in initialization of interface minor numbers

14 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6
Linus Torvalds [Fri, 24 Sep 2010 20:55:12 +0000 (13:55 -0700)]
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging-2.6:
  Staging: ti-st: remove st_get_plat_device

14 years agoMerge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied...
Linus Torvalds [Fri, 24 Sep 2010 20:55:01 +0000 (13:55 -0700)]
Merge branch 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6

* 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
  vgaarb: trivial fix
  drm: radeon cleanup fixes...
  drm: fix trivial coding errors
  drm: ttm sparse fixes.
  drm/nouveau: fix panels using straps-based mode detection
  drm/ttm: Clear the ghost cpu_writers flag on ttm_buffer_object_transfer.
  drm/radeon: don't allow device to be opened if powered down

14 years agom32r: fix breakage from "m32r: use generic ptrace_resume code"
Al Viro [Fri, 24 Sep 2010 05:25:34 +0000 (06:25 +0100)]
m32r: fix breakage from "m32r: use generic ptrace_resume code"

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agom32r: hole in shifting pc back
Al Viro [Fri, 24 Sep 2010 05:24:53 +0000 (06:24 +0100)]
m32r: hole in shifting pc back

It's a userland pointer; worse, an untrustable one since ptrace
has just provided a chance to modify it.

X-Roothole-Covering-Cabal: TINRCC
Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agom32r: don't block signals if sigframe setup has failed
Al Viro [Fri, 24 Sep 2010 05:23:57 +0000 (06:23 +0100)]
m32r: don't block signals if sigframe setup has failed

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agomake m32r handle multiple pending signals
Al Viro [Fri, 24 Sep 2010 05:22:30 +0000 (06:22 +0100)]
make m32r handle multiple pending signals

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agom32r: fix rt_sigsuspend()
Al Viro [Fri, 24 Sep 2010 05:20:35 +0000 (06:20 +0100)]
m32r: fix rt_sigsuspend()

do_signal() should know about saved_mask for it to work...

Signed-off-by: Al Viro <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
14 years agodrm/i915: Only hold a process-local lock whilst throttling.
Chris Wilson [Fri, 24 Sep 2010 15:02:42 +0000 (16:02 +0100)]
drm/i915: Only hold a process-local lock whilst throttling.

Avoid cause latencies in other clients by not taking the global struct
mutex and moving the per-client request manipulation a local per-client
mutex. For example, this allows a compositor to schedule a page-flip
(through X) whilst an OpenGL application is monopolising the GPU.

Signed-off-by: Chris Wilson <[email protected]>
14 years agox86/hwmon: pkgtemp has no dependency on PCI
Jan Beulich [Mon, 13 Sep 2010 10:24:47 +0000 (10:24 +0000)]
x86/hwmon: pkgtemp has no dependency on PCI

Other than coretemp, from which this code was apparently derived, there
is no PCI specific code in this driver.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Fenghua Yu <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agoMAINTAINERS: Update hwmon entry
Guenter Roeck [Fri, 24 Sep 2010 15:43:44 +0000 (08:43 -0700)]
MAINTAINERS: Update hwmon entry

Signed-off-by: Guenter Roeck <[email protected]>
14 years agox86/hwmon: register alternate sibling upon CPU removal
Jan Beulich [Mon, 13 Sep 2010 10:23:05 +0000 (10:23 +0000)]
x86/hwmon: register alternate sibling upon CPU removal

Just like pkgtemp registers another core of the same package when one
gets removed, coretemp should register another hyperthread (if
available) in that situation.

As pointed out in the patch fixing the respective code in pkgtemp, the
list protectng mutex must be dropped before calling
coretemp_device_add(), and due to the restructured loop (including an
explicit return) the "safe" variant of the list iterator isn't needed
anymore.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Rudolf Marek <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agox86/hwmon: fix initialization of pkgtemp
Jan Beulich [Mon, 13 Sep 2010 10:18:54 +0000 (10:18 +0000)]
x86/hwmon: fix initialization of pkgtemp

Feature availability should also be checked in the hotplug code path.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Fenghua Yu <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agox86/hwmon: fix initialization of coretemp
Jan Beulich [Fri, 24 Sep 2010 05:21:34 +0000 (22:21 -0700)]
x86/hwmon: fix initialization of coretemp

Using cpuid_eax() to determine feature availability on other than
the current CPU is invalid. And feature availability should also be
checked in the hotplug code path.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Rudolf Marek <[email protected]>
Cc: Fenghua Yu <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agox86/hwmon: don't leak device attribute file from pkgtemp_probe() and pkgtemp_remove()
Jan Beulich [Mon, 13 Sep 2010 10:14:43 +0000 (10:14 +0000)]
x86/hwmon: don't leak device attribute file from pkgtemp_probe() and pkgtemp_remove()

While apparently inherited from coretemp source, this particular error handling
cleanup and exit path wasn't copied properly (or perhaps got discarded
intermediately and not re-added properly later).

Signed-off-by: Jan Beulich <[email protected]>
Cc: Fenghua Yu <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
(added device file removal in pkgtemp_remove)

14 years agox86/hwmon: avoid deadlock on CPU removal in pkgtemp
Jan Beulich [Mon, 13 Sep 2010 10:11:05 +0000 (10:11 +0000)]
x86/hwmon: avoid deadlock on CPU removal in pkgtemp

pkgtemp_device_remove(), holding the list protecting mutex, calls
pkgtemp_device_add(), which itself wants to acquire the same mutex.
Holding the mutex over the entire loop body in pkgtemp_device_remove()
isn't really necessary, as long as the loop gets exited after
processing the matched CPU.

Once exiting the loop after removing an eventual match, there's no
need for using the "safe" list iterator anymore.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Fenghua Yu <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agox86/hwmon: fix module init for hotplug-but-no-device-found case
Jan Beulich [Mon, 13 Sep 2010 10:05:51 +0000 (10:05 +0000)]
x86/hwmon: fix module init for hotplug-but-no-device-found case

In commit 0dca94baeab4a1a514841b0a4c8e3a51dfb4d5ae the call to
platform_driver_unregister() was made conditional upon !HOTPLUG_CPU,
but the return value from coretemp_init() was left to indicate an
error. This isn't correct, as the negative return value indicates to
the module loader that initialization failed, which isn't intended
here and results in dangling pointers.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Chen Gong <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agohwmon: (lis3) Fix Oops with NULL platform data
Takashi Iwai [Thu, 23 Sep 2010 17:01:11 +0000 (10:01 -0700)]
hwmon: (lis3) Fix Oops with NULL platform data

The recent addition of threaded irq handler causes a NULL dereference
when used with hp_accel driver, which has NULL pdata.

Acked-by: Samu Onkalo <[email protected]>
Cc: <[email protected]>
Signed-off-by: Takashi Iwai <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
14 years agoUSB: update Kconfig help text for CONFIG_USB_SUSPEND
Alan Stern [Fri, 24 Sep 2010 15:41:46 +0000 (11:41 -0400)]
USB: update Kconfig help text for CONFIG_USB_SUSPEND

This patch (as1429) updates the Kconfig help text for
CONFIG_USB_SUSPEND.  The power/level file is now deprecated; we should
tell people to use power/control instead.

Signed-off-by: Alan Stern <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: restart request on clearing endpoint halt
Sergei Shtylyov [Sat, 11 Sep 2010 18:23:12 +0000 (13:23 -0500)]
usb: musb: gadget: restart request on clearing endpoint halt

Commit 46034dca515bc4ddca0399ae58106d1f5f0d809f (USB: musb_gadget_ep0: stop
abusing musb_gadget_set_halt()) forgot to restart a queued request after
clearing the endpoint halt feature. This results in a couple of USB resets
while enumerating the file-backed storage gadget due to CSW packet not being
sent for the MODE SENSE(10) command.

Signed-off-by: Sergei Shtylyov <[email protected]>
Cc: [email protected]
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: host: Issue a memory barrier before starting DMA
Santosh Shilimkar [Mon, 20 Sep 2010 07:32:07 +0000 (10:32 +0300)]
usb: musb: host: Issue a memory barrier before starting DMA

This patch fixes the issue which was observed while transfering
a large file ( > 20MB) over USB (OMAP MUSB controller acts as USB host)
to an attached USB thumb drive.

It was found that CDB field of CBW packet was set to 0x0. This was
due to missing a barrier before DMA engine starts transfer.
This  buffer is  allocated using dma_alloc_coherent which gives
non-cacheble but bufferable memory and hence needed a write
memory barrier to flush the write buffer.

More info on this thread is here:
http://www.spinics.net/lists/linux-omap/msg33987.html

Signed-off-by: Santosh Shilimkar <[email protected]>
Signed-off-by: Maulik Mankad <[email protected]>
Cc: Russell King <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: fix dma length in txstate
Ming Lei [Mon, 20 Sep 2010 07:32:06 +0000 (10:32 +0300)]
usb: musb: gadget: fix dma length in txstate

DMA length should not go beyond the availabe space
of request buffer, so fix it.

Also set max_len of cppi dma channel as max size of
int type, so make musb dma handling happier.

Signed-off-by: Ming Lei <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: complete request only if data is transfered over
Ming Lei [Mon, 20 Sep 2010 07:32:05 +0000 (10:32 +0300)]
usb: musb: gadget: complete request only if data is transfered over

Complete the current request only if the data transfer is over.

Signed-off-by: Ming Lei <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: fix DMA length for OUT transfer
Ming Lei [Mon, 20 Sep 2010 07:32:04 +0000 (10:32 +0300)]
usb: musb: gadget: fix DMA length for OUT transfer

DMA length should not go beyond the availabe space of request buffer,
so fix it.

Signed-off-by: Ming Lei <[email protected]>
Acked-by: Anand Gadiyar <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: enable autoclear for OUT transfer in both DMA 0 and DMA 1
Ming Lei [Mon, 20 Sep 2010 07:32:03 +0000 (10:32 +0300)]
usb: musb: gadget: enable autoclear for OUT transfer in both DMA 0 and DMA 1

This patch fixes one bugs of OUT transfer in double buffer case:

-the current code only enable autoclear for dma mode 1, and not
for dma mode 0

Without this patch, test #5 of usbtest can't be passed if we
configure musb as g_zero and use fifo mode 3 to enable double
buffer mode.

With this patch and the following patch(fix dma length),
on my beagle B5, test#5(queued bulk out) may go beyond
18Mbyte/s(seems dma mode 0 is quicker in double buffer case)
if musb is configured as g_zero and fifo mode 3 is taken, follows
the test command:

    #./testusb -D DEV_NAME -c 1024 -t 5 -s 32768 -g 8   [1]

Also I have tested this patch can't make g_ether broken.

[1],source of testusb : tools/usb/testusb.c under linux kernel;

Signed-off-by: Ming Lei <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: fix bulk IN infinit hangs in double buffer case
Ming Lei [Mon, 20 Sep 2010 07:32:02 +0000 (10:32 +0300)]
usb: musb: gadget: fix bulk IN infinit hangs in double buffer case

This patch fixes one infinite hang of bulk IN transfer in double buffer
case, the hang can be observed easily by test #6 of usbtest if musb is
configured as g_zero and fifo mode 3 is taken to enable double fifo.

In fact, the patch only removes the check for non-empty fifo before
loading data from new request into fifo since the check is not correct:

-in double buffer case, fifo may accommodate more than one packet,
even though it has contained one packet already and is non-empty

-since last DMA is completed before calling musb_g_tx, it is sure
that fifo may accommodate at least one packet

Without applying the patch, new requst enqueued from .complte may not
have a chance to be loaded into fifo, then will never be completed and
cause infinite hangs.

With the patch, on my beagle B5, test#6(queued bulk in) can be passed and
test result may go beyond 33Mbyte/s if musb is configured as g_zero and
fifo mode 3 is taken, follows the test command:

#testusb -D DEV_NAME -c 1024 -t 6 -s 32768 -g 8   [1]

[1],
    -source of testusb : tools/usb/testusb.c under linux kernel;

Signed-off-by: Ming Lei <[email protected]>
Acked-by: Anand Gadiyar <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agousb: musb: gadget: fix kernel panic if using out ep with FIFO_TXRX style
Ming Lei [Mon, 20 Sep 2010 07:32:01 +0000 (10:32 +0300)]
usb: musb: gadget: fix kernel panic if using out ep with FIFO_TXRX style

For shared fifo hw endpoint(with FIFO_TXRX style), only ep_in
field of musb_hw_ep is intialized in musb_g_init_endpoints, and
ep_out is not initialized, but musb_g_rx and rxstate may access
ep_out field of musb_hw_ep by the method below:

musb_ep = &musb->endpoints[epnum].ep_out

which can cause the kernel panic[1] below, this patch fixes the issue
by getting 'musb_ep' from '&musb->endpoints[epnum].ep_in' for shared fifo
endpoint.

[1], kernel panic
[root@OMAP3EVM /]# musb_interrupt 1583: ** IRQ peripheral usb0008 tx0000 rx4000
musb_stage0_irq 460: <== Power=f0, DevCtl=99, int_usb=0x8
musb_g_rx 772: <== (null), rxcsr 4007 ffffffe8
musb_g_rx 786:  iso overrun on ffffffe8
Unable to handle kernel NULL pointer dereference at virtual address 00000008
pgd = c0004000
[00000008] *pgd=00000000
Internal error: Oops: 17 [#1] PREEMPT
last sysfs file: /sys/devices/platform/musb_hdrc/usb1/usb_device/usbdev1.1/dev
Modules linked in: g_zero
CPU: 0    Tainted: G        W    (2.6.35-rc6-gkh-wl+ #92)
PC is at musb_g_rx+0xfc/0x2ec
LR is at vprintk+0x3f4/0x458
pc : [<c02c07a4>]    lr : [<c006ccb0>]    psr: 20000193
sp : c760bd78  ip : c03c9d70  fp : c760bdbc
r10: 00000000  r9 : fa0ab1e0  r8 : 0000000e
r7 : c7e80158  r6 : ffffffe8  r5 : 00000001  r4 : 00004003
r3 : 00010003  r2 : c760bcd8  r1 : c03cd030  r0 : 0000002e
Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
Control: 10c5387d  Table: 8778c019  DAC: 00000017
Process kmemleak (pid: 421, stack limit = 0xc760a2e8)
Stack: (0xc760bd78 to 0xc760c000)
bd60:                                                       ffffffe8 c04b1b58
bd80: ffffffe8 c7c01ac0 00000000 c7e80d24 c0084238 00000001 00000001 c7e80158
bda0: 0000000e 00000008 00000099 000000f0 c760be04 c760bdc0 c02bcd68 c02c06b4
bdc0: 00000099 00000008 00004000 c760bdd8 c03cc4f8 00000000 00000002 c7e80158
bde0: c7d2e300 60000193 c760a000 0000005c 00000000 00000000 c760be24 c760be08
be00: c02bcecc c02bc1ac c7d2e300 c7d2e300 0000005c c760a000 c760be54 c760be28
be20: c00ad698 c02bce6c 00000000 c7d2e300 c067c258 0000005c c067c294 00000001
be40: c760a000 00000000 c760be74 c760be58 c00af984 c00ad5fc 0000005c 00000000
be60: 00000000 00000002 c760be8c c760be78 c0039080 c00af8d0 ffffffff fa200000
be80: c760beec c760be90 c0039b6c c003900c 00000001 00000000 c7d1e240 00000000
bea0: 00000000 c068bae8 00000000 60000013 00000001 00000000 00000000 c760beec
bec0: c0064ecc c760bed8 c00ff7d0 c003a0a8 60000013 ffffffff 00000000 c068bae8
bee0: c760bf24 c760bef0 c00ff7d0 c0064ec4 00000001 00000000 c00ff700 00000000
bf00: c0087f00 00000000 60000013 c0d76a70 c0e23795 00000001 c760bf4c c760bf28
bf20: c00ffdd8 c00ff70c c068bb08 c068bae8 60000013 c0100938 c068bb30 00000000
bf40: c760bf84 c760bf50 c010014c c00ffd84 00000001 00000000 c010000c 00012c00
bf60: c7c33f04 00012c00 c7c33f04 00000000 c0100938 00000000 c760bf9c c760bf88
bf80: c01009a8 c0100018 c760bfa8 c7c33f04 c760bff4 c760bfa0 c0088000 c0100944
bfa0: c760bf98 00000000 00000000 00000001 dead4ead ffffffff ffffffff c08ba2bc
bfc0: 00000000 c049e7fa 00000000 c0087f70 c760bfd0 c760bfd0 c7c33f04 c0087f70
bfe0: c006f5e8 00000013 00000000 c760bff8 c006f5e8 c0087f7c 7f0004ff df2000ff
Backtrace:
[<c02c06a8>] (musb_g_rx+0x0/0x2ec) from [<c02bcd68>] (musb_interrupt+0xbc8/0xcc0)
[<c02bc1a0>] (musb_interrupt+0x0/0xcc0) from [<c02bcecc>] (generic_interrupt+0x6c/0x84)
[<c02bce60>] (generic_interrupt+0x0/0x84) from [<c00ad698>] (handle_IRQ_event+0xa8/0x1ec)
 r7:c760a000 r6:0000005c r5:c7d2e300 r4:c7d2e300
[<c00ad5f0>] (handle_IRQ_event+0x0/0x1ec) from [<c00af984>] (handle_level_irq+0xc0/0x13c)
[<c00af8c4>] (handle_level_irq+0x0/0x13c) from [<c0039080>] (asm_do_IRQ+0x80/0xa0)
 r7:00000002 r6:00000000 r5:00000000 r4:0000005c
[<c0039000>] (asm_do_IRQ+0x0/0xa0) from [<c0039b6c>] (__irq_svc+0x4c/0xb4)
Exception stack(0xc760be90 to 0xc760bed8)
be80:                                     00000001 00000000 c7d1e240 00000000
bea0: 00000000 c068bae8 00000000 60000013 00000001 00000000 00000000 c760beec
bec0: c0064ecc c760bed8 c00ff7d0 c003a0a8 60000013 ffffffff
 r5:fa200000 r4:ffffffff
[<c0064eb8>] (sub_preempt_count+0x0/0x100) from [<c00ff7d0>] (find_and_get_object+0xd0/0x110)
 r5:c068bae8 r4:00000000
[<c00ff700>] (find_and_get_object+0x0/0x110) from [<c00ffdd8>] (scan_block+0x60/0x104)
 r8:00000001 r7:c0e23795 r6:c0d76a70 r5:60000013 r4:00000000
[<c00ffd78>] (scan_block+0x0/0x104) from [<c010014c>] (kmemleak_scan+0x140/0x484)
[<c010000c>] (kmemleak_scan+0x0/0x484) from [<c01009a8>] (kmemleak_scan_thread+0x70/0xcc)
 r8:00000000 r7:c0100938 r6:00000000 r5:c7c33f04 r4:00012c00
[<c0100938>] (kmemleak_scan_thread+0x0/0xcc) from [<c0088000>] (kthread+0x90/0x98)
 r5:c7c33f04 r4:c760bfa8
[<c0087f70>] (kthread+0x0/0x98) from [<c006f5e8>] (do_exit+0x0/0x684)
 r7:00000013 r6:c006f5e8 r5:c0087f70 r4:c7c33f04
Code: e3002312 e58d6000 e2833e16 eb0422d5 (e5963020)
---[ end trace f3d5e96f75c297b7 ]---

Signed-off-by: Ming Lei <[email protected]>
Reviewed-by: Sergei Shtylyov <[email protected]>
Cc: David Brownell <[email protected]>
Cc: Anand Gadiyar <[email protected]>
Cc: Mike Frysinger <[email protected]>
Cc: Sergei Shtylyov <[email protected]>
Cc: stable <[email protected]>
Signed-off-by: Felipe Balbi <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agoUSB: fix bug in initialization of interface minor numbers
Alan Stern [Tue, 21 Sep 2010 19:01:53 +0000 (15:01 -0400)]
USB: fix bug in initialization of interface minor numbers

Recent changes in the usbhid layer exposed a bug in usbcore.  If
CONFIG_USB_DYNAMIC_MINORS is enabled then an interface may be assigned
a minor number of 0.  However interfaces that aren't registered as USB
class devices also have their minor number set to 0, during
initialization.  As a result usb_find_interface() may return the
wrong interface, leading to a crash.

This patch (as1418) fixes the problem by initializing every
interface's minor number to -1.  It also cleans up the
usb_register_dev() function, which besides being somewhat awkwardly
written, does not unwind completely on all its error paths.

Signed-off-by: Alan Stern <[email protected]>
Tested-by: Philip J. Turmel <[email protected]>
Tested-by: Gabriel Craciunescu <[email protected]>
Tested-by: Alex Riesen <[email protected]>
Tested-by: Matthias Bayer <[email protected]>
CC: Jiri Kosina <[email protected]>
Cc: stable <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agoStaging: ti-st: remove st_get_plat_device
Pavan Savoy [Thu, 19 Aug 2010 18:08:51 +0000 (14:08 -0400)]
Staging: ti-st: remove st_get_plat_device

In order to support multiple ST platform devices, a new symbol
'st_get_plat_device' earlier needed to be exported by the arch/XX/brd-XX.c
file which intends to add the ST platform device.

On removing this dependency, now inside ST driver maintain the array of
ST platform devices that would be registered.
As of now let id=0, as and when we end up having such platforms
where mutliple ST devices can exist, id would come from
protocol drivers (BT, FM and GPS) as to on which platform device
they want to register to.

Signed-off-by: Pavan Savoy <[email protected]>
Acked-by: Randy Dunlap <[email protected]>
Cc: Anca Emanuel <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
14 years agodrm/i915/dp: Wait for PP_CONTROL to take effect.
Hette Visser [Fri, 24 Sep 2010 09:51:30 +0000 (10:51 +0100)]
drm/i915/dp: Wait for PP_CONTROL to take effect.

This patch fixes the black screen bug on Dell e6510, by
adding two delays to give the eDP panel time to turn on before we
continue with the next write.

300ms is rather arbitray and a rather long sleep, we need to find a way
of refining this value.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=29278
Signed-off-by: Chris Wilson <[email protected]>
Acked-by: Jesse Barnes <[email protected]>
14 years agosome clean up to intel-gtt.c
Jan Beulich [Fri, 24 Sep 2010 12:25:30 +0000 (13:25 +0100)]
some clean up to intel-gtt.c

In commit e517a5e97080bbe52857bd0d7df9b66602d53c4d the call to
map_page_into_agp() got removed from intel_i830_setup_flush(), but the
counterpart call from intel_i830_fini_flush() to unmap_page_from_agp()
was left in place.

Additionally, the page allocated here never gets its physical address
used for sending to hardware, so there's no need to allocate it with
GFP_DMA32. Nor is __GFP_ZERO really necessary, as the page is used
only to store data to force flushing of some internal processor state.

Signed-off-by: Jan Beulich <[email protected]>
Cc: Eric Anholt <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Parse the eDP link configuration from the vBIOS
Chris Wilson [Fri, 24 Sep 2010 09:24:28 +0000 (10:24 +0100)]
drm/i915: Parse the eDP link configuration from the vBIOS

First step, lets have a look at the values for troublesome panels and
see if they may be used to improve our link training.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/lvds: Use the GMBUS pin if specified in VBT
Chris Wilson [Fri, 24 Sep 2010 00:15:02 +0000 (01:15 +0100)]
drm/i915/lvds: Use the GMBUS pin if specified in VBT

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Use an uninterruptible wait for page-flips during modeset
Chris Wilson [Thu, 23 Sep 2010 22:04:43 +0000 (23:04 +0100)]
drm/i915: Use an uninterruptible wait for page-flips during modeset

We need to drain the pending flips prior to disabling the pipe during
modeset, and these need to be done in an uninterruptible fashion.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Remove unused dev_priv->panel_wants_dither
Chris Wilson [Thu, 23 Sep 2010 21:12:23 +0000 (22:12 +0100)]
drm/i915: Remove unused dev_priv->panel_wants_dither

This is now private to the DVO connector, remove it from the main device
private.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/ringbuffer: Fix sign of ring space.
Chris Wilson [Thu, 23 Sep 2010 16:45:39 +0000 (17:45 +0100)]
drm/i915/ringbuffer: Fix sign of ring space.

As we presume space is signed when computing and looking for wrap along,
make it so.

Reported-by: Owain G. Ainsworth <[email protected]>
Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915: Remove idle timer debugging messages
Chris Wilson [Thu, 23 Sep 2010 15:45:52 +0000 (16:45 +0100)]
drm/i915: Remove idle timer debugging messages

These have served their purpose and are now just noise in the debug
stream.

Signed-off-by: Chris Wilson <[email protected]>
14 years agodrm/i915/lvds: Probe DDC on creation
Chris Wilson [Thu, 23 Sep 2010 10:16:49 +0000 (11:16 +0100)]
drm/i915/lvds: Probe DDC on creation

Try to validate the panel's connection by writing to address 0xA0.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=18072
Signed-off-by: Chris Wilson <[email protected]>
14 years agoALSA: hda - Fix auto-parse of SPDIF input of Realtek codecs
Takashi Iwai [Fri, 24 Sep 2010 07:09:42 +0000 (09:09 +0200)]
ALSA: hda - Fix auto-parse of SPDIF input of Realtek codecs

The SPDIF in audio widget must be searched through the list as the widget
that contains the given pin as the connection source.  The current code
was implemented in a reverse way.

Signed-off-by: Takashi Iwai <[email protected]>
14 years agodrm/nv50: use pll type rather than register for CRTC PLL
Ben Skeggs [Thu, 23 Sep 2010 23:17:02 +0000 (09:17 +1000)]
drm/nv50: use pll type rather than register for CRTC PLL

Just in case someone, somewhere, does something difficult.  This also
removes one path that was different between fermi and non-fermi.

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: v3.0 pll limits tables have type<->register mapping too
Ben Skeggs [Thu, 23 Sep 2010 23:15:50 +0000 (09:15 +1000)]
drm/nouveau: v3.0 pll limits tables have type<->register mapping too

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Misc cleanup of the PM code.
Francisco Jerez [Thu, 23 Sep 2010 18:36:42 +0000 (20:36 +0200)]
drm/nouveau: Misc cleanup of the PM code.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Add support for I2C hardware monitoring devices.
Francisco Jerez [Thu, 23 Sep 2010 19:00:40 +0000 (21:00 +0200)]
drm/nouveau: Add support for I2C hardware monitoring devices.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Refactor nouveau_temp_get() into engine pointers.
Francisco Jerez [Thu, 23 Sep 2010 18:58:38 +0000 (20:58 +0200)]
drm/nouveau: Refactor nouveau_temp_get() into engine pointers.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Double the perf table memory clocks on pre-G71 cards.
Francisco Jerez [Thu, 23 Sep 2010 13:34:09 +0000 (15:34 +0200)]
drm/nouveau: Double the perf table memory clocks on pre-G71 cards.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Fix parsing of the temperature constant correction.
Francisco Jerez [Thu, 23 Sep 2010 15:01:05 +0000 (17:01 +0200)]
drm/nouveau: Fix parsing of the temperature constant correction.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Add sane sensor correction defaults for nv4a.
Francisco Jerez [Thu, 23 Sep 2010 14:27:14 +0000 (16:27 +0200)]
drm/nouveau: Add sane sensor correction defaults for nv4a.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nv40: fix reading temp value
Francesco Marella [Thu, 23 Sep 2010 07:14:22 +0000 (09:14 +0200)]
drm/nv40: fix reading temp value

Signed-off-by: Francesco Marella <[email protected]>
Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Don't try to parse a GPIO table on early DCBv2.2 BIOSes.
Francisco Jerez [Wed, 22 Sep 2010 21:25:00 +0000 (23:25 +0200)]
drm/nouveau: Don't try to parse a GPIO table on early DCBv2.2 BIOSes.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nv10: Don't oops if the card wants to switch to a channel with no grctx.
Francisco Jerez [Tue, 21 Sep 2010 17:03:19 +0000 (19:03 +0200)]
drm/nv10: Don't oops if the card wants to switch to a channel with no grctx.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: fix panels using straps-based mode detection
Ben Skeggs [Thu, 23 Sep 2010 06:37:39 +0000 (16:37 +1000)]
drm/nouveau: fix panels using straps-based mode detection

nouveau_bios_fp_mode() zeroes the mode struct before filling in relevant
entries.  This nukes the mode id initialised by drm_mode_create(), and
causes warnings from idr when we try to remove the mode.

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: fix chipset vs card_type thinko
Ben Skeggs [Thu, 23 Sep 2010 05:23:16 +0000 (15:23 +1000)]
drm/nouveau: fix chipset vs card_type thinko

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nv50: assume smaller tiles for bo moves
Ben Skeggs [Thu, 23 Sep 2010 05:21:17 +0000 (15:21 +1000)]
drm/nv50: assume smaller tiles for bo moves

Somehow fixes some corruption seen in KDE..

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: add debugfs file to forcibly evict everything from vram
Ben Skeggs [Thu, 23 Sep 2010 04:45:52 +0000 (14:45 +1000)]
drm/nouveau: add debugfs file to forcibly evict everything from vram

Very useful for debugging buffer migration issues.

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Add temperature support (vbios parsing, readings, hwmon)
Martin Peres [Wed, 22 Sep 2010 18:54:22 +0000 (20:54 +0200)]
drm/nouveau: Add temperature support (vbios parsing, readings, hwmon)

Signed-off-by: Martin Peres <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: correct INIT_DP_CONDITION subcondition 5
Ben Skeggs [Tue, 21 Sep 2010 02:10:51 +0000 (12:10 +1000)]
drm/nouveau: correct INIT_DP_CONDITION subcondition 5

Fixes DP output on a GTX 465 board I have.

Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nouveau: Parse old style perf tables.
Francisco Jerez [Mon, 20 Sep 2010 14:18:28 +0000 (16:18 +0200)]
drm/nouveau: Parse old style perf tables.

Used on nv17-nv28, they contain memory clocks and timings, only one of
the table entries can actually be used, depending on the RAMCFG
straps, and it's usually higher than the frequency programmed on boot
by the BIOS.

The memory timings listed in table version 0x1x are used to init the
0x12xx range but they aren't required for reclocking to work.

Signed-off-by: Francisco Jerez <[email protected]>
Signed-off-by: Ben Skeggs <[email protected]>
14 years agodrm/nv50: flush bar1 vm / dma object setup before poking 0x1708
Ben Skeggs [Mon, 20 Sep 2010 08:27:39 +0000 (18:27 +1000)]
drm/nv50: flush bar1 vm / dma object setup before poking 0x1708

Should fix issues noticed on NVAC (MacBook Pro / ION) since gpuobj
rework.

Signed-off-by: Ben Skeggs <[email protected]>
This page took 0.112936 seconds and 4 git commands to generate.