commit 42be79e37e264557f12860fa4cc84b4de3685954 Merge: 445c682 d668046 Author: Linus Torvalds Date: Thu Apr 1 09:19:42 2010 -0700 Merge branch 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6 * 'drm-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (76 commits) drm/radeon/kms: enable ACPI powermanagement mode on radeon gpus. drm/radeon/kms: rs400/480 should set common registers. drm/radeon/kms: add sanity check to wptr. drm/radeon/kms/evergreen: get DP working drm/radeon/kms: add hw_i2c module option drm/radeon/kms: use new pre/post_xfer i2c bit algo hooks drm/radeon/kms: disable MSI on IGP chips drm/radeon/kms: display watermark updates (v2) drm/radeon/kms/dp: disable training pattern on the sink at the end of link training drm/radeon/kms: minor fixes for eDP with LCD* device tags (v2) drm/radeon/kms/dp: remove extraneous training complete call drm/radeon/kms/atom: minor fixes to transmitter setup drm/radeon/kms: Only restrict BO to visible VRAM size when pinning to VRAM. drm: fix build error when SYSRQ is disabled drm/radeon/kms: fix macbookpro connector quirk drm/radeon/r6xx/r7xx: further safe reg clean up drm/radeon: bump the UMS driver version for r6xx/r7xx const buffer support drm/radeon/kms: bump the version for r6xx/r7xx const buffer support drm/radeon/r6xx/r7xx: CS parser fixes drm/radeon/kms: fix some typos in r6xx/r7xx hpd setup ... Fix up MSI-related conflicts in drivers/gpu/drm/radeon/radeon_irq_kms.c commit 445c682b93479c06d1b062b63ed79202f3ed5503 Merge: c7681f4 ca3865b Author: Linus Torvalds Date: Thu Apr 1 09:14:20 2010 -0700 Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze * 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (35 commits) microblaze: Support word copying in copy_tofrom_user microblaze: Print early printk information to log buffer microblaze: head.S typo fix microblaze: Use MICROBLAZE_TLB_SIZE in asm code microblaze: Kconfig Fix - pci microblaze: Adding likely macros microblaze: Add .type and .size to ASM functions microblaze: Fix TLB macros microblaze: Use instruction with delay slot microblaze: Remove additional resr and rear loading microblaze: Change register usage for ESR and EAR microblaze: Prepare work for optimization in exception code microblaze: Add DEBUG option microblaze: Support systems without lmb bram microblaze: uaccess: Sync strlen, strnlen, copy_to/from_user microblaze: uaccess: Unify __copy_tofrom_user microblaze: uaccess: Move functions to generic location microblaze: uaccess: Fix put_user for noMMU microblaze: uaccess: Fix get_user macro for noMMU microblaze: uaccess: fix clear_user for noMMU kernel ... commit c7681f4637df65082aeee1ea1ff0479607d71982 Merge: b95c35e ee027e4 Author: Linus Torvalds Date: Thu Apr 1 09:13:57 2010 -0700 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86 * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: eeepc-wmi: new driver for WMI based hotkeys on Eee PC laptops asus-laptop: fix warning in asus_handle_init commit b95c35e76b29ba812e5dabdd91592e25ec640e93 Author: Oleg Nesterov Date: Thu Apr 1 15:13:57 2010 +0200 oom: fix the unsafe usage of badness() in proc_oom_score() proc_oom_score(task) has a reference to task_struct, but that is all. If this task was already released before we take tasklist_lock - we can't use task->group_leader, it points to nowhere - it is not safe to call badness() even if this task is ->group_leader, has_intersects_mems_allowed() assumes it is safe to iterate over ->thread_group list. - even worse, badness() can hit ->signal == NULL Add the pid_alive() check to ensure __unhash_process() was not called. Also, use "task" instead of task->group_leader. badness() should return the same result for any sub-thread. Currently this is not true, but this should be changed anyway. Signed-off-by: Oleg Nesterov Cc: stable@kernel.org Signed-off-by: Linus Torvalds commit ca3865bae5ff86f5670edc9beebbd1f58c29de85 Author: Michal Simek Date: Mon Mar 22 20:31:26 2010 +0100 microblaze: Support word copying in copy_tofrom_user Word copying is used only for aligned addresses. Here is space for improving to use any better copying technique. Look at memcpy implementation. Signed-off-by: Michal Simek commit 6059b3cbeb27a38e3ca9ac9d2827f7b5be32e2ba Author: Michal Simek Date: Wed Mar 24 11:07:10 2010 +0100 microblaze: Print early printk information to log buffer If early printk console is not enabled then all messages are written to log buffer. Signed-off-by: Michal Simek commit 3f2189358666b6fa09d41f527be07b3cc8026050 Author: Michal Simek Date: Wed Mar 24 11:06:23 2010 +0100 microblaze: head.S typo fix I forget to change register name in comments. Signed-off-by: Michal Simek commit 0691c97d74cbdfd49333ef01939ecaef158ebe1b Author: Michal Simek Date: Wed Mar 24 10:09:17 2010 +0100 microblaze: Use MICROBLAZE_TLB_SIZE in asm code TLB size was hardcoded in asm code. This patch brings ability to change TLB size only in one place. (mmu.h). Signed-off-by: Michal Simek commit 9373dd6ab140f1e6f2e62a9f0bf473987a0b62dc Author: Michal Simek Date: Tue Mar 23 15:46:10 2010 +0100 microblaze: Kconfig Fix - pci I forget to remove pci Kconfig option. Signed-off-by: Michal Simek commit 78ebfa884bcef125464399f8d1cb05937bfeb6e1 Author: Michal Simek Date: Tue Mar 23 15:37:02 2010 +0100 microblaze: Adding likely macros On the base on GCOV analytics is helpful to add likely/unlikely macros. Signed-off-by: Michal Simek commit 13851966da54be8e37863aa93ee2c8f3d3a3186a Author: Michal Simek Date: Tue Mar 23 08:09:32 2010 +0100 microblaze: Add .type and .size to ASM functions Cachegrind analysis need this fix to be able to log asm functions. Signed-off-by: Michal Simek commit e84452dd9ff517bd3028f6444d000727cd39e783 Author: Michal Simek Date: Mon Mar 22 14:54:35 2010 +0100 microblaze: Fix TLB macros To be able to do trace TLB operations. Signed-off-by: Michal Simek commit 3765d6958dfff34a15588e23c5d1274e1f6ba200 Author: Michal Simek Date: Mon Mar 22 20:43:27 2010 +0100 microblaze: Use instruction with delay slot Sync labels. Signed-off-by: Michal Simek commit bd1637d63e82aaf732ffbe907ba887fa12e82df4 Author: Michal Simek Date: Fri Mar 19 12:50:35 2010 +0100 microblaze: Remove additional resr and rear loading RESR and REAR uses the same regs in whole file. Signed-off-by: Michal Simek commit b175bcfe31cba846d8bfa35a3a4820667f7af383 Author: Michal Simek Date: Fri Mar 19 12:44:40 2010 +0100 microblaze: Change register usage for ESR and EAR This change synchronize register usage in code. ESR = R4 EAR = R3 Signed-off-by: Michal Simek commit 7a6bbdc9304b45cc759e03623cbe63d81aff7337 Author: Michal Simek Date: Mon Mar 22 20:37:23 2010 +0100 microblaze: Prepare work for optimization in exception code Any sync branch must follow mts instructions not mfs. Signed-off-by: Michal Simek commit 708e7153d6fc4d2e5fe15c6ccc5d2907fe8a9c8d Author: Michal Simek Date: Thu Mar 18 07:23:04 2010 +0100 microblaze: Add DEBUG option Disable debug option in asm code. Signed-off-by: Michal Simek commit ee68f1745e7734a55c8bf680f6f464205f1f15da Author: Michal Simek Date: Mon Mar 15 08:48:27 2010 +0100 microblaze: Support systems without lmb bram When the system has no lmb bram, main memory should be start from zero because of microblaze vectors. DTS fragment could look like: DDR2_SDRAM: memory@0 { device_type = "memory"; reg = < 0x0 0x10000000 >; } ; Then you have to setup CONFIG_KERNEL_BASE_ADDR=0 which caused that kernel physical start address will be zero. On reset vector place will be jump to 0x100 and on 0x100 starts kernel text. You have to solve how to load the kernel before cpu starts. Tested with XMD. Signed-off-by: Michal Simek commit 89ae9753aef160c2f7bcecec21a7c4a6bc4c9b9b Author: Michal Simek Date: Mon Mar 22 18:49:45 2010 +0100 microblaze: uaccess: Sync strlen, strnlen, copy_to/from_user Last sync. Signed-off-by: Michal Simek commit 94804a9b3d0e62096a52fb62afcea32b899380c5 Author: Michal Simek Date: Mon Mar 22 18:39:20 2010 +0100 microblaze: uaccess: Unify __copy_tofrom_user Move to generic location. Signed-off-by: Michal Simek commit cca79120c253451220e589a104bdeb57e4901871 Author: Michal Simek Date: Mon Mar 22 18:23:45 2010 +0100 microblaze: uaccess: Move functions to generic location noMMU and MMU use them. Signed-off-by: Michal Simek commit ef4e277b5d86e56db650137de0b1cd16ded32498 Author: Michal Simek Date: Mon Mar 22 16:22:41 2010 +0100 microblaze: uaccess: Fix put_user for noMMU Here is small regression on dhrystone tests and I think that on all benchmarking tests. It is due to better checking mechanism in put_user macro Signed-off-by: Michal Simek commit 3a6d77245efe062993284fd1c2f7510d9a90efe1 Author: Michal Simek Date: Mon Mar 8 10:52:24 2010 +0100 microblaze: uaccess: Fix get_user macro for noMMU Use unified version. Signed-off-by: Michal Simek commit 527bdb52d50ddbc8dd64369e464d7a08bc7eb83c Author: Michal Simek Date: Mon Mar 22 16:02:59 2010 +0100 microblaze: uaccess: fix clear_user for noMMU kernel Previous patches fixed only MMU version and this is the first patch for noMMU kernel Signed-off-by: Michal Simek commit 40e11e3380d4bd14bb3d85c7e7b863075a6a8d86 Author: Michal Simek Date: Mon Mar 8 09:38:02 2010 +0100 microblaze: uaccess: Fix strncpy_from_user function Generic implementation for noMMU and MMU version Signed-off-by: Michal Simek commit 4270690bd4b1420a8d634ea31953a1c4def2a44a Author: Michal Simek Date: Mon Mar 22 15:56:32 2010 +0100 microblaze: uaccess: fix copy_from_user macro copy_from_user macro also use copy_tofrom_user function Signed-off-by: Michal Simek commit cc5a428b7ae9c2d6233b5bf6b3e6fbb24ddd1ed5 Author: Michal Simek Date: Mon Mar 22 15:52:53 2010 +0100 microblaze: uaccess: copy_to_user unification noMMU and MMU kernel will use copy copy_tofrom_user asm implementation. Signed-off-by: Michal Simek commit 0dcb409de73edeb221aed38d9ff8640cf41ff0de Author: Michal Simek Date: Mon Mar 22 15:46:56 2010 +0100 microblaze: uaccess: sync put/get/clear_user macros Add macro description and resort. Signed-off-by: Michal Simek commit 8b651aa4a7c047b848f3a7bdf0aba9449e6dc3d3 Author: Michal Simek Date: Mon Mar 22 15:25:12 2010 +0100 microblaze: uaccess: fix put_user and get_user macros Use FIXUP macros and resort them. Signed-off-by: Michal Simek commit c77a9c4bb7b6e26400853c92d74ccc697c5e2f7e Author: Michal Simek Date: Fri Mar 5 18:03:53 2010 +0100 microblaze: uaccess: fix __get_user_asm macro It is used __FIXUP_SECTION and __EX_TABLE_SECTION macros. Signed-off-by: Michal Simek commit 40b1156db09ab2df48aa4970ddf4a27a17246f1f Author: Michal Simek Date: Fri Mar 5 16:50:01 2010 +0100 microblaze: uaccess: fix clean user macro This is the first patch which does uaccess unification. I choosed to do several patches to be able to use bisect in future if any fault happens. Signed-off-by: Michal Simek commit 60a729f7bb936a9ab82b430de70a1952f560adf3 Author: Michal Simek Date: Fri Mar 5 15:49:53 2010 +0100 microblaze: move noMMU __range_ok function to uaccess.h The same noMMU and MMU functions should be placed in one file. Signed-off-by: Michal Simek commit 357bc3c9284b2fb201786176e8187d2273323bc1 Author: Michal Simek Date: Fri Mar 5 15:37:57 2010 +0100 microblaze: Move exception_table_entry upward Just sort to be able remove whole block. Signed-off-by: Michal Simek commit 40db0834337ef0cde586feeb5588e45f0349098b Author: Michal Simek Date: Fri Mar 5 15:34:12 2010 +0100 microblaze: Remove segment.h I would like to use asm-generic uaccess.h where are segment macros defined. This is just first step. Signed-off-by: Michal Simek commit 4009819cf90c26e3ec7b0ed949d5ff37c568e197 Author: Michal Simek Date: Wed Mar 3 17:03:21 2010 +0100 microblaze: Remove memset in free_init_pages We don't need to do it. Signed-off-by: Michal Simek commit 6fa114e0f18fb33b66fd5ee9037052830198a8c4 Author: Arun Bhanu Date: Wed Mar 17 16:06:04 2010 +0800 microblaze: Makefile cleanups If CONFIG_INITRAMFS_SOURCE is set, "scripts/gen_initramfs_list.sh" checks if the cpio image exists. Remove the duplicate check from the Makefile. Remove the "clean-kernel" variable which is unused in the Makefile and is not used by the Kbuild. Signed-off-by: Arun Bhanu Signed-off-by: Michal Simek commit 8a8804f1ab2d3226bfa9f9a64c4316f9a01f8ee9 Author: Arun Bhanu Date: Wed Mar 17 16:06:03 2010 +0800 microblaze: Fix Makefile to delete build generated files 'make clean' does not to delete the following build generated file: arch/microblaze/boot/linux.bin.ub 'make mrproper' does not to delete the following build generated files: arch/microblaze/boot/simpleImage.* Fix the Makefile to delete these build generated files. See [1] for a discussion on why simpleImage.* files are deleted with 'make mrproper' and not with 'make clean'. [1] http://lkml.org/lkml/2010/3/12/96 Signed-off-by: Arun Bhanu Signed-off-by: Michal Simek commit 699d17bc14edceb710998349fa74e66be3042372 Author: Arun Bhanu Date: Fri Mar 12 16:31:40 2010 +0800 microblaze: Add a missing single quote to make 'make help' happy 'make ARCH=microblaze help' fails with the following error due to a missing single quote. /bin/sh: -c: line 0: unexpected EOF while looking for matching `'' /bin/sh: -c: line 1: syntax error: unexpected end of file make: *** [help] Error 2 Signed-off-by: Arun Bhanu Signed-off-by: Michal Simek commit 0c4ec16b86e6a823bc6e9fbe08a724d517eb3c24 Author: Steven J. Magnani Date: Wed Feb 24 14:54:15 2010 -0600 microblaze: Fix "kstack=" parsing The "kstack=" command line parameter is not parsed correctly. All proper values are interpreted as zero. Signed-off-by: Steven J. Magnani Signed-off-by: Michal Simek commit d668046c13024d74af7d04a124ba55f406380fe7 Author: Dave Airlie Date: Wed Mar 31 13:41:35 2010 +1000 drm/radeon/kms: enable ACPI powermanagement mode on radeon gpus. Some GPUs have an APM/ACPI PM mode selection switch and some BIOSes set this to APM. We really want this in ACPI mode for Linux. Signed-off-by: Dave Airlie commit 08a370fa758fae7e387274ca3571ce625d7f829b Author: Dave Airlie Date: Wed Mar 31 13:42:50 2010 +1000 drm/radeon/kms: rs400/480 should set common registers. These GPUs should be setting these registers up also. Signed-off-by: Dave Airlie commit 9e5786bd14cb9ffe29ebe66d41cedf03311b0d30 Author: Dave Airlie Date: Wed Mar 31 13:38:56 2010 +1000 drm/radeon/kms: add sanity check to wptr. If we resume in a bad way, we'll get 0xffffffff in wptr, and then oops with no console. This just adds a sanity check so that we can avoid the oops and hopefully get more details out of people's systems. Signed-off-by: Dave Airlie commit fb668c2fed628179c7aa409a0de39a2b96bed18c Author: Alex Deucher Date: Wed Mar 31 14:42:11 2010 -0400 drm/radeon/kms/evergreen: get DP working Need to enable the VID stream after link training Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit ee027e4aed3077c4bb3b585c67528eec0e7222df Author: Yong Wang Date: Sun Mar 21 10:26:34 2010 +0800 eeepc-wmi: new driver for WMI based hotkeys on Eee PC laptops Add a WMI driver for Eee PC laptops. Currently it only supports hotkeys. Signed-off-by: Yong Wang Signed-off-by: Matthew Garrett Acked-by: Dmitry Torokhov commit 167215118a88dd56a1ab8c8d33e279d6d40f57b6 Author: Corentin Chary Date: Tue Mar 2 22:24:12 2010 +0100 asus-laptop: fix warning in asus_handle_init In function 'asus_laptop_get_info': warning: passing argument 3 of 'asus_handle_init' from incompatible pointer type note: expected 'char **' but argument is of type 'const char **' Introduced by commit c21085108a02e1b838c34f3650c8cc9fbd178615 ("asus-laptop: fix style problems reported by checkpath.pl"). Signed-off-by: Corentin Chary Signed-off-by: Matthew Garrett commit 30d1872d9eb3663b4cf7bdebcbf5cd465674cced Author: Nikolaus Schulz Date: Thu Apr 1 02:21:10 2010 +0900 fat: fix buffer overflow in vfat_create_shortname() When using the string representation of a random counter as part of the base name, ensure that it is no longer than 4 bytes. Since we are repeatedly decrementing the counter in a loop until we have found a unique base name, the counter may wrap around zero; therefore, it is not enough to mask its higher bits before entering the loop, this must be done inside the loop. [hirofumi@mail.parknet.co.jp: use snprintf()] Signed-off-by: Nikolaus Schulz Cc: stable@kernel.org Signed-off-by: OGAWA Hirofumi Signed-off-by: Linus Torvalds commit e2b0a8e1e697dbcd62574a32f4f96151d21bdd36 Author: Alex Deucher Date: Wed Mar 17 02:07:37 2010 -0400 drm/radeon/kms: add hw_i2c module option Turn off hw i2c by default except for mm i2c which is hw only until we sort out the remaining prescale issues on older chips. hw i2c can be enabled with hw_i2c=1. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit ac1aade6876465060ebf9a71675dcb7305f0bafa Author: Alex Deucher Date: Sun Mar 14 12:22:44 2010 -0400 drm/radeon/kms: use new pre/post_xfer i2c bit algo hooks This allows us to remove the internal bit algo bus used by the radeon i2c algo. We now register a radeon algo adapter if the gpio line is hw capable and the hw inplementation is available, otherwise we register a bit algo adapter. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3595be778d8cb887f0e0575ef0a0c1a094d120bb Merge: c414a11 220bf99 Author: Dave Airlie Date: Wed Mar 31 14:55:14 2010 +1000 Merge branch 'v2.6.34-rc2' into drm-linus commit c414a117c6094c3f86b533f97beaf45ef9075f03 Author: Alex Deucher Date: Tue Mar 30 17:22:32 2010 -0400 drm/radeon/kms: disable MSI on IGP chips Doesn't seem to work reliably and the pci quirks don't always work. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f46c01208da1881591e3f55ca77d37f54469f8e4 Author: Alex Deucher Date: Wed Mar 31 00:33:27 2010 -0400 drm/radeon/kms: display watermark updates (v2) - Add module option to force the display priority 0 = auto, 1 = normal, 2 = high - Default to high on r3xx/r4xx/rv515 chips Fixes flickering problems during heavy acceleration due to underflow to the display controllers - Fill in minimal support for RS600 v2 - update display priority when bandwidth is updated so the user can change the parameter at runtime and it will take affect on the next modeset. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3b01a1191fe76bd11e5743eceed7c25d8157239e Author: Alex Deucher Date: Tue Mar 30 02:03:48 2010 -0400 drm/radeon/kms/dp: disable training pattern on the sink at the end of link training Seems to have gotten lost in the evergreen merge. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 9f998ad7e92a1653b6b396b1278e75560a8be519 Author: Alex Deucher Date: Mon Mar 29 21:37:08 2010 -0400 drm/radeon/kms: minor fixes for eDP with LCD* device tags (v2) Some systems have LCD* rather than DFP* device tags in the bios for eDP connectors; notably the new apple iMac. This fixes things up so eDP connectors with either tag will work. v2: fix typo Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 7f768957f407f7b8c8793eedaf7512049d092f29 Author: Alex Deucher Date: Mon Mar 29 14:06:10 2010 -0400 drm/radeon/kms/dp: remove extraneous training complete call Looks like a copy/paste typo from when evergreen support was added. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d9c9fe3622d15e7e84121ffedef60f4080ab4f03 Author: Alex Deucher Date: Mon Mar 29 17:39:44 2010 -0400 drm/radeon/kms/atom: minor fixes to transmitter setup - 8 lane links are not valid for DP - remove unused num var Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3ca82da3ebe019facd611184385897fa614e6b9e Author: Michel Dänzer Date: Fri Mar 26 19:18:55 2010 +0000 drm/radeon/kms: Only restrict BO to visible VRAM size when pinning to VRAM. This prevented radeon.test=1 from testing transfers from/to GTT beyond the visible VRAM size. Signed-off-by: Michel Dänzer Signed-off-by: Dave Airlie commit b8c40d6269d5e515341599b2e395f2dab4490d74 Author: Randy Dunlap Date: Thu Mar 25 18:29:05 2010 +0000 drm: fix build error when SYSRQ is disabled Fix build error when CONFIG_MAGIC_SYSRQ is not enabled: drivers/gpu/drm/drm_fb_helper.c:915: error: 'sysrq_drm_fb_helper_restore_op' undeclared (first use in this function) drivers/gpu/drm/drm_fb_helper.c:929: error: 'sysrq_drm_fb_helper_restore_op' undeclared (first use in this function) Signed-off-by: Randy Dunlap Signed-off-by: Dave Airlie commit e1e8a5dd4faf356b5d31c620c5787eaa83ee831d Author: Alex Deucher Date: Fri Mar 26 17:14:37 2010 -0400 drm/radeon/kms: fix macbookpro connector quirk Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 97586c422b38c4c12e2b5011d59c401d03d09ed6 Author: Alex Deucher Date: Fri Mar 26 19:36:33 2010 -0400 drm/radeon/r6xx/r7xx: further safe reg clean up - remove a few more drm only regs - remove sampler, alu, bool, loop constant regs. They are set via separate packet3's already Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 6bb118012ab0462d5ebc3ab17eb278416532cf15 Author: Alex Deucher Date: Fri Mar 26 15:26:51 2010 -0400 drm/radeon: bump the UMS driver version for r6xx/r7xx const buffer support Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit fdb43528d4697b0e81e27a0d6539e744c2965cf2 Author: Alex Deucher Date: Fri Mar 26 15:24:14 2010 -0400 drm/radeon/kms: bump the version for r6xx/r7xx const buffer support Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 5f77df368c84d0a4a5913c8c78f0c6fa0b0db674 Author: Alex Deucher Date: Fri Mar 26 14:52:32 2010 -0400 drm/radeon/r6xx/r7xx: CS parser fixes - Drop some more safe regs taht userspace shouldn't hit - Constant base regs need relocs. This allows us to use constant buffers rather than the constant register file. Also we don't want userspace to be able to set arbitrary mc base values for the const caches. - Track SQ_CONFIG so we know whether userspace is using the cfile or constant buffers. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 5898b1f33c881fe1352464efd15faf7d26513b98 Author: Alex Deucher Date: Wed Mar 24 13:57:29 2010 -0400 drm/radeon/kms: fix some typos in r6xx/r7xx hpd setup Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit d8fe2fa90ea9df694dcc022271391e7547772e1b Author: Alex Deucher Date: Wed Mar 24 18:45:32 2010 -0400 drm/radeon/r600: remove some regs are not safe regs for command buffers Only the drm should be touching them. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit da58405860b992d2bb21ebae5d685fe3204dd3f0 Author: Chris Wilson Date: Thu Mar 18 11:56:54 2010 +0000 drm: Return ENODEV if the inode mapping changes Replace a BUG_ON with an error code in the event that the inode mapping changes between calls to drm_open. This may happen for instance if udev is loaded subsequent to the original opening of the device: [ 644.291870] kernel BUG at drivers/gpu/drm/drm_fops.c:146! [ 644.291876] invalid opcode: 0000 [#1] SMP [ 644.291882] last sysfs file: /sys/kernel/uevent_seqnum [ 644.291888] [ 644.291895] Pid: 7276, comm: lt-cairo-test-s Not tainted 2.6.34-rc1 #2 N150/N210/N220 /N150/N210/N220 [ 644.291903] EIP: 0060:[] EFLAGS: 00210283 CPU: 0 [ 644.291912] EIP is at drm_open+0x4b1/0x4e2 [ 644.291918] EAX: f72d8d18 EBX: f790a400 ECX: f73176b8 EDX: 00000000 [ 644.291923] ESI: f790a414 EDI: f790a414 EBP: f647ae20 ESP: f647adfc [ 644.291929] DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068 [ 644.291937] Process lt-cairo-test-s (pid: 7276, ti=f647a000 task=f73f5c80 task.ti=f647a000) [ 644.291941] Stack: [ 644.291945] 00000000 f7bb7400 00000080 f6451100 f73176b8 f6479214 f6451100 f73176b8 [ 644.291957] <0> c1297ce0 f647ae34 c11c6c04 f73176b8 f7949800 00000000 f647ae54 c1080ac5 [ 644.291969] <0> f7949800 f6451100 00000000 f6451100 f73176b8 f6452780 f647ae70 c107d1e6 [ 644.291982] Call Trace: [ 644.291991] [] ? drm_stub_open+0x8a/0xb8 [ 644.292000] [] ? chrdev_open+0xef/0x106 [ 644.292008] [] ? __dentry_open+0xd4/0x1a6 [ 644.292015] [] ? nameidata_to_filp+0x31/0x45 [ 644.292022] [] ? chrdev_open+0x0/0x106 [ 644.292030] [] ? do_last+0x346/0x423 [ 644.292037] [] ? do_filp_open+0x190/0x415 [ 644.292046] [] ? handle_mm_fault+0x214/0x710 [ 644.292053] [] ? do_sys_open+0x4d/0xe9 [ 644.292061] [] ? do_page_fault+0x211/0x23f [ 644.292068] [] ? sys_open+0x23/0x2b [ 644.292075] [] ? sysenter_do_call+0x12/0x26 [ 644.292079] Code: 89 f0 89 55 dc e8 8d 96 0a 00 8b 45 e0 8b 55 dc 83 78 04 01 75 28 8b 83 18 02 00 00 85 c0 74 0f 8b 4d ec 3b 81 ac 00 00 00 74 13 <0f> 0b eb fe 8b 4d ec 8b 81 ac 00 00 00 89 83 18 02 00 00 89 f0 [ 644.292143] EIP: [] drm_open+0x4b1/0x4e2 SS:ESP 0068:f647adfc [ 644.292175] ---[ end trace 2ddd476af89a60fa ]--- Signed-off-by: Chris Wilson Cc: stable@kernel.org Signed-off-by: Dave Airlie commit fcbc451ba1948fba967198bd150ecbd10bbb7075 Author: Pauli Nieminen Date: Fri Mar 19 07:44:33 2010 +0000 drm/radeon/kms: Fix NULL pointer dereference if memory allocation failed. When there is allocation failure in radeon_cs_parser_relocs parser->nrelocs is not cleaned. This causes NULL pointer defeference in radeon_cs_parser_fini when clean up code is trying to loop over the relocation array and free the objects. Fix adds a check for a possible NULL pointer in clean up code. Signed-off-by: Pauli Nieminen Cc: stable@kernel.org Signed-off-by: Dave Airlie commit f9274562026558ab54a29331cf13e9ebec8cc890 Author: Jerome Glisse Date: Wed Mar 17 14:44:29 2010 +0000 drm/radeon/kms: avoid possible oops (call gart_fini before gart_disable) radeon_gart_fini might call GART unbind callback function which might try to access GART table but if gart_disable is call first the GART table will be unmapped so any access to it will oops. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit 97f23b3d85a4d734a8584dade3a34579931c8f8d Author: Dave Airlie Date: Fri Mar 19 10:33:44 2010 +1000 drm/radeon/kms: don't print error on -ERESTARTSYS. We can get this if the user moves the mouse when we are waiting to move some stuff around in the validate. Don't fail. Cc: stable@kernel.org Signed-off-by: Dave Airlie commit a084e6ee6e64a76f1a9665d527203cdab7d6048f Author: Alex Deucher Date: Thu Mar 18 01:04:01 2010 -0400 drm/radeon/kms/atom: make sure tables are valid (v2) Check that atom cmd and data tables are valid before using them. (v2) - fix some whitespace errors noticed by Rafał Miłecki - check a few more cases Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit c1bcad9d16831859373d8f579fa1e146409f9960 Author: Alex Deucher Date: Wed Mar 17 19:50:59 2010 -0400 drm/radeon/kms: remove lvds quirks - no longer needed with the latest new pll algo fixes. - also don't use lcd pll limits. They don't seem to work well for all systems. If we have a case where they are useful, we can set the flag for that case. fixes fdo bug 27083 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit b2f8ccd84059f7d0c3e4f67d577abca391bc1868 Author: Alex Deucher Date: Sun Mar 21 11:09:24 2010 -0400 drm/radeon/kms: fix display bandwidth setup on rs4xx I missed rs4xx in 7f1e613daf0fdd0884316ab25a749db3c671329e Fixes fdo bug 27219. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f95df9ca6896978108201a77422a1ae2cdc595ec Author: Alex Deucher Date: Sun Mar 21 14:02:25 2010 -0400 drm/radeon/kms: never treat rs4xx as AGP RS4xx+ IGP chips use an internal gart, however, some of them have the agp cap bits set in their pci configs. Make sure to clear the AGP flag as AGP will not work with them. Should fix fdo bug 27225 Signed-off-by: Alex Deucher cc: stable@kernel.org Signed-off-by: Dave Airlie commit f47299c55a837af1727bc601e1fc0fa33adaeda5 Author: Alex Deucher Date: Tue Mar 16 20:54:38 2010 -0400 drm/radeon/kms: display watermark fixes - rs780/880 were using the wrong bandwidth functions - convert r1xx-r4xx to use the same pm sclk/mclk structs as r5xx+ - move bandwidth setup to a common function Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 9e7b414edbf5e037c1462bbd8676465ed2ae0ac3 Author: Alex Deucher Date: Tue Mar 16 17:08:06 2010 -0400 drm/radeon/kms: init rdev->num_crtc at asic init Replace hardcoded numbers with rdev->num_crtc. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 06abdb0ec6b91f634631404012c4d646389e9e0b Author: Alex Deucher Date: Mon Mar 15 01:36:32 2010 -0400 drm/radeon/kms/pm: fix typo in power table parsing Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit f867c60def7a8dcd86657fd38a8920a4354f305e Author: Alex Deucher Date: Fri Mar 5 14:50:37 2010 -0500 drm/radeon/kms: gfx init fixes for r6xx/r7xx This fixes some issues with the last gfx init patch. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 57f50d70e27f99a9a785c760b2123cdf6a68e2de Author: Alex Deucher Date: Sun Mar 14 16:31:36 2010 -0400 drm/radeon/kms/pm: fix segfault in clock code Make sure we have a crtc assigned to the encoder before dereferencing it. Signed-off-by: Alex Deucher commit 29fb52ca78b4e265ec6c626b0c7b2927953949cf Author: Alex Deucher Date: Thu Mar 11 10:01:17 2010 -0500 drm/radeon/kms: expose thermal/fan i2c buses Look up i2c bus in the power table and expose it. You'll need to load a hwmon driver for any chips on the bus, this patch just exposes the bus. Signed-off-by: Alex Deucher commit 2b497502b7cef167288a08737403a5a6cec697f0 Author: Daniel Vetter Date: Thu Mar 11 21:19:18 2010 +0000 drm/radeon: collect r100 asic related declarations in radeon_asic.h This just an example to show what radeon_asic.h might be good for. Before Jerome kills it ;) Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie commit e6990375ef4ec449994991034238f1ffab8a3a1a Author: Daniel Vetter Date: Thu Mar 11 21:19:17 2010 +0000 drm/radeon: include radeon_asic.h in the asic specific files In essence this creates a home for all asic specific declarations in radeon_asic.h Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie commit 9479c54f0dfa63dad1ecfca897f51693c7c2fa65 Author: Daniel Vetter Date: Thu Mar 11 21:19:16 2010 +0000 drm/radeon: unconfuse return value of radeon_asic->clear_surface_reg No one cares about it, so set it to void. Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie commit 48e7a5f19fe0c10ebb35be7acf383366d139ee0a Author: Daniel Vetter Date: Thu Mar 11 21:19:15 2010 +0000 drm/radeon: move asic structs to radeon_asic.c With these static structs gone, radeon_asic.h is a real header file and can be used as such. Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie commit 0a10c85129c2d53cfd6db81677628e2fe58b5928 Author: Daniel Vetter Date: Thu Mar 11 21:19:14 2010 +0000 drm/radeon: create radeon_asic.c And move asic init plus a few related functions from radeon_device.c to it. This file will hold all the asic structures in the future, but atm they're still stuck in radeon_asic.h. Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie commit 1fc59eda33e55f8787901e3501d695bf5ecec48b Merge: d5e5ded d0d6cb8 Author: Dave Airlie Date: Mon Mar 15 11:08:56 2010 +1000 Merge branch 'radeon-for-airlied' of ../linux-2.6 into drm-linus * 'radeon-for-airlied' of ../linux-2.6: drm/radeon/kms: prepare for more reclocking operations drm/radeon/kms: switch to condition waiting for reclocking drm/radeon/r600: add missing license and comments to r600_blit_shaders.c drm/radeon/kms: improve coding style a little drm/radeon/kms: remove dead audio/HDMI code drm/radeon/kms: enable audio engine on DCE32 drm/radeon/kms: add HDMI code for pre-DCE3 R6xx GPUs drm/radeon/kms: clean assigning HDMI blocks to encoders drm/radeon/kms: clean HDMI definitions drm/radeon/kms/rs4xx: make sure crtcs are enabled when setting timing drm/radeon/kms/r1xx: enable hw i2c drm/radeon/kms: fix i2c prescale calc on older radeons drm/radeon/kms: fix for hw i2c drm/radeon/kms: fix pal tv-out support on legacy IGP chips drm/radeon/kms: further spread spectrum fixes drm/radeon/kms: use lcd pll limits when available drm/radeon/kms/atom: spread spectrum fix drm/radeon/kms: catch atombios infinite loop and break out of it drm/radeon: add new RS880 pci id commit d5e5deddf67389eabc3d9b13004c108120d397e1 Merge: 44fef22 f405350 Author: Dave Airlie Date: Mon Mar 15 11:07:33 2010 +1000 Merge remote branch 'nouveau/for-airlied' into drm-linus * nouveau/for-airlied: drm/nouveau: add module option to disable TV detection drm/nouveau: Never evict VRAM buffers to system. drm/nv50: fix connector table parsing for some cards drm/nv50: add a memory barrier to pushbuf submission drm/nouveau: print a message very early during suspend drm/nv04-nv40: Fix up the programmed horizontal sync pulse delay. drm/nouveau: Gigabyte NX85T connector table lies, it has DVI-I not HDMI drm/nouveau: add option to allow override of dcb connector table types drm/nv50: Improve PGRAPH interrupt handling. drm/nv50: Make ctxprog wait until interrupt handler is done. drm/nouveau: Fix fbcon corruption with font width not divisible by 8 drm/nv50: Remove redundant/incorrect ctxvals initialisation. commit 44fef22416886a04d432043f741a6faf2c6ffefd Author: Ben Skeggs Date: Thu Feb 18 09:12:09 2010 +1000 drm/edid: allow certain bogus edids to hit a fixup path rather than fail Signed-off-by: Ben Skeggs Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 725398322d05486109375fbb85c3404108881e17 Author: Zhao Yakui Date: Thu Mar 4 08:25:55 2010 +0000 drm: remove the EDID blob stored in the EDID property when it is disconnected Now the EDID property will be updated when the corresponding EDID can be obtained from the external display device. But after the external device is plugged-out, the EDID property is not updated. In such case we still get the corresponding EDID property although it is already detected as disconnected. https://bugs.freedesktop.org/show_bug.cgi?id=26743 Signed-off-by: Zhao Yakui Signed-off-by: Zhenyu Wang Cc: stable@kernel.org Signed-off-by: Dave Airlie commit ae6445ac7475ff0526b019560793e50bad9cf78d Author: Randy Dunlap Date: Thu Mar 11 22:01:39 2010 +0000 drm/vmwgfx: depends on FB vmwfgx uses framebuffer interfaces, so it should depend on FB. Otherwise it has these build errors (e.g., when CONFIG_FB=m): drivers/built-in.o: In function `vmw_fb_close': (.text+0x97713): undefined reference to `unregister_framebuffer' drivers/built-in.o: In function `vmw_fb_close': (.text+0x97754): undefined reference to `framebuffer_release' drivers/built-in.o: In function `vmw_fb_init': (.text+0x97e1c): undefined reference to `framebuffer_alloc' drivers/built-in.o: In function `vmw_fb_init': (.text+0x9838d): undefined reference to `register_framebuffer' drivers/built-in.o: In function `vmw_fb_init': (.text+0x9842a): undefined reference to `framebuffer_release' Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Acked-by: Jakob Bornecrantz Signed-off-by: Dave Airlie commit b642ed06f2fccf62534f5269358776e0cba28f3c Author: Robert P. J. Day Date: Sat Mar 13 10:36:32 2010 +0000 drm: "kobject_init/kobject_add" -> "kobject_init_and_add". Replace sequential calls to kobject_init() and kobject_add() with the combo wrapper kobject_init_and_add(), which provides the same semantics. Signed-off-by: Robert P. J. Day Signed-off-by: Dave Airlie commit 72e942dd846f98e2d35aad5436d77a878ef05c5e Author: Dave Airlie Date: Tue Mar 9 06:33:26 2010 +0000 drm/ttm: use drm calloc large and free large Now that the drm core can do this, lets just use it, split the code out so TTM doesn't have to drag all of drmP.h in. Signed-off-by: Dave Airlie commit d0d6cb81e7eb34d83461070ca3e919fba1db437c Author: Rafał Miłecki Date: Tue Mar 2 22:06:52 2010 +0100 drm/radeon/kms: prepare for more reclocking operations Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 839461d3b0e3082eb382f17a3e3899372f28649a Author: Rafał Miłecki Date: Tue Mar 2 22:06:51 2010 +0100 drm/radeon/kms: switch to condition waiting for reclocking We tried to implement interruptible waiting with timeout (it was broken anyway) which was not a good idea as explained by Andrew. It's possible to avoid using additional variable but actually it inroduces using more complex in-kernel tools. So simply add one variable for condition. Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 65388342d66a63a29c76058e94a00d7bc0c6423b Author: Alex Deucher Date: Fri Mar 5 19:22:24 2010 -0500 drm/radeon/r600: add missing license and comments to r600_blit_shaders.c R6xx+ cards need to use the 3D engine to blit data which requires quite a bit of hw state setup. Rather than pull the whole 3D driver (which normally generates the 3D state) into the DRM, we opt to use statically generated state tables. The regsiter state and shaders were hand generated to support blitting functionality. See the 3D driver or documentation for descriptions of the registers and shader instructions. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 3fe373d98cdb35c494517b0954b76f8094f4c59d Author: Rafał Miłecki Date: Sat Mar 6 13:03:38 2010 +0000 drm/radeon/kms: improve coding style a little We still have many magic numbers in HDMI/audio to define Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 0a7d934e6022a12e3f428b2adcb4b531e86170dd Author: Rafał Miłecki Date: Sat Mar 6 13:03:37 2010 +0000 drm/radeon/kms: remove dead audio/HDMI code Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 8a8c6e7cfb63cc5e04d5c247ab8d6253200fd425 Author: Rafał Miłecki Date: Sat Mar 6 13:03:36 2010 +0000 drm/radeon/kms: enable audio engine on DCE32 Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 5715f67cecee3617c7a6ff84ee44da46d525559e Author: Rafał Miłecki Date: Sat Mar 6 13:03:35 2010 +0000 drm/radeon/kms: add HDMI code for pre-DCE3 R6xx GPUs Older GPUs are little different, HDMI blocks are not hard-wired, but routable. We should just find some free HDMI block and route it to choosen encoder. In case of RS6x0 there is only one HDMI block, we don't enable HDMI on RS6x00 yet however. Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 2cd6218cb8043ef4360b561e726cd081f8a380cc Author: Rafał Miłecki Date: Mon Mar 8 22:14:01 2010 +0000 drm/radeon/kms: clean assigning HDMI blocks to encoders We almost always used first HDMI block for first encoder and second for sencod. Exception was KLDSCP_LVTMA. Analyzing code picking DIG encoder shows the same behaviour. It shows HDMI block are related to DIGs, which relation we now use. Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit 808032ee296ee7b37a6df090be40a330e09ae30e Author: Rafał Miłecki Date: Sat Mar 6 13:03:33 2010 +0000 drm/radeon/kms: clean HDMI definitions We already know same offsets are used for different encoders/transmitters, so just numeric them instead naming incorrectly. Additionaly we found additional registers needed for RV770+ Signed-off-by: Rafał Miłecki Signed-off-by: Dave Airlie commit d805f50aa1d9eef63fec356b2be557e2da3cd643 Author: Alex Deucher Date: Thu Mar 11 10:38:07 2010 -0500 drm/radeon/kms/rs4xx: make sure crtcs are enabled when setting timing based on ddx patch from Matthias Hopf. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit b28ea41164dc36110dafcdc63783e9b7fb865784 Author: Alex Deucher Date: Fri Mar 12 13:30:49 2010 -0500 drm/radeon/kms/r1xx: enable hw i2c fixing the i2c prescale in the last patch gets it working on r1xx. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 96a4c8d50de20da865296a380b996f73204d6b34 Author: Alex Deucher Date: Fri Mar 12 12:55:34 2010 -0500 drm/radeon/kms: fix i2c prescale calc on older radeons Should fix fdo bug 26430 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit ae08819c2a4729444676f1bb55e5e28263f6f5a1 Author: Alex Deucher Date: Thu Mar 11 13:28:14 2010 -0500 drm/radeon/kms: fix for hw i2c use the i2c pads to drive SDA Possible fix for fdo bug 26430 Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 15f7207761cfcf8f53fb6e5cacffe060478782c3 Author: Alex Deucher Date: Wed Mar 10 18:33:03 2010 -0500 drm/radeon/kms: fix pal tv-out support on legacy IGP chips Based on ddx patch by Andrzej Hajda. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit 267364ac17f6474c69b03034340f769b22f46105 Author: Alex Deucher Date: Mon Mar 8 17:10:41 2010 -0500 drm/radeon/kms: further spread spectrum fixes Adjust modeset ordering to fix spread spectrum. The spread spectrum command table relies on the crtc routing to already be set in order to work properly on some asics. Should fix fdo bug 25741. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit 86cb2bbfda2cf402aee46779ee90bbb7d915482b Author: Alex Deucher Date: Mon Mar 8 12:55:16 2010 -0500 drm/radeon/kms: use lcd pll limits when available The bios has alternate pll output limits for LCD panels. If available, use these for pll divider calculations. Signed-off-by: Alex Deucher Signed-off-by: Dave Airlie commit b792210e7d1f9fb102061e2016da96cf2ad5cdbd Author: Alex Deucher Date: Sat Mar 6 10:57:30 2010 -0500 drm/radeon/kms/atom: spread spectrum fix The atom spread spectrum table does not always disable ss. Explicitly disable it and then use the atom table to enable later if needed (currently only used for LVDS). Fixes display issues on some systems. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit f4053509669f904aec70c51e2ff75563ba7ae823 Author: Ben Skeggs Date: Mon Mar 15 09:43:51 2010 +1000 drm/nouveau: add module option to disable TV detection Intended to be used as a workaround in cases where we falsely detect that a TV is connected when it's not. Signed-off-by: Ben Skeggs commit 965cf68e8797932e9cd49238a6dd39423ac9b256 Author: Francisco Jerez Date: Sat Mar 6 13:42:45 2010 +0100 drm/nouveau: Never evict VRAM buffers to system. VRAM->system is a synchronous operation: it involves scheduling a VRAM->TT DMA transfer and stalling the CPU until it's finished so that we can unbind the new memory from the translation tables. VRAM->TT can always be performed asynchronously, even if TT is already full and we have to move something out of it. Additionally, allowing VRAM->system behaves badly under heavy memory pressure because once we run out of TT, stuff starts to be moved back and forth between VRAM and system, and the TT contents are hardly renewed. Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit c21b0fe6de3912f53087b4f3991942529f03eef6 Author: Jerome Glisse Date: Tue Mar 2 20:37:52 2010 +0100 drm/radeon/kms: catch atombios infinite loop and break out of it In somecase the atombios code might lead to infinite loop because the GPU is in broken state, this patch track the jump history and will abort atombios execution if we are stuck executing the same jump for more than 1sec. Note that otherwise in some case we might enter an infinite loop in the kernel context which is bad. Signed-off-by: Jerome Glisse Signed-off-by: Dave Airlie commit 338e2b1d571e4873908b199c90d6a31f65137fe3 Author: Alex Deucher Date: Wed Mar 3 13:39:13 2010 -0500 drm/radeon: add new RS880 pci id This should go to 2.6.33 stable as well. Signed-off-by: Alex Deucher Cc: stable@kernel.org Signed-off-by: Dave Airlie commit d544d623c5ef3ca14407e8bc042fdf938a966b04 Author: Ben Skeggs Date: Wed Mar 10 15:52:43 2010 +1000 drm/nv50: fix connector table parsing for some cards The connector table index in the DCB entry for each output type is an index into the connector table, and does *not* necessarily match up with what was previously called "index" in the connector table entries themselves. Not real sure what that index is exactly, renamed to "index2" as we still use it to prevent creating multiple TV connectors. Signed-off-by: Ben Skeggs commit ce48fa93a6f5cadd4141a921dfb4129c8850374e Author: Maarten Maathuis Date: Thu Feb 25 20:00:38 2010 +0100 drm/nv50: add a memory barrier to pushbuf submission - This is useful for vram pushbuffers that are write combined. - pre-nv50 has one too (in WRITE_PUT). Signed-off-by: Maarten Maathuis Signed-off-by: Ben Skeggs commit 81441570c9cbf453891d90f5725adbbfe5a9cc69 Author: Maarten Maathuis Date: Sun Feb 21 13:28:35 2010 +0100 drm/nouveau: print a message very early during suspend - In case of suspend lockups it's nice to know it happened in nouveau. Signed-off-by: Maarten Maathuis Signed-off-by: Ben Skeggs commit e5ec882cfc18007c6076236ac33a713bcc1d35aa Author: Francisco Jerez Date: Fri Mar 5 15:15:39 2010 +0100 drm/nv04-nv40: Fix up the programmed horizontal sync pulse delay. The calculated values were a little bit off (~16 clocks), the only effect it could have had is a slightly offset image with respect to the blob on analog outputs (bug 26790). Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 53c44c3a065ac48c4ccb38f811cf7c5d305c9d4e Author: Ben Skeggs Date: Thu Mar 4 12:12:22 2010 +1000 drm/nouveau: Gigabyte NX85T connector table lies, it has DVI-I not HDMI Signed-off-by: Ben Skeggs commit da647d5bf3c0a4b7ad150803910cb1d737ac522e Author: Ben Skeggs Date: Thu Mar 4 12:00:39 2010 +1000 drm/nouveau: add option to allow override of dcb connector table types Signed-off-by: Ben Skeggs commit 304424e17dd904cef048ef8966d9f54618a915cc Author: Marcin Kościelnicki Date: Mon Mar 1 00:18:39 2010 +0000 drm/nv50: Improve PGRAPH interrupt handling. This makes nouveau recognise and report more kinds of PGRAPH errors, as well as prevent GPU lockups resulting from some of them. Lots of guesswork was involved and some part of this is probably incorrect. Some potential-lockuop situations are handled by just resetting a whole PGRAPH subunit, which doesn't sound like a "proper" solution, but seems to work just fine... for now. Signed-off-by: Marcin Kościelnicki Signed-off-by: Ben Skeggs commit 3bf777bf0ab112527cea103c3681934a9f41c03d Author: Marcin Kościelnicki Date: Sun Feb 28 23:45:38 2010 +0000 drm/nv50: Make ctxprog wait until interrupt handler is done. This will fix races between generated ctxprogs and interrupt handler. Signed-off-by: Marcin Kościelnicki Signed-off-by: Ben Skeggs commit c82b88d578847909797945824851a6a9a84f9c20 Author: Marcin Kościelnicki Date: Sat Feb 27 18:13:35 2010 +0000 drm/nouveau: Fix fbcon corruption with font width not divisible by 8 NV50 is nice and has a switch that autoaligns stuff for us. Pre-NV50, we need to align input bitmap width manually. Signed-off-by: Marcin Kościelnicki Signed-off-by: Francisco Jerez Signed-off-by: Ben Skeggs commit 37000d275721e25af6b49fbb2dbcd04022091276 Author: Marcin Kościelnicki Date: Thu Feb 25 18:53:37 2010 +0000 drm/nv50: Remove redundant/incorrect ctxvals initialisation. 11c/004 offset corresponds to PGRAPH reg 0x400828, and is initialised earlier anyway by both our ctxprog generator and blob ctxvals. It's actually incorrect with the generator, since we use different layout on pre-NVA0. Signed-off-by: Marcin Kościelnicki Signed-off-by: Ben Skeggs