commit 987fed3bf6982f2627d4fa242caa9026ef61132a Merge: ed4fc72 8b169b5 Author: Linus Torvalds Date: Thu Jun 25 17:04:37 2009 -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: (28 commits) drm: remove unused #include 's drm/radeon: fix driver initialization order so radeon kms can be builtin drm: Fix shifts which were miscalculated when converting from bitfields. drm/radeon: Clear surface registers at initialization time. drm/radeon: Don't initialize acceleration related fields of struct fb_info. drm/radeon: fix radeon kms framebuffer device drm/i915: initialize fence registers to zero when loading GEM drm/i915: Fix HDMI regression introduced in new chipset support drm/i915: fix LFP data fetch drm/i915: set TV detection mode when tv is already connected drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. drm/i915: Fix size_t handling in off-by-default debug printfs drm/i915: Don't change the blank/sync width when calculating scaled modes drm/i915: Add support for changing LVDS panel fitting using an output property. drm/i915: correct suspend/resume ordering drm/i915: Add missing dependency on Intel AGP support. drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O. drm/i915: Clarify error returns from display port aux channel I/O drm/i915: Add CLKCFG register definition drm/i915: Split array of DAC limits into separate structures. ... commit ed4fc720e1912eb36ca654d03c88c48845ed39b2 Merge: f4fa446 aa71528 Author: Linus Torvalds Date: Thu Jun 25 11:25:00 2009 -0700 Merge branch 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'futexes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: futex: request only one page from get_user_pages() commit f4fa446883959c1c5f314a043e750dbfe3728c55 Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:37 2009 +0100 usb_serial: Fix oops when unexisting usb serial device is opened. This commit 335f8514f200e63d689113d29cb7253a5c282967 has stopped properly checking if there is any usb serial associated with the tty in the close function. It happens the close function is called by releasing the terminal right after opening the device fails. As an example, open fails with a non-existing device, when probe has never been called, because the device has never been plugged. This is common in systems with static modules and no udev. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 922b13565b6a826a925f9f91f053dc9cb0d6210e Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:30 2009 +0100 acm: Fix oops when closing ACM tty device right after open has failed. This commit 10077d4a6674f535abdbe25cdecb1202af7948f1 has stopped checking if there was a valid acm device associated to the tty, which is not true right after open fails and tty subsystem tries to close the device. As an example, open fails with a non-existing device, when probe has never been called, because the device has never been plugged. This is common in systems with static modules and no udev. Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit 42dd2aa6496a2e87e496aac5494d2e1d6096c85b Author: Thadeu Lima de Souza Cascardo Date: Thu Jun 25 14:41:24 2009 +0100 acm: Return ENODEV instead of EINVAL when trying to open ACM device. This is required, otherwise a user will get a EINVAL while opening a non-existing device, instead of ENODEV. This is what I get with this patch applied now instead of an "Invalid argument". cascardo@vespa:~$ cat /dev/ttyACM0 cat: /dev/ttyACM0: No such device cascardo@vespa:~$ Signed-off-by: Thadeu Lima de Souza Cascardo Signed-off-by: Alan Cox Signed-off-by: Linus Torvalds commit a37f6b84c4f3d3ca61634a7b36bf64c6ea452271 Merge: 9d73777 d7e2f36 Author: Linus Torvalds Date: Thu Jun 25 11:23:37 2009 -0700 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 * git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6: ide cs5520: Initialize second port's interrupt number. ide: improve handling of Power Management requests ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[] ide: relax DMA info validity checking ide-cd: Improve "weird block size" error message ide-cd: Don't warn on bogus block size unless it actually matters. ide: fix handling of unexpected IRQs vs request_irq() commit 9d73777e500929b71dcfed16eec05f6760e345a6 Author: Peter Zijlstra Date: Thu Jun 25 11:58:55 2009 +0200 clarify get_user_pages() prototype Currently the 4th parameter of get_user_pages() is called len, but its in pages, not bytes. Rename the thing to nr_pages to avoid future confusion. Signed-off-by: Peter Zijlstra Signed-off-by: Linus Torvalds commit ab420e6d9c2511b862d753b70efb4e979faa0714 Author: Paul Menage Date: Thu Jun 25 00:17:15 2009 -0700 UML: Fix some apparent bitrot UML: Fix some apparent bitrot - migration of net_device methods into net_device_ops - dma_sync_single() changes Signed-off-by: Paul Menage Acked-by: Amerigo Wang -- This version is split from my earlier patch, including just the portions that ar required for Linus' tree. Fixes the following compile errors: include/linux/dma-mapping.h:113: error: redefinition of 'dma_sync_single' arch/um/include/asm/dma-mapping.h:84: error: previous definition of 'dma_sync_single' was here include/linux/dma-mapping.h: In function 'dma_sync_single': include/linux/dma-mapping.h:117: error: implicit declaration of function 'dma_sync_single_for_cpu' include/linux/dma-mapping.h: At top level: include/linux/dma-mapping.h:120: error: redefinition of 'dma_sync_sg' arch/um/include/asm/dma-mapping.h:91: error: previous definition of 'dma_sync_sg' was here include/linux/dma-mapping.h: In function 'dma_sync_sg': include/linux/dma-mapping.h:124: error: implicit declaration of function 'dma_sync_sg_for_cpu' arch/um/drivers/slirp_kern.c: In function 'slirp_init': arch/um/drivers/slirp_kern.c:35: error: 'struct net_device' has no member named 'init' Signed-off-by: Linus Torvalds commit 47749b14e55cd167632f9a27a4fc439e591e5268 Author: Ingo Molnar Date: Thu Jun 25 08:27:14 2009 +0200 i2c: fix build bug in i2c-designware.c This build error triggers on x86: drivers/built-in.o: In function `i2c_dw_init': i2c-designware.c:(.text+0x4e37ca): undefined reference to `clk_get_rate' drivers/built-in.o: In function `dw_i2c_probe': i2c-designware.c:(.devinit.text+0x51f5e): undefined reference to `clk_get' i2c-designware.c:(.devinit.text+0x51f76): undefined reference to `clk_enable' i2c-designware.c:(.devinit.text+0x520ff): undefined reference to `clk_disable' i2c-designware.c:(.devinit.text+0x52108): undefined reference to `clk_put' Because this new driver uses the clk_*() facilities which is an ARM-only thing currently. Signed-off-by: Ingo Molnar Acked-by: Baruch Siach Signed-off-by: Linus Torvalds commit aa715284b4d28cabde6c25c568d769a6be712bc8 Author: Thomas Gleixner Date: Thu Jun 25 14:27:58 2009 +0200 futex: request only one page from get_user_pages() Yanmin noticed that fault_in_user_writeable() requests 4 pages instead of one. That's the result of blindly trusting Linus' proposal :) I even looked up the prototype to verify the correctness: the argument in question is confusingly enough named "len" while in reality it means number of pages. Pointed-out-by: Yanmin Zhang Signed-off-by: Thomas Gleixner commit d7e2f36d9a92284754ed5254562766cb3d61c7ca Author: David S. Miller Date: Wed Jun 24 02:36:17 2009 -0700 ide cs5520: Initialize second port's interrupt number. In 86ccf37c6acd74cf7e4b7751ee045de19943c5a0 the driver was modified to deal with the removal of the pciirq argument to ide_pci_setup_ports(). But in the conversion only the first port's IRQ gets setup. Inspired by a patch by Bartlomiej Zolnierkiewicz., and with help from Alan Cox. Signed-off-by: David S. Miller commit a1317f714af7aed60ddc182d0122477cbe36ee9b Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 23:52:17 2009 -0700 ide: improve handling of Power Management requests Make hwif->rq point to PM request during PM sequence and do not allow any other types of requests to slip in (the old comment was never correct as there should be no such requests generated during PM sequence). Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit ba9413bd284e79ea43b0ae406a7a29526aaf82b3 Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 16:11:10 2009 -0700 ide: add QUANTUM FIREBALLct20 30 with firmware APL.090 to ivb_list[] Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit 346c17a6cf60375323adfaa4b8a9d841049f890e Author: Bartlomiej Zolnierkiewicz Date: Mon Jun 22 07:38:26 2009 +0000 ide: relax DMA info validity checking There are some broken devices that report multiple DMA xfer modes enabled at once (ATA spec doesn't allow it) but otherwise work fine with DMA so just delete ide_id_dma_bug(). [ As discovered by detective work by Frans and Bart, due to how handling of the ID block was handled before commit c419993 ("ide-iops: only clear DMA words on setting DMA mode") this check was always seeing zeros in the fields or other similar garbage. Therefore this check wasn't actually checking anything. Now that the tests actually check the real bits, all we see are devices that trigger the check yet work perfectly fine, therefore killing this useless check is the best thing to do. -DaveM ] Reported-by: Frans Pop Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit d9ae62433e46909fc9e7d97ce74202c2851667b8 Author: Frans Pop Date: Tue Jun 23 16:02:58 2009 -0700 ide-cd: Improve "weird block size" error message Currently the error gets repeated too frequently, for example each time HAL polls the device when a disc is present. Avoid that by using printk_once instead of printk. Also join the error and corrective action messages into a single line. Signed-off-by: Frans Pop Acked-by: Borislav Petkov Signed-off-by: David S. Miller commit af054ed0018f0a69f8ea6f7546cbf34385edf13b Author: David S. Miller Date: Tue Jun 23 16:01:06 2009 -0700 ide-cd: Don't warn on bogus block size unless it actually matters. Frans Pop reported that his CDROM drive reports a blocksize of 2352, and this causes new warnings due to commit e8e7b9eb11c34ee18bde8b7011af41938d1ad667 ("ide-cd: fix oops when using growisofs"). What we're trying to do is make sure that "blocklen >> SECTOR_BITS" is something the block layer won't choke on. And for Frans' case "2352 >> SECTOR_BITS" is equal to "2048 >> SECTOR_BITS", and thats "4". So warning in this case gives no real benefit. Reported-by: Frans Pop Tested-by: Frans Pop Signed-off-by: David S. Miller commit ffc36c7610731115c77700dcc53901920361c235 Author: Bartlomiej Zolnierkiewicz Date: Tue Jun 23 03:43:00 2009 -0700 ide: fix handling of unexpected IRQs vs request_irq() Add ide_host_enable_irqs() helper and use it in ide_host_register() before registering ports. Then remove no longer needed IRQ unmasking from in init_irq(). This should fix the problem with "screaming" shared IRQ on the first port (after request_irq() call while we have the unexpected IRQ pending on the second port) which was uncovered by my rework of the serialized interfaces support. Reported-by: Frans Pop Tested-by: Frans Pop Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: David S. Miller commit 8b169b5f1f46da8ece1ce7304cda7155fffe3892 Author: Huang Weiyi Date: Wed Jun 24 16:31:50 2009 +1000 drm: remove unused #include 's Remove unused #include ('s) in drivers/gpu/drm/ttm/ttm_bo_util.c drivers/gpu/drm/ttm/ttm_bo_vm.c drivers/gpu/drm/ttm/ttm_tt.c Signed-off-by: Huang Weiyi Signed-off-by: Dave Airlie commit 5b6345be1b41db5e70f90c3559c3b40c8abcde8b Merge: 176f613 b5aa8a0 Author: Dave Airlie Date: Wed Jun 24 16:20:19 2009 +1000 Merge remote branch 'origin/drm-intel-next' of ../drm-intel into drm-fixes commit 176f613e60b63f2d77e6c69f036cfc754f3aaac6 Author: Jerome Glisse Date: Mon Jun 22 18:16:13 2009 +0200 drm/radeon: fix driver initialization order so radeon kms can be builtin TTM need to be initialized before radeon if KMS is enabled otherwise the kernel will crash hard. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit e14cbee401cd00779a5267128371506b22c77bc9 Author: Michel Dänzer Date: Tue Jun 23 12:36:32 2009 +0200 drm: Fix shifts which were miscalculated when converting from bitfields. Looks like I managed to mess up most shifts when converting from bitfields. :( The patch below works on my Thinkpad T500 (as well as on my PowerBook, where the previous change worked as well, maybe out of luck...). I'd appreciate more testing and eyes looking over it though. Signed-off-by: Michel Dänzer Tested-by: Michael Pyne Signed-off-by: Dave Airlie commit b1e3a6d1c4d0ac75ad8289bcfd69efcc9b1bc6e5 Author: Michel Dänzer Date: Tue Jun 23 16:12:54 2009 +0200 drm/radeon: Clear surface registers at initialization time. Some PowerMac firmwares set up a tiling surface at the beginning of VRAM which messes us up otherwise. Signed-off-by: Michel Dänzer Signed-off-by: Dave Airlie commit 696d4df1dbfe0b054e94c1990b49c1727ffc1ff0 Author: Michel Dänzer Date: Tue Jun 23 16:12:53 2009 +0200 drm/radeon: Don't initialize acceleration related fields of struct fb_info. Might lure userspace into trying silly things otherwise. Signed-off-by: Michel Dänzer Signed-off-by: Dave Airlie commit f92e93eb5f4d56d73215f089580d53597bacd468 Author: Jerome Glisse Date: Mon Jun 22 18:15:58 2009 +0200 drm/radeon: fix radeon kms framebuffer device smem.start is a physical address which kernel can remap to access video memory of the fb buffer. We now pin the fb buffer into vram by doing so we are loosing vram but fbdev need to be reworked to allow change in framebuffer address. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit b5aa8a0fc132dd512c33e7c2621d075e3b77a65e Author: Grégoire Henry Date: Tue Jun 23 15:41:02 2009 +0200 drm/i915: initialize fence registers to zero when loading GEM Unitialized fence register could leads to corrupted display. Problem encountered on MacBooks (revision 1 and 2), directly booting from EFI or through BIOS emulation. (bug #21710 at freedestop.org) Signed-off-by: Grégoire Henry Signed-off-by: Eric Anholt commit 56d21b07d44e0a33ab846f4f08e9e33bd87e5d4b Author: Zhenyu Wang Date: Wed Jun 17 09:43:25 2009 +0800 drm/i915: Fix HDMI regression introduced in new chipset support Remove wrongly added NULL_PACKETS_DURING_VSYNC setting for HDMI. Signed-off-by: Zhenyu Wang Signed-off-by: Eric Anholt commit 1b16de0b070dc6fa29b7a99980eabe3325ee5983 Author: Jesse Barnes Date: Mon Jun 22 11:30:30 2009 -0700 drm/i915: fix LFP data fetch Apparently the proper way to do this is to use the LFP data pointer block to figure out the LFP data block entry size, then use that plus the panel index to calculate an offset into the LFP data block array. Similar fix has already been pushed to the 2D driver to fix fdo bug applied to the VBIOS reader, and things look sane). Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit 8ed9a5bc9c9425ef93a1b03b418300a5e18b2361 Author: ling.ma@intel.com Date: Mon Jun 22 22:08:35 2009 +0800 drm/i915: set TV detection mode when tv is already connected We used load_detect_temp flag to determine whether to set tv to the test mode. However if the TV already has a mode set, we still need to set the test mode to determine connection. This results in blinking, but there is no other reliable way to determine TV connection. freedesktop.org bug #22035 Signed-off-by: Ma Ling Signed-off-by: Eric Anholt commit 921809a5831821eaf86e799c4b3d7c666ee352b1 Author: Krzysztof Halasa Date: Fri Jun 19 22:35:09 2009 +0200 drm/i915: Catch up to obj_priv->page_list rename in disabled debug code. Signed-off-by: Krzysztof Halasa Signed-off-by: Eric Anholt commit cfd43c025ddef0b1c723bb9811d2bde52b285710 Author: Krzysztof Halasa Date: Sat Jun 20 00:31:28 2009 +0200 drm/i915: Fix size_t handling in off-by-default debug printfs Signed-off-by: Krzysztof Halasa Signed-off-by: Eric Anholt commit aa0261f230105b86409e29bbe851b09830d93d50 Author: Zhao Yakui Date: Mon Jun 22 15:31:26 2009 +0800 drm/i915: Don't change the blank/sync width when calculating scaled modes Also, use the border instead of border minus one. At the same time, make sure the horizontal border and hsync are even for the LVDS that works in dual-channel mode. So both horizontal border and hsync start are also changed to be even, even for the LVDS in single-channel mode. https://bugs.freedesktop.org/show_bug.cgi?id=20951 Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 3fbe18d65d66054667aaee849bed74674bb50062 Author: Zhao Yakui Date: Mon Jun 22 15:31:25 2009 +0800 drm/i915: Add support for changing LVDS panel fitting using an output property. Previously the driver would always scale the chosen video mode to fill the panel. This adds 1:1 and maintain-aspect-ratio scaling modes. v2: the drm_calloc/drm_free is replaced by kzalloc/kfree based on Eric's suggestion. Signed-off-by: Zhao Yakui Signed-off-by: Eric Anholt commit 9e06dd39f2b6d7e35981e0d7aded618686b32ccb Author: Jesse Barnes Date: Mon Jun 22 18:05:12 2009 -0700 drm/i915: correct suspend/resume ordering We need to save register state *after* idling GEM, clearing the ring, and uninstalling the IRQ handler, or we might end up saving bogus fence regs, for one. Our restore ordering should already be correct, since we do GEM, ring and IRQ init after restoring the last register state, which prevents us from clobbering things. I put this together to potentially address a bug, but I haven't heard back if it fixes it yet. However I think it stands on its own, so I'm sending it in. Signed-off-by: Jesse Barnes Signed-off-by: Eric Anholt commit be9f1c4f738a715abbd8ea742f3ec60a1ce73f4b Merge: 8c52da5 fb0f8fb Author: Eric Anholt Date: Sun Jun 21 22:14:55 2009 -0700 Merge commit 'keithp/drm-intel-next' into drm-intel-next commit 8c52da503b7e4cf961807f11824e3258ef9f7f1c Author: Eric Anholt Date: Thu Jun 18 20:22:19 2009 -0700 drm/i915: Add missing dependency on Intel AGP support. Users could accidentally enable AGP but not the Intel AGP support, and get a DRM that doesn't probe as a result. Bug #22358. Signed-off-by: Eric Anholt commit fb0f8fbf97e8a25074c81c629500d94cafa9e366 Author: Keith Packard Date: Thu Jun 11 22:31:31 2009 -0700 drm/i915: Generate 2MHz clock for display port aux channel I/O. Retry I/O. The display port aux channel clock is taken from the hrawclk value, which is provided to the chip as the FSB frequency (as far as I can determine). The strapping values for that are available in the CLKCFG register, now used to select an appropriate divider to generate a 2MHz clock. In addition, the DisplayPort spec requires that each aux channel I/O be retried 'at least 3 times' in case the sink is idle when the first request comes in. Signed-off-by: Keith Packard commit a5b3da543d4882d57a2f3e05d37ad8e1e1453489 Author: Keith Packard Date: Thu Jun 11 22:30:32 2009 -0700 drm/i915: Clarify error returns from display port aux channel I/O Use distinct error return values for each kind of aux channel I/O failure. Signed-off-by: Keith Packard commit b11248df4c0decb1e473d5025f237be32c0f67bb Author: Keith Packard Date: Thu Jun 11 22:28:56 2009 -0700 drm/i915: Add CLKCFG register definition The CLKCFG register holds information about the GMCH plls and input clock values. Signed-off-by: Keith Packard commit e4b366996bc58a02b9dc35db3ef83f0454553f50 Author: Keith Packard Date: Fri Jun 5 19:22:17 2009 -0700 drm/i915: Split array of DAC limits into separate structures. The array of DAC limits was only ever referenced with #defined constant offsets, and keeping those #define values in sync with the array itself was a nuisance. This will make future changes to the set of DAC limits less error-prone. Signed-off-by: Keith Packard commit c8110e52b753f3d105604df84ac06cd6d1645409 Author: Keith Packard Date: Wed May 6 11:51:10 2009 -0700 drm/i915: Use hotplug callback to retrain DP link When a DP monitor is plugged back in, it needs to be retrained if it was active before. Signed-off-by: Keith Packard commit a4fc5ed69817c73e32571ad7837bb707f9890009 Author: Keith Packard Date: Tue Apr 7 16:16:42 2009 -0700 drm/i915: Add Display Port support Signed-off-by: Keith Packard commit c31c4ba3437d98efa19710e30d694a1cfdf87aa5 Author: Keith Packard Date: Wed May 6 11:48:58 2009 -0700 drm/i915: add per-output hotplug callback for KMS This allows each output to deal with plug/unplug events as needed. Signed-off-by: Keith Packard commit 308cd3a2e505b0d15f2852e8db5d648b60a6313b Author: Keith Packard Date: Sun Jun 14 11:56:18 2009 -0700 drm/i915: Clean up SDVO i2c handling Eliminate the copy of i2c_bus in sdvo_priv. Eliminate local copies of i2c_bus and ddcbus. Eliminate unused settings of slave_addr. Signed-off-by: Keith Packard commit f9c10a9b96a31b4a82a4fa807400c04f00284068 Author: Keith Packard Date: Sat May 30 12:16:25 2009 -0700 drm/i915: Change I2C api to pass around i2c_adapters The existing API passed around intel_i2c_chan pointers, which are dependent on the i2c bit-banging algo. This precluded the driver from using outputs which use a different algo. Switching to the more general i2c_adpater allows the driver to support non bit-banging DDC. This also required moving the slave address into the output private structures. Signed-off-by: Keith Packard commit b99e228d354cc1e7f19fb8b5f1297d493e309186 Author: Keith Packard Date: Wed Jun 10 19:08:16 2009 -0700 drm/i915: check for CONFIG_PNP before using pnp function Signed-off-by: Keith Packard commit 98acd46f356e560c371c0e416d92e8e56be31804 Author: Keith Packard Date: Sun Jun 14 12:31:58 2009 -0700 drm/i915: Apple DMI info has inconsistent SYS_VENDOR information Some machines say 'Apple Inc.' while others say 'Apple Computer, Inc'. Switch the test to just look for 'Apple' instead. Signed-off-by: Keith Packard commit aa93d632c496184e5b779dbcf961bf1c6ececf0b Author: Keith Packard Date: Tue May 5 09:52:46 2009 -0700 drm/i915: Require digital monitor on HDMI ports for detect HDMI and DVI both require DDC/EDID on monitors, so use that to know when a monitor is connected as the hot-plug pins are shared with SDVO and DisplayPort Signed-off-by: Keith Packard