05 Oct, 2011
9 commits
-
* 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
drm/radeon/kms: fix channel_remap setup (v2)
drm/radeon: Set cursor x/y to 0 when x/yorigin > 0.
drm/radeon: Update AVIVO cursor coordinate origin before x/yorigin calculation.
drm/radeon: Simplify cursor x/yorigin calculation.
drm/radeon/kms: fix cursor image off-by-one error
drm/radeon/kms: Fix logic error in DP HPD handler
drm/radeon/kms: add retry limits for native DP aux defer
drm/radeon/kms: fix regression in DP aux defer handling -
* 'spi/merge' of git://git.secretlab.ca/git/linux-2.6:
spi-topcliff-pch: Fix overrun issue
spi-topcliff-pch: Add recovery processing in case FIFO overrun error occurs
spi-topcliff-pch: Fix CPU read complete condition issue
spi-topcliff-pch: Fix SSN Control issue
spi-topcliff-pch: add tx-memory clear after complete transmitting -
Add the ability to disable PCI-E MPS turning and using the BIOS
configured MPS defaults. Due to the number of issues recently
discovered on some x86 chipsets, make this the default behavior.Also, add the option for peer to peer DMA MPS configuration. Peer to
peer DMA is outside the scope of this patch, but MPS configuration could
prevent it from working by having the MPS on one root port different
than the MPS on another. To work around this, simply make the system
wide MPS the smallest possible value (128B).Signed-off-by: Jon Mason
Acked-by: Benjamin Herrenschmidt
Signed-off-by: Linus Torvalds -
Most asics just use the hw default value which requires
no explicit programming. For those that need a different
value, the vbios will program it properly. As such,
there's no need to program these registers explicitly
in the driver. Changing MC_SHARED_CHREMAP requires a reload
of all data in vram otherwise its contents will be scambled.Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=40103v2: drop now unused channel_remap functions.
Signed-off-by: Alex Deucher
Reviewed-by: Michel Dänzer
Cc: stable@kernel.org
Signed-off-by: Dave Airlie -
We found that adding load, Rx data sometimes drops.(with DMA transfer mode)
The cause is that before starting Rx-DMA processing, Tx-DMA processing starts.
This causes FIFO overrun occurs.This patch fixes the issue by modifying FIFO tx-threshold and DMA descriptor
size like below.Current this patch
Rx-descriptor 4Byte+12Byte*341 --> 12Byte*340-4Byte-12Byte
Rx-threshold (Not modified)
Tx-descriptor 4Byte+12Byte*341 --> 16Byte-12Byte*340
Rx-threshold 12Byte --> 2ByteSigned-off-by: Tomoya MORINAGA
Signed-off-by: Grant Likely -
Add recovery processing in case FIFO overrun error occurs with DMA transfer mode.
Signed-off-by: Tomoya MORINAGA
Signed-off-by: Grant Likely -
We found Rx data sometimes drops.(with non-DMA transfer mode)
The cause is read complete condition is not true.This patch fixes the issue.
Signed-off-by: Tomoya MORINAGA
Signed-off-by: Grant Likely -
During processing 1 command/data series,
SSN should keep LOW.
However, currently, SSN becomes HIGH.
This patch fixes the issue.Signed-off-by: Tomoya MORINAGA
Signed-off-by: Grant Likely -
Currently, in case of reading date from SPI flash,
command is sent twice.
The cause is that tx-memory clear processing is missing .
This patch adds the tx-momory clear processing.Signed-off-by: Tomoya MORINAGA
Signed-off-by: Grant Likely
04 Oct, 2011
10 commits
-
Commit 2a7fade7e03 ("hwmon: lis3: Power on corrections") caused a
regression on HP laptops with 8bit chip. Writing CTRL2_BOOT_8B bit seems
clearing the BIOS setup, and no proper interrupt for DriveGuard will be
triggered any more.Since the init code there is basically only for embedded devices, put a
pdata check so that the problematic initialization will be skipped for
hp_accel stuff.Signed-off-by: Takashi Iwai
Cc: Eric Piel
Cc: Samu Onkalo
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
* 'hwmon-for-linus' of git://github.com/groeck/linux:
hwmon: (coretemp) Avoid leaving around dangling pointer
hwmon: (coretemp) Fixup platform device ID change -
Simon Kirby reported that on his RAID setup with idedisk underneath
the box OOMs after a couple of days of runtime. Running with
CONFIG_DEBUG_KMEMLEAK pointed to idedisk_prep_fn() which unconditionally
allocates an ide_cmd struct. However, ide_requeue_and_plug() can be
called more than once per request, either from the request issue or the
IRQ handler path and do blk_peek_request() ends up in idedisk_prep_fn()
repeatedly, allocating a struct ide_cmd everytime and "forgetting" the
previous pointer.Make sure the code reuses the old allocated chunk.
Reported-and-tested-by: Simon Kirby
Cc: [ 39.x, 3.0.x ]
Link: http://marc.info/?l=linux-kernel&m=131667641517919
Link: http://lkml.kernel.org/r/20110922072643.GA27232@hostway.ca
Signed-off-by: Borislav Petkov
Signed-off-by: David S. Miller -
Apart from the obvious cleanup, this should make the line
cursor_end = x - xorigin + w;
correct now.
Signed-off-by: Michel Dänzer
Reviewed-by: Alex Deucher
Signed-off-by: Dave Airlie -
Fixes cursor disappearing prematurely when moving off a top/left edge which
is not located at the desktop top/left edge.Signed-off-by: Michel Dänzer
Cc: stable@kernel.org
Reviewed-by: Alex Deucher
Signed-off-by: Dave Airlie -
Signed-off-by: Michel Dänzer
Reviewed-by: Alex Deucher
Signed-off-by: Dave Airlie -
The mouse cursor hotspot calculation when the cursor is partially off the
top or left side of the screen was off by one.Fixes https://bugs.freedesktop.org/show_bug.cgi?id=41158
Signed-off-by: Nicholas Miell
Reviewed-by: Michel Dänzer
Reviewed-by: Alex Deucher
Signed-off-by: Dave Airlie -
Only disable the pipe if the monitor is physically
disconnected. The previous logic also disabled the
pipe if the link was trained.Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=41248Signed-off-by: Alex Deucher
Cc: stable@kernel.org
Signed-off-by: Dave Airlie -
The previous code could potentially loop forever. Limit
the number of DP aux defer retries to 4 for native aux
transactions, same as i2c over aux transactions.Noticed by: Brad Campbell
Signed-off-by: Alex Deucher
Cc: Brad Campbell
Cc: stable@kernel.org
Signed-off-by: Dave Airlie -
An incorrect ordering in the error checking code lead
to DP aux defer being skipped in the aux native write
path. Move the bytes transferred check (ret == 0)
below the defer check.Tracked down by: Brad Campbell
Fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=41121Signed-off-by: Alex Deucher
Cc: Brad Campbell
Cc: stable@kernel.org
Signed-off-by: Dave Airlie
03 Oct, 2011
1 commit
-
* 'for-linus' of git://git.infradead.org/users/sameo/mfd-2.6:
mfd: Fix generic irq chip ack function name for jz4740-adc
30 Sep, 2011
3 commits
-
* 'v4l_for_linus' of git://linuxtv.org/mchehab/for_linus:
[media] omap3isp: Fix build error in ispccdc.c
[media] uvcvideo: Fix crash when linking entities
[media] v4l: Make sure we hold a reference to the v4l2_device before using it
[media] v4l: Fix use-after-free case in v4l2_device_release
[media] uvcvideo: Set alternate setting 0 on resume if the bus has been reset
[media] OMAP_VOUT: Fix build break caused by update_mode removal in DSS2 -
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
[S390] cio: fix cio_tpi ignoring adapter interrupts
[S390] gmap: always up mmap_sem properly
[S390] Do not clobber personality flags on exec -
* 'drm-intel-fixes' of git://people.freedesktop.org/~keithp/linux:
drm/i915: FBC off for ironlake and older, otherwise on by default
drm/i915: Enable SDVO hotplug interrupts for HDMI and DVI
drm/i915: Enable dither whenever display bpc < frame buffer bpc
28 Sep, 2011
10 commits
-
* git://github.com/davem330/net:
ipv6-multicast: Fix memory leak in IPv6 multicast.
ipv6: check return value for dst_alloc
net: check return value for dst_alloc
ipv6-multicast: Fix memory leak in input path.
bnx2x: add missing break in bnx2x_dcbnl_get_cap
bnx2x: fix WOL by enablement PME in config space
bnx2x: fix hw attention handling
net: fix a typo in Documentation/networking/scaling.txt
ath9k: Fix a dma warning/memory leak
rtlwifi: rtl8192cu: Fix unitialized struct
iwlagn: fix dangling scan request
batman-adv: do_bcast has to be true for broadcast packets only
cfg80211: Fix validation of AKM suites
iwlegacy: do not use interruptible waits
iwlegacy: fix command queue timeout
ath9k_hw: Fix Rx DMA stuck for AR9003 chips -
* git://bedivere.hansenpartnership.com/git/scsi-rc-fixes-2.6:
[SCSI] 3w-9xxx: fix iommu_iova leak
[SCSI] cxgb3i: convert cdev->l2opt to use rcu to prevent NULL dereference
[SCSI] scsi: qla4xxx needs libiscsi.o
[SCSI] libsas: fix failure to revalidate domain for anything but the first expander child.
[SCSI] aacraid: reset should disable MSI interrupt -
Storing the struct temp_data pointer allocated from create_core_data()
when returning an error has the potential of leaving around a pointer
to freed memory. Reset it to NULL for error returns.Reported-by: Jan Beulich
Signed-off-by: Guenter Roeck
Acked-by: Jean Delvare -
With recent change "hwmon: (coretemp) don't use kernel assigned CPU
number as platform device ID", the microcode check is now running on
random CPU. Fix that by checking the microcode before creating the
platform device rather than at probe time.Also avoid calling TO_PHYS_ID(cpu) twice in the same function, it's
expensive.Signed-off-by: Jean Delvare
Cc: Jan Beulich
Cc: Guenter Roeck
Signed-off-by: Guenter Roeck -
* 'pm-fixes' of git://github.com/rjwysocki/linux-pm:
PM / Clocks: Do not acquire a mutex under a spinlock -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Use register name to initialize attention mask
Signed-off-by: Dmitry Kravkov
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller
27 Sep, 2011
5 commits
-
* 'hwmon-for-linus' of git://github.com/groeck/linux:
hwmon: (coretemp) remove struct platform_data * parameter from create_core_data()
hwmon: (coretemp) constify static data
hwmon: (coretemp) don't use kernel assigned CPU number as platform device ID
hwmon: (ds620) Fix handling of negative temperatures
hwmon: (w83791d) rename prototype parameter from 'register' to 'reg'
hwmon: (coretemp) Don't use threshold registers for tempX_max
hwmon: (coretemp) Let the user force TjMax
hwmon: (coretemp) Drop duplicate function get_pkg_tjmax -
proper dma_unmapping and freeing of skb's has to be done in the rx
cleanup for EDMA chipsets when the device is unloaded and this also
seems to address the following warning which shows up occasionally when
the device is unloadedCall Trace:
[] warn_slowpath_common+0x72/0xa0
[] ? dma_debug_device_change+0x19c/0x200
[] ? dma_debug_device_change+0x19c/0x200
[] warn_slowpath_fmt+0x33/0x40
[] dma_debug_device_change+0x19c/0x200
[] notifier_call_chain+0x82/0xb0
[] __blocking_notifier_call_chain+0x60/0x90
[] blocking_notifier_call_chain+0x1f/0x30
[] __device_release_driver+0xa4/0xc0
[] driver_detach+0x97/0xa0
[] bus_remove_driver+0x6c/0xe0
[] ? sysfs_addrm_finish+0x4b/0x60
[] driver_unregister+0x49/0x80
[] ? sysfs_remove_file+0x14/0x20
[] pci_unregister_driver+0x32/0x80
[] ath_pci_exit+0x12/0x20 [ath9k]
[] ath9k_exit+0x17/0x36 [ath9k]
[] ? mutex_unlock+0xd/0x10
[] sys_delete_module+0x13f/0x200
[] ? sys_munmap+0x4b/0x60
[] ? restore_all+0xf/0xf
[] ? spurious_fault+0xe0/0xe0
[] ? trace_hardirqs_on_caller+0xf4/0x180
[] sysenter_do_call+0x12/0x38
---[ end trace 16e1c1521c06bcf9 ]---
Mapped at:
[] debug_dma_map_page+0x48/0x120
[] ath_rx_init+0x3f8/0x4b0 [ath9k]
[] ath9k_init_device+0x4c4/0x7b0 [ath9k]
[] ath_pci_probe+0x263/0x330 [ath9k]Signed-off-by: Mohammed Shafi Shajakhan
Signed-off-by: John W. Linville -
Driver rtl8192cu assigns a new struct rtl_tcb_desc object, but fails to
clear it.Signed-off-by: Larry Finger
Cc: Stable [2.6.39+]
Signed-off-by: John W. Linville -
If iwl_scan_initiate() fails for any reason,
priv->scan_request and priv->scan_vif are left
dangling. This can lead to a crash later when
iwl_bg_scan_completed() tries to run a pending
scan request.In practice, this seems to be very rare due to
the STATUS_SCANNING check earlier. That check,
however, is wrong -- it should allow a scan to
be queued when a reset/roc scan is going on.
When a normal scan is already going on, a new
one can't be issued by mac80211, so that code
can be removed completely. I introduced this
bug when adding off-channel support in commit
266af4c745952e9bebf687dd68af58df553cb59d.Cc: stable@kernel.org [3.0]
Reported-by: Peng Yan
Signed-off-by: Johannes Berg
Signed-off-by: Wey-Yi Guy
Signed-off-by: John W. Linville -
Commit b7ab83e (PM: Use spinlock instead of mutex in clock
management functions) introduced a regression causing clocks_mutex
to be acquired under a spinlock. This happens because
pm_clk_suspend() and pm_clk_resume() call pm_clk_acquire() under
pcd->lock, but pm_clk_acquire() executes clk_get() which causes
clocks_mutex to be acquired. Similarly, __pm_clk_remove(),
executed under pcd->lock, calls clk_put(), which also causes
clocks_mutex to be acquired.To fix those problems make pm_clk_add() call pm_clk_acquire(), so
that pm_clk_suspend() and pm_clk_resume() don't have to do that.
Change pm_clk_remove() and pm_clk_destroy() to separate
modifications of the pcd->clock_list list from the actual removal of
PM clock entry objects done by __pm_clk_remove().Reported-and-tested-by: Guennadi Liakhovetski
Signed-off-by: Rafael J. Wysocki
Acked-by: Russell King
26 Sep, 2011
2 commits
-
Ensure that adapter interrupts are correctly processed when they are
retrieved using TEST PENDING INTERRUPTION.Signed-off-by: Peter Oberparleiter
Signed-off-by: Martin Schwidefsky -
Following reports on the list, it looks like the 3e-9xxx driver will leak dma
mappings every time we get a transient queueing error back from the card.
This is because it maps the sg list in the routine that sends the command, but
doesn't unmap again in the transient failure path (even though the command is
sent back to the block layer). Fix by unmapping before returning the status.Reported-by: Chris Boot
Tested-by: Chris Boot
Acked-by: Adam Radford
Cc: stable@kernel.org
Signed-off-by: James Bottomley