From 6f857c789a2627dbb2910af15c0cce443c76bb4a Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 22 Dec 2010 00:26:53 +0100 Subject: [PATCH 01/40] VERSION: change version to 0.90.0 Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index d64531f130..ae02209bb6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -devel +0.90.0 From 5e79b4fffc83d412ea444c533b760cc7af4e6ab8 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 23 Dec 2010 17:55:16 +0100 Subject: [PATCH 02/40] VERSION: set version to 0.90.1 (beta-1) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index ae02209bb6..fa3fb18d5a 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.0 +0.90.1 From 82e7590566f7280eef30f7e68acc63103d928d8f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 31 Dec 2010 01:25:42 +0100 Subject: [PATCH 03/40] VERSION: set version to 0.90.2 (beta-2) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index fa3fb18d5a..654fae022d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.1 +0.90.2 From 50fc4a35204324cf4059afd2ba966eb687b8ac44 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 4 Jan 2011 13:45:14 +0100 Subject: [PATCH 04/40] VERSION: set version to 0.90.3 (beta-3) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 654fae022d..c7709f4364 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.2 +0.90.3 From 63deedf2f8d4368ac5561ed81e35ed6d2da1a83f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 13 Jan 2011 18:20:02 +0100 Subject: [PATCH 05/40] VERSION: set version to 0.90.4 (beta-4) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index c7709f4364..9d91bd3d5a 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.3 +0.90.4 From 1400516208e5566501b271f3246844390ba48551 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 13 Jan 2011 23:00:01 +0100 Subject: [PATCH 06/40] Python: symlink python binary to python2 for hostbuild (needed for Mesa) Signed-off-by: Stephan Raue --- packages/lang/Python/build | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/lang/Python/build b/packages/lang/Python/build index f497c8d8e4..44999b1ea8 100755 --- a/packages/lang/Python/build +++ b/packages/lang/Python/build @@ -42,6 +42,9 @@ LDFLAGS="$LDFLAGS -lexpat" \ make make install +# symlink python binary to python2 (needed for Mesa) + ln -s python $ROOT/$TOOLCHAIN/bin/python2 + cp Parser/pgen ./hostpgen cp python ./hostpython From ec98c9a460d7a44c4462db0b4e5dd2de510721a6 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 13 Jan 2011 23:00:22 +0100 Subject: [PATCH 07/40] Mesa: depends on Python Signed-off-by: Stephan Raue --- packages/graphics/Mesa/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/graphics/Mesa/meta b/packages/graphics/Mesa/meta index 395c295921..8289284c3e 100644 --- a/packages/graphics/Mesa/meta +++ b/packages/graphics/Mesa/meta @@ -26,7 +26,7 @@ PKG_LICENSE="OSS" PKG_SITE="http://www.mesa3d.org/" PKG_URL="ftp://ftp.freedesktop.org/pub/mesa/$PKG_VERSION/MesaLib-$PKG_VERSION.tar.bz2" PKG_DEPENDS="libXdamage libdrm talloc expat libXext libXfixes libXxf86vm libxcb libX11" -PKG_BUILD_DEPENDS="toolchain libxml2-host talloc expat glproto dri2proto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11" +PKG_BUILD_DEPENDS="toolchain Python libxml2-host talloc expat glproto dri2proto libdrm libXext libXdamage libXfixes libXxf86vm libxcb libX11" PKG_PRIORITY="optional" PKG_SECTION="graphics" PKG_SHORTDESC="mesa: 3-D graphics library with OpenGL API" From 5af4532d1000c5a6d79350c07140d63724610df3 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 23 Jan 2011 23:19:16 +0100 Subject: [PATCH 08/40] VERSION: set version to 0.90.5 (beta-5) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 9d91bd3d5a..5204d81e81 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.4 +0.90.5 From 0483a81defc005c8fe9a45a6b376299738cfa71a Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 24 Jan 2011 14:02:06 +0100 Subject: [PATCH 09/40] create_installstick.bat: use temporary LABEL support again Signed-off-by: Stephan Raue --- config/release/create_installstick.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/release/create_installstick.bat b/config/release/create_installstick.bat index 4198fbe4f3..d5589d269b 100644 --- a/config/release/create_installstick.bat +++ b/config/release/create_installstick.bat @@ -91,7 +91,7 @@ echo PROMPT 0 >> %DRIVE%\syslinux.cfg echo. >> %DRIVE%\syslinux.cfg echo LABEL linux >> %DRIVE%\syslinux.cfg echo KERNEL /KERNEL >> %DRIVE%\syslinux.cfg -echo APPEND boot=UUID=%DRIVEUUID% installer quiet >> %DRIVE%\syslinux.cfg +echo APPEND boot=LABEL=OPENELEC installer quiet >> %DRIVE%\syslinux.cfg GOTO END :BADMD5 From f50dcb01e910434e8858c9fbd1d5bca47152b0ac Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 25 Jan 2011 16:02:55 +0100 Subject: [PATCH 10/40] VERSION: set version to 0.90.6 (beta-6) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 5204d81e81..d6f22efcc6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.5 +0.90.6 From 64b3d2bbce57f46e909bdb99b20d5f301cb3cae1 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 1 Feb 2011 01:54:02 +0100 Subject: [PATCH 11/40] VERSION: set version to 0.99.1 (RC-1) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index d6f22efcc6..626c498f35 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.90.6 +0.99.1 From 9cd6e7e25edb0a2efa936e9adcb9cd11d46e550c Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sat, 26 Feb 2011 21:58:50 +0100 Subject: [PATCH 12/40] VERSION: set version to 0.99.2 (RC-2) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 626c498f35..3b66e07e64 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.1 +0.99.2 From 33648e3ed989f04a3e777236f73f336901560cec Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 2 Mar 2011 03:59:15 +0100 Subject: [PATCH 13/40] VERSION: set version to 0.99.3 (RC-3) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 3b66e07e64..d17274b039 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.2 +0.99.3 From fa8242f7adc46c9f60223747be96687bfd4d66f0 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sat, 12 Mar 2011 03:42:25 +0100 Subject: [PATCH 14/40] VERSION: set version to 0.99.4 (RC-4) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index d17274b039..de9bcdff29 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.3 +0.99.4 From 2315f30b812f0028a159723a12445268f39ffa6c Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 13 Mar 2011 03:05:26 +0100 Subject: [PATCH 15/40] Revert "linux: update nouveau upstream patches" This reverts commit a0bad11b9f0f12c505e02cefeea4f785f2b67abd. --- ...8-110-drm_nouveau_upstream-20110222.patch} | 978 ++++-------------- 1 file changed, 201 insertions(+), 777 deletions(-) rename packages/linux/patches/{linux-2.6.38-rc8-110-drm_nouveau_upstream-20110312.3.patch => linux-2.6.38-rc8-110-drm_nouveau_upstream-20110222.patch} (77%) diff --git a/packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110312.3.patch b/packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110222.patch similarity index 77% rename from packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110312.3.patch rename to packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110222.patch index 4abd334599..ed88d624a0 100644 --- a/packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110312.3.patch +++ b/packages/linux/patches/linux-2.6.38-rc8-110-drm_nouveau_upstream-20110222.patch @@ -1,6 +1,6 @@ -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bios.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bios.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bios.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_bios.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bios.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_bios.c 2011-02-22 14:25:08.609606768 +0100 @@ -282,7 +282,7 @@ { #if 0 @@ -108,9 +108,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.c linux-2.6.38- bios->dev = dev; if (!NVShadowVBIOS(dev, bios->data)) -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bios.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bios.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bios.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_bios.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bios.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_bios.h 2011-02-22 14:16:21.580230479 +0100 @@ -251,7 +251,7 @@ uint8_t digital_min_front_porch; bool fp_no_ddc; @@ -120,10 +120,10 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bios.h linux-2.6.38- uint8_t data[NV_PROM_SIZE]; unsigned int length; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_bo.c 2011-03-09 18:30:58.000000000 +0100 -@@ -57,8 +57,8 @@ +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_bo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_bo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_bo.c 2011-02-22 14:32:02.564311615 +0100 +@@ -54,8 +54,8 @@ } static void @@ -134,7 +134,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc { struct drm_nouveau_private *dev_priv = nouveau_bdev(nvbo->bo.bdev); -@@ -83,7 +83,7 @@ +@@ -80,7 +80,7 @@ } } else { if (likely(dev_priv->chan_vm)) { @@ -143,7 +143,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc *page_shift = dev_priv->chan_vm->lpg_shift; else *page_shift = dev_priv->chan_vm->spg_shift; -@@ -101,8 +101,7 @@ +@@ -98,8 +98,7 @@ int nouveau_bo_new(struct drm_device *dev, struct nouveau_channel *chan, int size, int align, uint32_t flags, uint32_t tile_mode, @@ -153,7 +153,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc { struct drm_nouveau_private *dev_priv = dev->dev_private; struct nouveau_bo *nvbo; -@@ -113,16 +112,14 @@ +@@ -110,16 +109,14 @@ return -ENOMEM; INIT_LIST_HEAD(&nvbo->head); INIT_LIST_HEAD(&nvbo->entry); @@ -172,7 +172,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc ret = nouveau_vm_get(dev_priv->chan_vm, size, page_shift, NV_MEM_ACCESS_RW, &nvbo->vma); if (ret) { -@@ -144,11 +141,8 @@ +@@ -140,11 +137,8 @@ } nvbo->channel = NULL; @@ -186,7 +186,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc *pnvbo = nvbo; return 0; } -@@ -318,11 +312,8 @@ +@@ -314,11 +308,8 @@ if (ret) return ret; @@ -200,7 +200,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc return 0; } -@@ -385,7 +376,8 @@ +@@ -381,7 +372,8 @@ case NOUVEAU_GART_AGP: return ttm_agp_backend_init(bdev, dev->agp->bridge); #endif @@ -210,7 +210,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc return nouveau_sgdma_init_ttm(dev); default: NV_ERROR(dev, "Unknown GART type %d\n", -@@ -431,7 +423,10 @@ +@@ -427,7 +419,10 @@ man->default_caching = TTM_PL_FLAG_WC; break; case TTM_PL_TT: @@ -222,7 +222,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc switch (dev_priv->gart_info.type) { case NOUVEAU_GART_AGP: man->flags = TTM_MEMTYPE_FLAG_MAPPABLE; -@@ -439,7 +434,8 @@ +@@ -435,7 +430,8 @@ TTM_PL_FLAG_WC; man->default_caching = TTM_PL_FLAG_WC; break; @@ -232,7 +232,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc man->flags = TTM_MEMTYPE_FLAG_MAPPABLE | TTM_MEMTYPE_FLAG_CMA; man->available_caching = TTM_PL_MASK_CACHING; -@@ -501,45 +497,22 @@ +@@ -497,45 +493,22 @@ return ret; } @@ -286,7 +286,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc page_count = new_mem->num_pages; while (page_count) { -@@ -574,33 +547,18 @@ +@@ -570,33 +543,18 @@ nv50_bo_move_m2mf(struct nouveau_channel *chan, struct ttm_buffer_object *bo, struct ttm_mem_reg *old_mem, struct ttm_mem_reg *new_mem) { @@ -327,7 +327,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc while (length) { u32 amount, stride, height; -@@ -681,6 +639,15 @@ +@@ -677,6 +635,15 @@ return 0; } @@ -343,7 +343,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc static int nv04_bo_move_m2mf(struct nouveau_channel *chan, struct ttm_buffer_object *bo, struct ttm_mem_reg *old_mem, struct ttm_mem_reg *new_mem) -@@ -734,15 +701,43 @@ +@@ -730,15 +697,43 @@ { struct drm_nouveau_private *dev_priv = nouveau_bdev(bo->bdev); struct nouveau_bo *nvbo = nouveau_bo(bo); @@ -388,7 +388,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc if (dev_priv->card_type < NV_50) ret = nv04_bo_move_m2mf(chan, bo, &bo->mem, new_mem); else -@@ -756,6 +751,7 @@ +@@ -752,6 +747,7 @@ no_wait_gpu, new_mem); } @@ -396,7 +396,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc if (chan == dev_priv->channel) mutex_unlock(&chan->mutex); return ret; -@@ -766,6 +762,7 @@ +@@ -762,6 +758,7 @@ bool no_wait_reserve, bool no_wait_gpu, struct ttm_mem_reg *new_mem) { @@ -404,7 +404,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc u32 placement_memtype = TTM_PL_FLAG_TT | TTM_PL_MASK_CACHING; struct ttm_placement placement; struct ttm_mem_reg tmp_mem; -@@ -785,7 +782,23 @@ +@@ -781,7 +778,23 @@ if (ret) goto out; @@ -428,7 +428,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc if (ret) goto out; -@@ -828,6 +841,36 @@ +@@ -824,6 +837,36 @@ return ret; } @@ -465,7 +465,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc static int nouveau_bo_vm_bind(struct ttm_buffer_object *bo, struct ttm_mem_reg *new_mem, struct nouveau_tile_reg **new_tile) -@@ -835,19 +878,13 @@ +@@ -831,19 +874,13 @@ struct drm_nouveau_private *dev_priv = nouveau_bdev(bo->bdev); struct drm_device *dev = dev_priv->dev; struct nouveau_bo *nvbo = nouveau_bo(bo); @@ -489,7 +489,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc *new_tile = nv10_mem_set_tiling(dev, offset, new_mem->size, nvbo->tile_mode, nvbo->tile_flags); -@@ -864,11 +901,8 @@ +@@ -860,11 +897,8 @@ struct drm_nouveau_private *dev_priv = nouveau_bdev(bo->bdev); struct drm_device *dev = dev_priv->dev; @@ -503,7 +503,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc } static int -@@ -882,9 +916,11 @@ +@@ -878,9 +912,11 @@ struct nouveau_tile_reg *new_tile = NULL; int ret = 0; @@ -518,7 +518,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc /* Fake bo copy. */ if (old_mem->mem_type == TTM_PL_SYSTEM && !bo->ttm) { -@@ -915,10 +951,12 @@ +@@ -911,10 +947,12 @@ ret = ttm_bo_move_memcpy(bo, evict, no_wait_reserve, no_wait_gpu, new_mem); out: @@ -535,7 +535,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc return ret; } -@@ -959,7 +997,7 @@ +@@ -955,7 +993,7 @@ break; case TTM_PL_VRAM: { @@ -544,7 +544,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc u8 page_shift; if (!dev_priv->bar1_vm) { -@@ -970,23 +1008,23 @@ +@@ -966,23 +1004,23 @@ } if (dev_priv->card_type == NV_C0) @@ -573,7 +573,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc if (dev_priv->card_type == NV_50) /*XXX*/ mem->bus.offset -= 0x0020000000ULL; mem->bus.base = pci_resource_start(dev->pdev, 1); -@@ -1003,16 +1041,16 @@ +@@ -999,16 +1037,16 @@ nouveau_ttm_io_mem_free(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem) { struct drm_nouveau_private *dev_priv = nouveau_bdev(bdev); @@ -594,7 +594,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc } static int -@@ -1062,6 +1100,7 @@ +@@ -1058,6 +1096,7 @@ .invalidate_caches = nouveau_bo_invalidate_caches, .init_mem_type = nouveau_bo_init_mem_type, .evict_flags = nouveau_bo_evict_flags, @@ -602,9 +602,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_bo.c linux-2.6.38-rc .move = nouveau_bo_move, .verify_access = nouveau_bo_verify_access, .sync_obj_signaled = __nouveau_fence_signalled, -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_channel.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_channel.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_channel.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_channel.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_channel.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_channel.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_channel.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_channel.c 2011-02-22 14:16:21.581230459 +0100 @@ -35,7 +35,7 @@ struct drm_nouveau_private *dev_priv = dev->dev_private; struct nouveau_bo *pb = chan->pushbuf_bo; @@ -624,9 +624,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_channel.c linux-2.6. if (ret) { NV_ERROR(dev, "error allocating DMA push buffer: %d\n", ret); return NULL; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_display.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_display.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_display.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_display.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_display.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_display.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_display.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_display.c 2011-02-22 14:16:21.582230439 +0100 @@ -32,6 +32,7 @@ #include "nouveau_hw.h" #include "nouveau_crtc.h" @@ -758,10 +758,10 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_display.c linux-2.6. kfree(s); spin_unlock_irqrestore(&dev->event_lock, flags); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dma.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.c 2011-03-12 22:37:55.420744532 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dma.c 2011-03-09 18:30:58.000000000 +0100 -@@ -97,13 +97,15 @@ +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dma.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_dma.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dma.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_dma.c 2011-02-22 14:16:21.582230439 +0100 +@@ -96,13 +96,15 @@ OUT_RING(chan, 0); /* Initialise NV_MEMORY_TO_MEMORY_FORMAT */ @@ -781,9 +781,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.c linux-2.6.38-r /* Sit back and pray the channel works.. */ FIRE_RING(chan); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dma.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dma.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dma.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_dma.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dma.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_dma.h 2011-02-22 14:16:21.582230439 +0100 @@ -61,8 +61,6 @@ NvM2MF = 0x80000001, NvDmaFB = 0x80000002, @@ -810,9 +810,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dma.h linux-2.6.38-r }; #define NV_MEMORY_TO_MEMORY_FORMAT 0x00000039 -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dp.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dp.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dp.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_dp.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dp.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_dp.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_dp.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_dp.c 2011-02-22 14:16:21.582230439 +0100 @@ -175,7 +175,6 @@ { struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); @@ -829,9 +829,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_dp.c linux-2.6.38-rc ret = auxch_rd(encoder, DP_ADJUST_REQUEST_LANE0_1, request, 2); if (ret) -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_drv.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_drv.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_drv.h 2011-03-12 22:37:55.423744472 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_drv.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_drv.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_drv.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_drv.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_drv.h 2011-02-22 14:16:21.583230419 +0100 @@ -57,7 +57,7 @@ #include "nouveau_util.h" @@ -953,16 +953,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_drv.h linux-2.6.38-r /* nouveau_notifier.c */ extern int nouveau_notifier_init_channel(struct nouveau_channel *); -@@ -1076,7 +1077,7 @@ - /* nv50_fb.c */ - extern int nv50_fb_init(struct drm_device *); - extern void nv50_fb_takedown(struct drm_device *); --extern void nv50_fb_vm_trap(struct drm_device *, int display, const char *); -+extern void nv50_fb_vm_trap(struct drm_device *, int display); - - /* nvc0_fb.c */ - extern int nvc0_fb_init(struct drm_device *); -@@ -1295,7 +1296,7 @@ +@@ -1294,7 +1295,7 @@ extern int nouveau_bo_new(struct drm_device *, struct nouveau_channel *, int size, int align, uint32_t flags, uint32_t tile_mode, uint32_t tile_flags, @@ -971,7 +962,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_drv.h linux-2.6.38-r extern int nouveau_bo_pin(struct nouveau_bo *, uint32_t flags); extern int nouveau_bo_unpin(struct nouveau_bo *); extern int nouveau_bo_map(struct nouveau_bo *); -@@ -1356,9 +1357,9 @@ +@@ -1355,9 +1356,9 @@ /* nouveau_gem.c */ extern int nouveau_gem_new(struct drm_device *, struct nouveau_channel *, @@ -983,9 +974,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_drv.h linux-2.6.38-r extern int nouveau_gem_object_new(struct drm_gem_object *); extern void nouveau_gem_object_del(struct drm_gem_object *); extern int nouveau_gem_ioctl_new(struct drm_device *, void *, -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fbcon.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fbcon.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fbcon.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fbcon.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fbcon.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_fbcon.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fbcon.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_fbcon.c 2011-02-22 14:16:21.584230398 +0100 @@ -296,8 +296,8 @@ size = mode_cmd.pitch * mode_cmd.height; size = roundup(size, PAGE_SIZE); @@ -997,9 +988,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fbcon.c linux-2.6.38 if (ret) { NV_ERROR(dev, "failed to allocate framebuffer\n"); goto out; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fb.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fb.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fb.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fb.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fb.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_fb.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fb.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_fb.h 2011-02-22 14:16:21.584230398 +0100 @@ -30,6 +30,9 @@ struct nouveau_framebuffer { struct drm_framebuffer base; @@ -1010,18 +1001,10 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fb.h linux-2.6.38-rc }; static inline struct nouveau_framebuffer * -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fence.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_fence.c 2011-03-09 18:30:58.000000000 +0100 -@@ -27,13 +27,15 @@ - #include "drmP.h" - #include "drm.h" - -+#include -+#include -+ - #include "nouveau_drv.h" - #include "nouveau_ramht.h" +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_fence.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_fence.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_fence.c 2011-02-22 14:16:21.584230398 +0100 +@@ -32,8 +32,7 @@ #include "nouveau_dma.h" #define USE_REFCNT(dev) (nouveau_private(dev)->chipset >= 0x10) @@ -1031,33 +1014,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 struct nouveau_fence { struct nouveau_channel *channel; -@@ -230,7 +232,8 @@ - __nouveau_fence_wait(void *sync_obj, void *sync_arg, bool lazy, bool intr) - { - unsigned long timeout = jiffies + (3 * DRM_HZ); -- unsigned long sleep_time = jiffies + 1; -+ unsigned long sleep_time = NSEC_PER_MSEC / 1000; -+ ktime_t t; - int ret = 0; - - while (1) { -@@ -244,8 +247,13 @@ - - __set_current_state(intr ? TASK_INTERRUPTIBLE - : TASK_UNINTERRUPTIBLE); -- if (lazy && time_after_eq(jiffies, sleep_time)) -- schedule_timeout(1); -+ if (lazy) { -+ t = ktime_set(0, sleep_time); -+ schedule_hrtimeout(&t, HRTIMER_MODE_REL); -+ sleep_time *= 2; -+ if (sleep_time > NSEC_PER_MSEC) -+ sleep_time = NSEC_PER_MSEC; -+ } - - if (intr && signal_pending(current)) { - ret = -ERESTARTSYS; -@@ -259,11 +267,12 @@ +@@ -259,11 +258,12 @@ } static struct nouveau_semaphore * @@ -1072,7 +1029,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 if (!USE_SEMA(dev)) return NULL; -@@ -277,9 +286,9 @@ +@@ -277,9 +277,9 @@ goto fail; spin_lock(&dev_priv->fence.lock); @@ -1084,7 +1041,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 spin_unlock(&dev_priv->fence.lock); if (!sema->mem) -@@ -287,7 +296,8 @@ +@@ -287,7 +287,8 @@ kref_init(&sema->ref); sema->dev = dev; @@ -1094,7 +1051,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 return sema; fail: -@@ -296,7 +306,7 @@ +@@ -296,7 +297,7 @@ } static void @@ -1103,7 +1060,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 { struct nouveau_semaphore *sema = container_of(ref, struct nouveau_semaphore, ref); -@@ -318,61 +328,107 @@ +@@ -318,61 +319,107 @@ if (unlikely(!signalled)) nouveau_bo_wr32(dev_priv->fence.bo, sema->mem->start / 4, 1); @@ -1256,7 +1213,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 } /* Delay semaphore destruction until its work is done */ -@@ -383,7 +439,6 @@ +@@ -383,7 +430,6 @@ kref_get(&sema->ref); nouveau_fence_work(fence, semaphore_work, sema); nouveau_fence_unref(&fence); @@ -1264,7 +1221,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 return 0; } -@@ -400,7 +455,7 @@ +@@ -400,7 +446,7 @@ nouveau_fence_signalled(fence))) goto out; @@ -1273,7 +1230,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 if (!sema) { /* Early card or broken userspace, fall back to * software sync. */ -@@ -418,17 +473,17 @@ +@@ -418,17 +464,17 @@ } /* Make wchan wait until it gets signalled */ @@ -1294,7 +1251,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 out: if (chan) nouveau_channel_put_unlocked(&chan); -@@ -449,22 +504,23 @@ +@@ -449,22 +495,23 @@ struct nouveau_gpuobj *obj = NULL; int ret; @@ -1326,7 +1283,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 struct ttm_mem_reg *mem = &dev_priv->fence.bo->bo.mem; ret = nouveau_gpuobj_dma_new(chan, NV_CLASS_DMA_IN_MEMORY, -@@ -484,14 +540,20 @@ +@@ -484,14 +531,20 @@ return ret; BEGIN_RING(chan, NvSubSw, NV_SW_DMA_SEMAPHORE, 1); OUT_RING(chan, NvSema); @@ -1348,7 +1305,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 return 0; } -@@ -519,12 +581,13 @@ +@@ -519,12 +572,13 @@ nouveau_fence_init(struct drm_device *dev) { struct drm_nouveau_private *dev_priv = dev->dev_private; @@ -1364,9 +1321,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_fence.c linux-2.6.38 if (ret) return ret; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_gem.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_gem.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_gem.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_gem.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_gem.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_gem.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_gem.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_gem.c 2011-02-22 14:16:21.585230377 +0100 @@ -61,19 +61,36 @@ int @@ -1460,36 +1417,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_gem.c linux-2.6.38-r (write_domains ? write_domains : read_domains); uint32_t pref_flags = 0, valid_flags = 0; -@@ -592,7 +600,7 @@ - if (push[i].bo_index >= req->nr_buffers) { - NV_ERROR(dev, "push %d buffer not in list\n", i); - ret = -EINVAL; -- goto out; -+ goto out_prevalid; - } - - bo[push[i].bo_index].read_domains |= (1 << 31); -@@ -604,7 +612,7 @@ - if (ret) { - if (ret != -ERESTARTSYS) - NV_ERROR(dev, "validate: %d\n", ret); -- goto out; -+ goto out_prevalid; - } - - /* Apply any relocations that are required */ -@@ -697,6 +705,8 @@ - out: - validate_fini(&op, fence); - nouveau_fence_unref(&fence); -+ -+out_prevalid: - kfree(bo); - kfree(push); - -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_mem.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c 2011-03-12 22:37:55.425744434 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_mem.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_mem.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_mem.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_mem.c 2011-02-22 14:16:21.587230337 +0100 @@ -152,7 +152,6 @@ { struct drm_nouveau_private *dev_priv = dev->dev_private; @@ -1521,48 +1451,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r ret = pci_set_dma_mask(dev->pdev, DMA_BIT_MASK(dma_bits)); if (ret) -@@ -419,14 +424,32 @@ - } - - /* reserve space at end of VRAM for PRAMIN */ -- if (dev_priv->chipset == 0x40 || dev_priv->chipset == 0x47 || -- dev_priv->chipset == 0x49 || dev_priv->chipset == 0x4b) -- dev_priv->ramin_rsvd_vram = (2 * 1024 * 1024); -- else -- if (dev_priv->card_type >= NV_40) -- dev_priv->ramin_rsvd_vram = (1 * 1024 * 1024); -- else -- dev_priv->ramin_rsvd_vram = (512 * 1024); -+ if (dev_priv->card_type >= NV_50) { -+ dev_priv->ramin_rsvd_vram = 1 * 1024 * 1024; -+ } else -+ if (dev_priv->card_type >= NV_40) { -+ u32 vs = hweight8((nv_rd32(dev, 0x001540) & 0x0000ff00) >> 8); -+ u32 rsvd; -+ -+ /* estimate grctx size, the magics come from nv40_grctx.c */ -+ if (dev_priv->chipset == 0x40) rsvd = 0x6aa0 * vs; -+ else if (dev_priv->chipset < 0x43) rsvd = 0x4f00 * vs; -+ else if (nv44_graph_class(dev)) rsvd = 0x4980 * vs; -+ else rsvd = 0x4a40 * vs; -+ rsvd += 16 * 1024; -+ rsvd *= dev_priv->engine.fifo.channels; -+ -+ /* pciegart table */ -+ if (drm_device_is_pcie(dev)) -+ rsvd += 512 * 1024; -+ -+ /* object storage */ -+ rsvd += 512 * 1024; -+ -+ dev_priv->ramin_rsvd_vram = round_up(rsvd, 4096); -+ } else { -+ dev_priv->ramin_rsvd_vram = 512 * 1024; -+ } - - ret = dev_priv->engine.vram.init(dev); - if (ret) -@@ -455,13 +478,17 @@ +@@ -455,13 +460,17 @@ return ret; } @@ -1587,7 +1476,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r } dev_priv->fb_mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 1), -@@ -666,13 +693,14 @@ +@@ -666,13 +675,14 @@ { struct drm_nouveau_private *dev_priv = nouveau_bdev(man->bdev); struct nouveau_mm *mm; @@ -1606,7 +1495,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r if (ret) return ret; -@@ -700,9 +728,15 @@ +@@ -700,9 +710,15 @@ { struct drm_nouveau_private *dev_priv = nouveau_bdev(man->bdev); struct nouveau_vram_engine *vram = &dev_priv->engine.vram; @@ -1623,7 +1512,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r } static int -@@ -715,7 +749,7 @@ +@@ -715,7 +731,7 @@ struct nouveau_vram_engine *vram = &dev_priv->engine.vram; struct drm_device *dev = dev_priv->dev; struct nouveau_bo *nvbo = nouveau_bo(bo); @@ -1632,16 +1521,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r u32 size_nc = 0; int ret; -@@ -724,7 +758,7 @@ - - ret = vram->get(dev, mem->num_pages << PAGE_SHIFT, - mem->page_alignment << PAGE_SHIFT, size_nc, -- (nvbo->tile_flags >> 8) & 0xff, &node); -+ (nvbo->tile_flags >> 8) & 0x3ff, &node); - if (ret) { - mem->mm_node = NULL; - return (ret == -ENOSPC) ? 0 : ret; -@@ -771,3 +805,84 @@ +@@ -769,3 +785,84 @@ nouveau_vram_manager_del, nouveau_vram_manager_debug }; @@ -1726,9 +1606,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mem.c linux-2.6.38-r + nouveau_gart_manager_del, + nouveau_gart_manager_debug +}; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mm.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_mm.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mm.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_mm.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_mm.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_mm.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_mm.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_mm.h 2011-02-22 14:16:21.587230337 +0100 @@ -53,13 +53,13 @@ int nv50_vram_init(struct drm_device *); @@ -1746,9 +1626,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_mm.h linux-2.6.38-rc bool nvc0_vram_flags_valid(struct drm_device *, u32 tile_flags); #endif -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_notifier.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_notifier.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_notifier.c 2011-03-12 22:37:55.427744395 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_notifier.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_notifier.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_notifier.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_notifier.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_notifier.c 2011-02-22 14:16:21.587230337 +0100 @@ -39,12 +39,11 @@ int ret; @@ -1765,15 +1645,15 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_notifier.c linux-2.6 if (ret) return ret; -@@ -100,6 +99,7 @@ - uint32_t *b_offset) +@@ -99,6 +98,7 @@ + int size, uint32_t *b_offset) { struct drm_device *dev = chan->dev; + struct drm_nouveau_private *dev_priv = dev->dev_private; struct nouveau_gpuobj *nobj = NULL; struct drm_mm_node *mem; uint32_t offset; -@@ -114,11 +114,16 @@ +@@ -112,11 +112,16 @@ return -ENOMEM; } @@ -1795,9 +1675,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_notifier.c linux-2.6 offset += mem->start; ret = nouveau_gpuobj_dma_new(chan, NV_CLASS_DMA_IN_MEMORY, offset, -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_object.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_object.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_object.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_object.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_object.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_object.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_object.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_object.c 2011-02-22 14:16:21.588230317 +0100 @@ -36,6 +36,7 @@ #include "nouveau_drm.h" #include "nouveau_ramht.h" @@ -1872,9 +1752,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_object.c linux-2.6.3 } /* VRAM ctxdma */ -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_ramht.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_ramht.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_ramht.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_ramht.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_ramht.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_ramht.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_ramht.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_ramht.c 2011-02-22 14:16:21.589230297 +0100 @@ -114,7 +114,9 @@ (gpuobj->engine << NV40_RAMHT_CONTEXT_ENGINE_SHIFT); } else { @@ -1886,9 +1766,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_ramht.c linux-2.6.38 } else { ctx = (gpuobj->cinst >> 4) | ((gpuobj->engine << -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_sgdma.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_sgdma.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_sgdma.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_sgdma.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_sgdma.c 2011-02-22 14:16:21.589230297 +0100 @@ -74,8 +74,24 @@ } } @@ -2200,7 +2080,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38 return &nvbe->backend; } -@@ -210,21 +409,64 @@ +@@ -210,21 +409,65 @@ { struct drm_nouveau_private *dev_priv = dev->dev_private; struct nouveau_gpuobj *gpuobj = NULL; @@ -2221,7 +2101,8 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38 - ret = nouveau_gpuobj_new(dev, NULL, obj_size, 16, - NVOBJ_FLAG_ZERO_ALLOC | - NVOBJ_FLAG_ZERO_FREE, &gpuobj); -+ if (dev_priv->card_type >= NV_50 || drm_device_is_pcie(dev)) ++ if (dev_priv->card_type >= NV_50 || ++ dev_priv->ramin_rsvd_vram >= 2 * 1024 * 1024) + aper_size = 512 * 1024 * 1024; + else + aper_size = 64 * 1024 * 1024; @@ -2279,7 +2160,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38 if (ret) { NV_ERROR(dev, "Error creating sgdma object: %d\n", ret); return ret; -@@ -236,25 +478,14 @@ +@@ -236,25 +479,14 @@ (0 << 14) /* RW */ | (2 << 16) /* PCI */); nv_wo32(gpuobj, 4, aper_size - 1); @@ -2307,7 +2188,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38 return 0; } -@@ -264,7 +495,13 @@ +@@ -264,7 +496,13 @@ struct drm_nouveau_private *dev_priv = dev->dev_private; nouveau_gpuobj_ref(NULL, &dev_priv->gart_info.sg_ctxdma); @@ -2322,9 +2203,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_sgdma.c linux-2.6.38 } uint32_t -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_state.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_state.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_state.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_state.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_state.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_state.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_state.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_state.c 2011-02-22 14:16:21.590230277 +0100 @@ -544,7 +544,6 @@ nouveau_card_init_channel(struct drm_device *dev) { @@ -2415,9 +2296,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_state.c linux-2.6.38 break; case NOUVEAU_GETPARAM_GRAPH_UNITS: /* NV40 and NV50 versions are quite different, but register -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_temp.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_temp.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_temp.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_temp.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_temp.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_temp.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_temp.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_temp.c 2011-02-22 14:16:21.590230277 +0100 @@ -239,11 +239,9 @@ probe_monitoring_device(struct nouveau_i2c_chan *i2c, struct i2c_board_info *info) @@ -2431,65 +2312,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_temp.c linux-2.6.38- client = i2c_new_device(&i2c->adapter, info); if (!client) -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_util.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_util.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_util.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_util.c 2011-03-09 18:30:58.000000000 +0100 -@@ -47,18 +47,27 @@ - printk(" (unknown bits 0x%08x)", value); - } - --void --nouveau_enum_print(const struct nouveau_enum *en, u32 value) -+const struct nouveau_enum * -+nouveau_enum_find(const struct nouveau_enum *en, u32 value) - { - while (en->name) { -- if (value == en->value) { -- printk("%s", en->name); -- return; -- } -- -+ if (en->value == value) -+ return en; - en++; - } - -+ return NULL; -+} -+ -+void -+nouveau_enum_print(const struct nouveau_enum *en, u32 value) -+{ -+ en = nouveau_enum_find(en, value); -+ if (en) { -+ printk("%s", en->name); -+ return; -+ } -+ - printk("(unknown enum 0x%08x)", value); - } - -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_util.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_util.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_util.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_util.h 2011-03-09 18:30:58.000000000 +0100 -@@ -36,10 +36,14 @@ - struct nouveau_enum { - u32 value; - const char *name; -+ void *data; - }; - - void nouveau_bitfield_print(const struct nouveau_bitfield *, u32 value); - void nouveau_enum_print(const struct nouveau_enum *, u32 value); -+const struct nouveau_enum * -+nouveau_enum_find(const struct nouveau_enum *, u32 value); -+ - int nouveau_ratelimit(void); - - #endif -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_vm.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_vm.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_vm.c linux-2.6/drivers/gpu/drm/nouveau/nouveau_vm.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_vm.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_vm.c 2011-02-22 14:16:21.591230257 +0100 @@ -28,7 +28,7 @@ #include "nouveau_vm.h" @@ -2554,29 +2379,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.c linux-2.6.38-rc num -= len; pte += len; -@@ -311,18 +314,7 @@ - vm->spg_shift = 12; - vm->lpg_shift = 17; - pgt_bits = 27; -- -- /* Should be 4096 everywhere, this is a hack that's -- * currently necessary to avoid an elusive bug that -- * causes corruption when mixing small/large pages -- */ -- if (length < (1ULL << 40)) -- block = 4096; -- else { -- block = (1 << pgt_bits); -- if (length < block) -- block = length; -- } -+ block = 4096; - } else { - kfree(vm); - return -ENOSYS; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_vm.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nouveau_vm.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_vm.h linux-2.6/drivers/gpu/drm/nouveau/nouveau_vm.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nouveau_vm.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nouveau_vm.h 2011-02-22 14:16:21.591230257 +0100 @@ -67,9 +67,10 @@ void (*map_pgt)(struct nouveau_gpuobj *pgd, u32 pde, struct nouveau_gpuobj *pgt[2]); @@ -2628,9 +2433,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nouveau_vm.h linux-2.6.38-rc void nvc0_vm_unmap(struct nouveau_gpuobj *, u32 pte, u32 cnt); void nvc0_vm_flush(struct nouveau_vm *); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_crtc.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv04_crtc.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_crtc.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv04_crtc.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv04_crtc.c linux-2.6/drivers/gpu/drm/nouveau/nv04_crtc.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv04_crtc.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv04_crtc.c 2011-02-22 14:16:21.592230236 +0100 @@ -1031,7 +1031,7 @@ drm_mode_crtc_set_gamma_size(&nv_crtc->base, 256); @@ -2640,9 +2445,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_crtc.c linux-2.6.38-rc7 if (!ret) { ret = nouveau_bo_pin(nv_crtc->cursor.nvbo, TTM_PL_FLAG_VRAM); if (!ret) -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_fifo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv04_fifo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_fifo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv04_fifo.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv04_fifo.c linux-2.6/drivers/gpu/drm/nouveau/nv04_fifo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv04_fifo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv04_fifo.c 2011-02-22 14:16:21.593230215 +0100 @@ -379,6 +379,15 @@ return handled; } @@ -2683,18 +2488,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv04_fifo.c linux-2.6.38-rc7 if (dma_get != dma_put) nv_wr32(dev, 0x003244, dma_put); -@@ -505,7 +516,7 @@ - - if (dev_priv->card_type == NV_50) { - if (status & 0x00000010) { -- nv50_fb_vm_trap(dev, 1, "PFIFO_BAR_FAULT"); -+ nv50_fb_vm_trap(dev, nouveau_ratelimit()); - status &= ~0x00000010; - nv_wr32(dev, 0x002100, 0x00000010); - } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv40_fb.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv40_fb.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv40_fb.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv40_fb.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv40_fb.c linux-2.6/drivers/gpu/drm/nouveau/nv40_fb.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv40_fb.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv40_fb.c 2011-02-22 14:16:21.596230155 +0100 @@ -24,6 +24,53 @@ } } @@ -2768,9 +2564,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv40_fb.c linux-2.6.38-rc7.n switch (dev_priv->chipset) { case 0x40: -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_crtc.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_crtc.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_crtc.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_crtc.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_crtc.c linux-2.6/drivers/gpu/drm/nouveau/nv50_crtc.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_crtc.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_crtc.c 2011-02-22 14:16:21.598230115 +0100 @@ -65,7 +65,7 @@ { struct drm_device *dev = nv_crtc->base.dev; @@ -3069,9 +2865,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_crtc.c linux-2.6.38-rc7 if (!ret) { ret = nouveau_bo_pin(nv_crtc->cursor.nvbo, TTM_PL_FLAG_VRAM); if (!ret) -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_cursor.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_cursor.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_cursor.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_cursor.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_cursor.c linux-2.6/drivers/gpu/drm/nouveau/nv50_cursor.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_cursor.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_cursor.c 2011-02-22 14:16:21.598230115 +0100 @@ -36,9 +36,9 @@ static void nv50_cursor_show(struct nouveau_crtc *nv_crtc, bool update) @@ -3096,9 +2892,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_cursor.c linux-2.6.38-r int ret; NV_DEBUG_KMS(dev, "\n"); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_dac.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_dac.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_dac.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_dac.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_dac.c linux-2.6/drivers/gpu/drm/nouveau/nv50_dac.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_dac.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_dac.c 2011-02-22 14:16:21.599230095 +0100 @@ -41,8 +41,7 @@ { struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); @@ -3119,9 +2915,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_dac.c linux-2.6.38-rc7. struct nouveau_crtc *crtc = nouveau_crtc(encoder->crtc); uint32_t mode_ctl = 0, mode_ctl2 = 0; int ret; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_display.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_display.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_display.c linux-2.6/drivers/gpu/drm/nouveau/nv50_display.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_display.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_display.c 2011-02-22 14:16:21.599230095 +0100 @@ -24,6 +24,7 @@ * */ @@ -3464,9 +3260,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.c linux-2.6.38- delayed |= clock; intr1 &= ~clock; } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_display.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_display.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_display.h linux-2.6/drivers/gpu/drm/nouveau/nv50_display.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_display.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_display.h 2011-02-22 14:16:21.599230095 +0100 @@ -35,7 +35,36 @@ #include "nouveau_crtc.h" #include "nv50_evo.h" @@ -3521,9 +3317,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_display.h linux-2.6.38- + u64 base, u64 size, struct nouveau_gpuobj **); + #endif /* __NV50_DISPLAY_H__ */ -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_evo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_evo.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_evo.c linux-2.6/drivers/gpu/drm/nouveau/nv50_evo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_evo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_evo.c 2011-02-22 14:16:21.599230095 +0100 @@ -27,20 +27,17 @@ #include "nouveau_drv.h" #include "nouveau_dma.h" @@ -3940,9 +3736,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.c linux-2.6.38-rc7. + + nv50_evo_destroy(dev); } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.h linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_evo.h ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_evo.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_evo.h linux-2.6/drivers/gpu/drm/nouveau/nv50_evo.h +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_evo.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_evo.h 2011-02-22 14:16:21.600230075 +0100 @@ -27,12 +27,6 @@ #ifndef __NV50_EVO_H__ #define __NV50_EVO_H__ @@ -3964,9 +3760,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_evo.h linux-2.6.38-rc7. +#define NV50_EVO_CRTC_UNK904 0x00000904 #endif -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fb.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_fb.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fb.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_fb.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_fb.c linux-2.6/drivers/gpu/drm/nouveau/nv50_fb.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_fb.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_fb.c 2011-02-22 14:16:21.600230075 +0100 @@ -8,31 +8,61 @@ dma_addr_t r100c08; }; @@ -4033,198 +3829,29 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fb.c linux-2.6.38-rc7.n return 0; } -@@ -81,26 +111,112 @@ +@@ -81,18 +111,7 @@ void nv50_fb_takedown(struct drm_device *dev) { - struct drm_nouveau_private *dev_priv = dev->dev_private; - struct nv50_fb_priv *priv; -+ nv50_fb_destroy(dev); -+} - +- - priv = dev_priv->engine.fb.priv; - if (!priv) - return; - dev_priv->engine.fb.priv = NULL; -+static struct nouveau_enum vm_dispatch_subclients[] = { -+ { 0x00000000, "GRCTX", NULL }, -+ { 0x00000001, "NOTIFY", NULL }, -+ { 0x00000002, "QUERY", NULL }, -+ { 0x00000003, "COND", NULL }, -+ { 0x00000004, "M2M_IN", NULL }, -+ { 0x00000005, "M2M_OUT", NULL }, -+ { 0x00000006, "M2M_NOTIFY", NULL }, -+ {} -+}; - +- - pci_unmap_page(dev->pdev, priv->r100c08, PAGE_SIZE, - PCI_DMA_BIDIRECTIONAL); - __free_page(priv->r100c08_page); - kfree(priv); --} -+static struct nouveau_enum vm_ccache_subclients[] = { -+ { 0x00000000, "CB", NULL }, -+ { 0x00000001, "TIC", NULL }, -+ { 0x00000002, "TSC", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_prop_subclients[] = { -+ { 0x00000000, "RT0", NULL }, -+ { 0x00000001, "RT1", NULL }, -+ { 0x00000002, "RT2", NULL }, -+ { 0x00000003, "RT3", NULL }, -+ { 0x00000004, "RT4", NULL }, -+ { 0x00000005, "RT5", NULL }, -+ { 0x00000006, "RT6", NULL }, -+ { 0x00000007, "RT7", NULL }, -+ { 0x00000008, "ZETA", NULL }, -+ { 0x00000009, "LOCAL", NULL }, -+ { 0x0000000a, "GLOBAL", NULL }, -+ { 0x0000000b, "STACK", NULL }, -+ { 0x0000000c, "DST2D", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_pfifo_subclients[] = { -+ { 0x00000000, "PUSHBUF", NULL }, -+ { 0x00000001, "SEMAPHORE", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_bar_subclients[] = { -+ { 0x00000000, "FB", NULL }, -+ { 0x00000001, "IN", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_client[] = { -+ { 0x00000000, "STRMOUT", NULL }, -+ { 0x00000003, "DISPATCH", vm_dispatch_subclients }, -+ { 0x00000004, "PFIFO_WRITE", NULL }, -+ { 0x00000005, "CCACHE", vm_ccache_subclients }, -+ { 0x00000006, "PPPP", NULL }, -+ { 0x00000007, "CLIPID", NULL }, -+ { 0x00000008, "PFIFO_READ", NULL }, -+ { 0x00000009, "VFETCH", NULL }, -+ { 0x0000000a, "TEXTURE", NULL }, -+ { 0x0000000b, "PROP", vm_prop_subclients }, -+ { 0x0000000c, "PVP", NULL }, -+ { 0x0000000d, "PBSP", NULL }, -+ { 0x0000000e, "PCRYPT", NULL }, -+ { 0x0000000f, "PCOUNTER", NULL }, -+ { 0x00000011, "PDAEMON", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_engine[] = { -+ { 0x00000000, "PGRAPH", NULL }, -+ { 0x00000001, "PVP", NULL }, -+ { 0x00000004, "PEEPHOLE", NULL }, -+ { 0x00000005, "PFIFO", vm_pfifo_subclients }, -+ { 0x00000006, "BAR", vm_bar_subclients }, -+ { 0x00000008, "PPPP", NULL }, -+ { 0x00000009, "PBSP", NULL }, -+ { 0x0000000a, "PCRYPT", NULL }, -+ { 0x0000000b, "PCOUNTER", NULL }, -+ { 0x0000000c, "SEMAPHORE_BG", NULL }, -+ { 0x0000000d, "PCOPY", NULL }, -+ { 0x0000000e, "PDAEMON", NULL }, -+ {} -+}; -+ -+static struct nouveau_enum vm_fault[] = { -+ { 0x00000000, "PT_NOT_PRESENT", NULL }, -+ { 0x00000001, "PT_TOO_SHORT", NULL }, -+ { 0x00000002, "PAGE_NOT_PRESENT", NULL }, -+ { 0x00000003, "PAGE_SYSTEM_ONLY", NULL }, -+ { 0x00000004, "PAGE_READ_ONLY", NULL }, -+ { 0x00000006, "NULL_DMAOBJ", NULL }, -+ { 0x00000007, "WRONG_MEMTYPE", NULL }, -+ { 0x0000000b, "VRAM_LIMIT", NULL }, -+ { 0x0000000f, "DMAOBJ_LIMIT", NULL }, -+ {} -+}; ++ nv50_fb_destroy(dev); + } void --nv50_fb_vm_trap(struct drm_device *dev, int display, const char *name) -+nv50_fb_vm_trap(struct drm_device *dev, int display) - { - struct drm_nouveau_private *dev_priv = dev->dev_private; -+ const struct nouveau_enum *en, *cl; - unsigned long flags; - u32 trap[6], idx, chinst; -+ u8 st0, st1, st2, st3; - int i, ch; - - idx = nv_rd32(dev, 0x100c90); -@@ -117,8 +233,8 @@ - if (!display) - return; - -+ /* lookup channel id */ - chinst = (trap[2] << 16) | trap[1]; -- - spin_lock_irqsave(&dev_priv->channels.lock, flags); - for (ch = 0; ch < dev_priv->engine.fifo.channels; ch++) { - struct nouveau_channel *chan = dev_priv->channels.ptr[ch]; -@@ -131,9 +247,48 @@ - } - spin_unlock_irqrestore(&dev_priv->channels.lock, flags); - -- NV_INFO(dev, "%s - VM: Trapped %s at %02x%04x%04x status %08x " -- "channel %d (0x%08x)\n", -- name, (trap[5] & 0x100 ? "read" : "write"), -- trap[5] & 0xff, trap[4] & 0xffff, trap[3] & 0xffff, -- trap[0], ch, chinst); -+ /* decode status bits into something more useful */ -+ if (dev_priv->chipset < 0xa3 || -+ dev_priv->chipset == 0xaa || dev_priv->chipset == 0xac) { -+ st0 = (trap[0] & 0x0000000f) >> 0; -+ st1 = (trap[0] & 0x000000f0) >> 4; -+ st2 = (trap[0] & 0x00000f00) >> 8; -+ st3 = (trap[0] & 0x0000f000) >> 12; -+ } else { -+ st0 = (trap[0] & 0x000000ff) >> 0; -+ st1 = (trap[0] & 0x0000ff00) >> 8; -+ st2 = (trap[0] & 0x00ff0000) >> 16; -+ st3 = (trap[0] & 0xff000000) >> 24; -+ } -+ -+ NV_INFO(dev, "VM: trapped %s at 0x%02x%04x%04x on ch %d [0x%08x] ", -+ (trap[5] & 0x00000100) ? "read" : "write", -+ trap[5] & 0xff, trap[4] & 0xffff, trap[3] & 0xffff, ch, chinst); -+ -+ en = nouveau_enum_find(vm_engine, st0); -+ if (en) -+ printk("%s/", en->name); -+ else -+ printk("%02x/", st0); -+ -+ cl = nouveau_enum_find(vm_client, st2); -+ if (cl) -+ printk("%s/", cl->name); -+ else -+ printk("%02x/", st2); -+ -+ if (cl && cl->data) cl = nouveau_enum_find(cl->data, st3); -+ else if (en && en->data) cl = nouveau_enum_find(en->data, st3); -+ else cl = NULL; -+ if (cl) -+ printk("%s", cl->name); -+ else -+ printk("%02x", st3); -+ -+ printk(" reason: "); -+ en = nouveau_enum_find(vm_fault, st1); -+ if (en) -+ printk("%s\n", en->name); -+ else -+ printk("0x%08x\n", st1); - } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fifo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_fifo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fifo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_fifo.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_fifo.c linux-2.6/drivers/gpu/drm/nouveau/nv50_fifo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_fifo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_fifo.c 2011-02-22 14:16:21.600230075 +0100 @@ -149,6 +149,7 @@ nv_wr32(dev, 0x3204, 0); nv_wr32(dev, 0x3210, 0); @@ -4242,9 +3869,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_fifo.c linux-2.6.38-rc7 nv_wo32(ramfc, 0x60, 0x7fffffff); nv_wo32(ramfc, 0x40, 0x00000000); nv_wo32(ramfc, 0x7c, 0x30000001); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_gpio.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_gpio.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_gpio.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_gpio.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_gpio.c linux-2.6/drivers/gpu/drm/nouveau/nv50_gpio.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_gpio.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_gpio.c 2011-02-22 14:16:21.600230075 +0100 @@ -137,6 +137,7 @@ struct nv50_gpio_priv *priv = pgpio->priv; struct nv50_gpio_handler *gpioh, *tmp; @@ -4295,73 +3922,10 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_gpio.c linux-2.6.38-rc7 } spin_unlock(&priv->lock); } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_graph.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_graph.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_graph.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_graph.c 2011-03-09 18:30:58.000000000 +0100 -@@ -95,13 +95,41 @@ - } - - static void --nv50_graph_init_regs(struct drm_device *dev) -+nv50_graph_init_zcull(struct drm_device *dev) - { -+ struct drm_nouveau_private *dev_priv = dev->dev_private; -+ int i; -+ - NV_DEBUG(dev, "\n"); - -- nv_wr32(dev, NV04_PGRAPH_DEBUG_3, -- (1 << 2) /* HW_CONTEXT_SWITCH_ENABLED */); -- nv_wr32(dev, 0x402ca8, 0x800); -+ switch (dev_priv->chipset & 0xf0) { -+ case 0x50: -+ case 0x80: -+ case 0x90: -+ nv_wr32(dev, 0x402ca8, 0x00000800); -+ break; -+ case 0xa0: -+ default: -+ nv_wr32(dev, 0x402cc0, 0x00000000); -+ if (dev_priv->chipset == 0xa0 || -+ dev_priv->chipset == 0xaa || -+ dev_priv->chipset == 0xac) { -+ nv_wr32(dev, 0x402ca8, 0x00000802); -+ } else { -+ nv_wr32(dev, 0x402cc0, 0x00000000); -+ nv_wr32(dev, 0x402ca8, 0x00000002); -+ } -+ -+ break; -+ } -+ -+ /* zero out zcull regions */ -+ for (i = 0; i < 8; i++) { -+ nv_wr32(dev, 0x402c20 + (i * 8), 0x00000000); -+ nv_wr32(dev, 0x402c24 + (i * 8), 0x00000000); -+ nv_wr32(dev, 0x402c28 + (i * 8), 0x00000000); -+ nv_wr32(dev, 0x402c2c + (i * 8), 0x00000000); -+ } - } - - static int -@@ -136,6 +164,7 @@ - } - kfree(cp); - -+ nv_wr32(dev, 0x40008c, 0x00000004); /* HW_CTX_SWITCH_ENABLED */ - nv_wr32(dev, 0x400320, 4); - nv_wr32(dev, NV40_PGRAPH_CTXCTL_CUR, 0); - nv_wr32(dev, NV20_PGRAPH_CHANNEL_CTX_POINTER, 0); -@@ -151,7 +180,7 @@ - - nv50_graph_init_reset(dev); - nv50_graph_init_regs__nv(dev); -- nv50_graph_init_regs(dev); -+ nv50_graph_init_zcull(dev); - - ret = nv50_graph_init_ctxctl(dev); - if (ret) -@@ -409,12 +438,7 @@ +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_graph.c linux-2.6/drivers/gpu/drm/nouveau/nv50_graph.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_graph.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_graph.c 2011-02-22 14:16:21.601230054 +0100 +@@ -409,12 +409,7 @@ nv50_graph_nvsw_mthd_page_flip(struct nouveau_channel *chan, u32 class, u32 mthd, u32 data) { @@ -4375,129 +3939,7 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_graph.c linux-2.6.38-rc return 0; } -@@ -526,11 +550,11 @@ - - static struct nouveau_enum nv50_mp_exec_error_names[] = - { -- { 3, "STACK_UNDERFLOW" }, -- { 4, "QUADON_ACTIVE" }, -- { 8, "TIMEOUT" }, -- { 0x10, "INVALID_OPCODE" }, -- { 0x40, "BREAKPOINT" }, -+ { 3, "STACK_UNDERFLOW", NULL }, -+ { 4, "QUADON_ACTIVE", NULL }, -+ { 8, "TIMEOUT", NULL }, -+ { 0x10, "INVALID_OPCODE", NULL }, -+ { 0x40, "BREAKPOINT", NULL }, - {} - }; - -@@ -558,47 +582,47 @@ - - /* There must be a *lot* of these. Will take some time to gather them up. */ - struct nouveau_enum nv50_data_error_names[] = { -- { 0x00000003, "INVALID_QUERY_OR_TEXTURE" }, -- { 0x00000004, "INVALID_VALUE" }, -- { 0x00000005, "INVALID_ENUM" }, -- { 0x00000008, "INVALID_OBJECT" }, -- { 0x00000009, "READ_ONLY_OBJECT" }, -- { 0x0000000a, "SUPERVISOR_OBJECT" }, -- { 0x0000000b, "INVALID_ADDRESS_ALIGNMENT" }, -- { 0x0000000c, "INVALID_BITFIELD" }, -- { 0x0000000d, "BEGIN_END_ACTIVE" }, -- { 0x0000000e, "SEMANTIC_COLOR_BACK_OVER_LIMIT" }, -- { 0x0000000f, "VIEWPORT_ID_NEEDS_GP" }, -- { 0x00000010, "RT_DOUBLE_BIND" }, -- { 0x00000011, "RT_TYPES_MISMATCH" }, -- { 0x00000012, "RT_LINEAR_WITH_ZETA" }, -- { 0x00000015, "FP_TOO_FEW_REGS" }, -- { 0x00000016, "ZETA_FORMAT_CSAA_MISMATCH" }, -- { 0x00000017, "RT_LINEAR_WITH_MSAA" }, -- { 0x00000018, "FP_INTERPOLANT_START_OVER_LIMIT" }, -- { 0x00000019, "SEMANTIC_LAYER_OVER_LIMIT" }, -- { 0x0000001a, "RT_INVALID_ALIGNMENT" }, -- { 0x0000001b, "SAMPLER_OVER_LIMIT" }, -- { 0x0000001c, "TEXTURE_OVER_LIMIT" }, -- { 0x0000001e, "GP_TOO_MANY_OUTPUTS" }, -- { 0x0000001f, "RT_BPP128_WITH_MS8" }, -- { 0x00000021, "Z_OUT_OF_BOUNDS" }, -- { 0x00000023, "XY_OUT_OF_BOUNDS" }, -- { 0x00000027, "CP_MORE_PARAMS_THAN_SHARED" }, -- { 0x00000028, "CP_NO_REG_SPACE_STRIPED" }, -- { 0x00000029, "CP_NO_REG_SPACE_PACKED" }, -- { 0x0000002a, "CP_NOT_ENOUGH_WARPS" }, -- { 0x0000002b, "CP_BLOCK_SIZE_MISMATCH" }, -- { 0x0000002c, "CP_NOT_ENOUGH_LOCAL_WARPS" }, -- { 0x0000002d, "CP_NOT_ENOUGH_STACK_WARPS" }, -- { 0x0000002e, "CP_NO_BLOCKDIM_LATCH" }, -- { 0x00000031, "ENG2D_FORMAT_MISMATCH" }, -- { 0x0000003f, "PRIMITIVE_ID_NEEDS_GP" }, -- { 0x00000044, "SEMANTIC_VIEWPORT_OVER_LIMIT" }, -- { 0x00000045, "SEMANTIC_COLOR_FRONT_OVER_LIMIT" }, -- { 0x00000046, "LAYER_ID_NEEDS_GP" }, -- { 0x00000047, "SEMANTIC_CLIP_OVER_LIMIT" }, -- { 0x00000048, "SEMANTIC_PTSZ_OVER_LIMIT" }, -+ { 0x00000003, "INVALID_QUERY_OR_TEXTURE", NULL }, -+ { 0x00000004, "INVALID_VALUE", NULL }, -+ { 0x00000005, "INVALID_ENUM", NULL }, -+ { 0x00000008, "INVALID_OBJECT", NULL }, -+ { 0x00000009, "READ_ONLY_OBJECT", NULL }, -+ { 0x0000000a, "SUPERVISOR_OBJECT", NULL }, -+ { 0x0000000b, "INVALID_ADDRESS_ALIGNMENT", NULL }, -+ { 0x0000000c, "INVALID_BITFIELD", NULL }, -+ { 0x0000000d, "BEGIN_END_ACTIVE", NULL }, -+ { 0x0000000e, "SEMANTIC_COLOR_BACK_OVER_LIMIT", NULL }, -+ { 0x0000000f, "VIEWPORT_ID_NEEDS_GP", NULL }, -+ { 0x00000010, "RT_DOUBLE_BIND", NULL }, -+ { 0x00000011, "RT_TYPES_MISMATCH", NULL }, -+ { 0x00000012, "RT_LINEAR_WITH_ZETA", NULL }, -+ { 0x00000015, "FP_TOO_FEW_REGS", NULL }, -+ { 0x00000016, "ZETA_FORMAT_CSAA_MISMATCH", NULL }, -+ { 0x00000017, "RT_LINEAR_WITH_MSAA", NULL }, -+ { 0x00000018, "FP_INTERPOLANT_START_OVER_LIMIT", NULL }, -+ { 0x00000019, "SEMANTIC_LAYER_OVER_LIMIT", NULL }, -+ { 0x0000001a, "RT_INVALID_ALIGNMENT", NULL }, -+ { 0x0000001b, "SAMPLER_OVER_LIMIT", NULL }, -+ { 0x0000001c, "TEXTURE_OVER_LIMIT", NULL }, -+ { 0x0000001e, "GP_TOO_MANY_OUTPUTS", NULL }, -+ { 0x0000001f, "RT_BPP128_WITH_MS8", NULL }, -+ { 0x00000021, "Z_OUT_OF_BOUNDS", NULL }, -+ { 0x00000023, "XY_OUT_OF_BOUNDS", NULL }, -+ { 0x00000027, "CP_MORE_PARAMS_THAN_SHARED", NULL }, -+ { 0x00000028, "CP_NO_REG_SPACE_STRIPED", NULL }, -+ { 0x00000029, "CP_NO_REG_SPACE_PACKED", NULL }, -+ { 0x0000002a, "CP_NOT_ENOUGH_WARPS", NULL }, -+ { 0x0000002b, "CP_BLOCK_SIZE_MISMATCH", NULL }, -+ { 0x0000002c, "CP_NOT_ENOUGH_LOCAL_WARPS", NULL }, -+ { 0x0000002d, "CP_NOT_ENOUGH_STACK_WARPS", NULL }, -+ { 0x0000002e, "CP_NO_BLOCKDIM_LATCH", NULL }, -+ { 0x00000031, "ENG2D_FORMAT_MISMATCH", NULL }, -+ { 0x0000003f, "PRIMITIVE_ID_NEEDS_GP", NULL }, -+ { 0x00000044, "SEMANTIC_VIEWPORT_OVER_LIMIT", NULL }, -+ { 0x00000045, "SEMANTIC_COLOR_FRONT_OVER_LIMIT", NULL }, -+ { 0x00000046, "LAYER_ID_NEEDS_GP", NULL }, -+ { 0x00000047, "SEMANTIC_CLIP_OVER_LIMIT", NULL }, -+ { 0x00000048, "SEMANTIC_PTSZ_OVER_LIMIT", NULL }, - {} - }; - -@@ -678,7 +702,6 @@ - tps++; - switch (type) { - case 6: /* texture error... unknown for now */ -- nv50_fb_vm_trap(dev, display, name); - if (display) { - NV_ERROR(dev, "magic set %d:\n", i); - for (r = ustatus_addr + 4; r <= ustatus_addr + 0x10; r += 4) -@@ -701,7 +724,6 @@ - uint32_t e1c = nv_rd32(dev, ustatus_addr + 0x14); - uint32_t e20 = nv_rd32(dev, ustatus_addr + 0x18); - uint32_t e24 = nv_rd32(dev, ustatus_addr + 0x1c); -- nv50_fb_vm_trap(dev, display, name); - /* 2d engine destination */ - if (ustatus & 0x00000010) { - if (display) { -@@ -912,10 +934,10 @@ +@@ -912,10 +907,10 @@ printk("\n"); NV_INFO(dev, "PGRAPH - TRAP_CCACHE %08x %08x %08x %08x" " %08x %08x %08x\n", @@ -4512,17 +3954,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_graph.c linux-2.6.38-rc } -@@ -1044,6 +1066,7 @@ - NV_INFO(dev, "PGRAPH - ch %d (0x%010llx) subc %d " - "class 0x%04x mthd 0x%04x data 0x%08x\n", - chid, inst, subc, class, mthd, data); -+ nv50_fb_vm_trap(dev, 1); - } - } - -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_instmem.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_instmem.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_instmem.c 2011-03-12 22:37:55.428744375 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_instmem.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_instmem.c linux-2.6/drivers/gpu/drm/nouveau/nv50_instmem.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_instmem.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_instmem.c 2011-02-22 14:16:21.602230033 +0100 @@ -300,7 +300,7 @@ } @@ -4532,9 +3966,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_instmem.c linux-2.6.38- struct nouveau_vma chan_vma; u32 align; }; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_sor.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_sor.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_sor.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_sor.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_sor.c linux-2.6/drivers/gpu/drm/nouveau/nv50_sor.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_sor.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_sor.c 2011-02-22 14:16:21.603230013 +0100 @@ -41,8 +41,7 @@ { struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); @@ -4555,9 +3989,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_sor.c linux-2.6.38-rc7. struct nouveau_encoder *nv_encoder = nouveau_encoder(encoder); struct drm_device *dev = encoder->dev; struct nouveau_crtc *crtc = nouveau_crtc(encoder->crtc); -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vm.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_vm.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vm.c 2011-03-12 22:37:55.430744335 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_vm.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_vm.c linux-2.6/drivers/gpu/drm/nouveau/nv50_vm.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_vm.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_vm.c 2011-02-22 14:16:21.603230013 +0100 @@ -31,7 +31,6 @@ nv50_vm_map_pgt(struct nouveau_gpuobj *pgd, u32 pde, struct nouveau_gpuobj *pgt[2]) @@ -4621,9 +4055,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vm.c linux-2.6.38-rc7.n nv_wo32(pgt, pte + 0, lower_32_bits(phys)); nv_wo32(pgt, pte + 4, upper_32_bits(phys)); pte += 8; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vram.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_vram.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vram.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv50_vram.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_vram.c linux-2.6/drivers/gpu/drm/nouveau/nv50_vram.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nv50_vram.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nv50_vram.c 2011-02-22 14:16:21.603230013 +0100 @@ -48,42 +48,49 @@ } @@ -4743,19 +4177,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv50_vram.c linux-2.6.38-rc7 return 0; } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv84_crypt.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv84_crypt.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nv84_crypt.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nv84_crypt.c 2011-03-09 18:30:58.000000000 +0100 -@@ -136,5 +136,5 @@ - nv_wr32(dev, 0x102130, stat); - nv_wr32(dev, 0x10200c, 0x10); - -- nv50_fb_vm_trap(dev, show, "PCRYPT"); -+ nv50_fb_vm_trap(dev, show); - } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_fifo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_fifo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_fifo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_fifo.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_fifo.c linux-2.6/drivers/gpu/drm/nouveau/nvc0_fifo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_fifo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nvc0_fifo.c 2011-02-22 14:16:21.604229993 +0100 @@ -116,7 +116,7 @@ /* allocate vram for control regs, map into polling area */ @@ -4796,9 +4220,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_fifo.c linux-2.6.38-rc7 - - nv_wr32(dev, 0x2140, 0); } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_graph.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_graph.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_graph.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_graph.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_graph.c linux-2.6/drivers/gpu/drm/nouveau/nvc0_graph.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_graph.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nvc0_graph.c 2011-02-22 14:16:21.604229993 +0100 @@ -299,6 +299,14 @@ } @@ -4854,9 +4278,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_graph.c linux-2.6.38-rc nv_wr32(dev, 0x400100, 0x00000010); stat &= ~0x00000010; } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vm.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_vm.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vm.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_vm.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_vm.c linux-2.6/drivers/gpu/drm/nouveau/nvc0_vm.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_vm.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nvc0_vm.c 2011-02-22 14:16:21.606229953 +0100 @@ -59,7 +59,7 @@ void @@ -4880,9 +4304,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vm.c linux-2.6.38-rc7.n nv_wo32(pgt, pte + 0, lower_32_bits(phys)); nv_wo32(pgt, pte + 4, upper_32_bits(phys)); pte += 8; -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vram.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_vram.c ---- linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vram.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/nouveau/nvc0_vram.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_vram.c linux-2.6/drivers/gpu/drm/nouveau/nvc0_vram.c +--- linux-2.6.38-rc5/drivers/gpu/drm/nouveau/nvc0_vram.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/nouveau/nvc0_vram.c 2011-02-22 14:16:21.606229953 +0100 @@ -26,64 +26,78 @@ #include "nouveau_drv.h" #include "nouveau_mm.h" @@ -4986,9 +4410,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/nouveau/nvc0_vram.c linux-2.6.38-rc7 return 0; } -diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6.38-rc7.nouveau/drivers/gpu/drm/ttm/ttm_bo.c ---- linux-2.6.38-rc7/drivers/gpu/drm/ttm/ttm_bo.c 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/drivers/gpu/drm/ttm/ttm_bo.c 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6/drivers/gpu/drm/ttm/ttm_bo.c +--- linux-2.6.38-rc5/drivers/gpu/drm/ttm/ttm_bo.c 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/drivers/gpu/drm/ttm/ttm_bo.c 2011-02-22 14:16:21.822225582 +0100 @@ -406,11 +406,12 @@ } @@ -5003,9 +4427,9 @@ diff -Naur linux-2.6.38-rc7/drivers/gpu/drm/ttm/ttm_bo.c linux-2.6.38-rc7.nouvea } if (bdev->driver->move_notify) -diff -Naur linux-2.6.38-rc7/include/drm/nouveau_drm.h linux-2.6.38-rc7.nouveau/include/drm/nouveau_drm.h ---- linux-2.6.38-rc7/include/drm/nouveau_drm.h 2011-03-01 22:55:12.000000000 +0100 -+++ linux-2.6.38-rc7.nouveau/include/drm/nouveau_drm.h 2011-03-09 18:30:58.000000000 +0100 +diff -Naur linux-2.6.38-rc5/include/drm/nouveau_drm.h linux-2.6/include/drm/nouveau_drm.h +--- linux-2.6.38-rc5/include/drm/nouveau_drm.h 2011-02-16 04:23:45.000000000 +0100 ++++ linux-2.6/include/drm/nouveau_drm.h 2011-02-22 14:16:28.891082551 +0100 @@ -94,6 +94,7 @@ #define NOUVEAU_GEM_DOMAIN_GART (1 << 2) #define NOUVEAU_GEM_DOMAIN_MAPPABLE (1 << 3) From ef74282f2e94fac598c449a432819b73a5f139d0 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Sun, 3 Apr 2011 16:48:40 +0200 Subject: [PATCH 16/40] VERSION: set version to 0.99.5 (RC-5) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index de9bcdff29..2d666706df 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.4 +0.99.5 From 7d6899acb25d35e0cc11086ec202f2009115674d Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 26 Jul 2011 20:32:57 +0200 Subject: [PATCH 17/40] VERSION: set version to 0.99.6 (RC-6) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 2d666706df..3f632586f0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.5 +0.99.6 From 98fa3019bb41b2a1a297c6e10f48dfd89bbd1e3d Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 4 Oct 2011 19:02:23 +0200 Subject: [PATCH 18/40] VERSION: set version to 0.99.7 (RC-7) Signed-off-by: Stephan Raue --- VERSION | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 3f632586f0..03552ce4ff 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.6 +0.99.7 From 9fbd5a5a5bc7f51cbd826009b8254d404b8a35b7 Mon Sep 17 00:00:00 2001 From: Alexander Pipelka Date: Wed, 7 Sep 2011 20:56:03 +0200 Subject: [PATCH 19/40] xbmc: added xbmc-addon-xvdr package --- packages/mediacenter/xbmc-addon-xvdr/build | 37 ++++++++++++++++++++ packages/mediacenter/xbmc-addon-xvdr/install | 29 +++++++++++++++ packages/mediacenter/xbmc-addon-xvdr/meta | 36 +++++++++++++++++++ 3 files changed, 102 insertions(+) create mode 100755 packages/mediacenter/xbmc-addon-xvdr/build create mode 100755 packages/mediacenter/xbmc-addon-xvdr/install create mode 100644 packages/mediacenter/xbmc-addon-xvdr/meta diff --git a/packages/mediacenter/xbmc-addon-xvdr/build b/packages/mediacenter/xbmc-addon-xvdr/build new file mode 100755 index 0000000000..b415ce0996 --- /dev/null +++ b/packages/mediacenter/xbmc-addon-xvdr/build @@ -0,0 +1,37 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +cd $PKG_BUILD + +# some fixes for autoreconf + touch NEWS AUTHORS ChangeLog + do_autoreconf + +CXXFLAGS="-DZLIB_INTERNAL=1" ./configure --host=$TARGET_NAME \ + --build=$HOST_NAME \ + --prefix=/usr/share/xbmc \ + --disable-static \ + --enable-shared + +make diff --git a/packages/mediacenter/xbmc-addon-xvdr/install b/packages/mediacenter/xbmc-addon-xvdr/install new file mode 100755 index 0000000000..59ec12b0e6 --- /dev/null +++ b/packages/mediacenter/xbmc-addon-xvdr/install @@ -0,0 +1,29 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +mkdir -p $INSTALL/usr/share/xbmc/addons/pvr.vdr.xvdr + cp -PRf $PKG_BUILD/addons/pvr.vdr.xvdr/resources $INSTALL/usr/share/xbmc/addons/pvr.vdr.xvdr + cp -Pf $PKG_BUILD/addons/pvr.vdr.xvdr/addon.xml $INSTALL/usr/share/xbmc/addons/pvr.vdr.xvdr + cp -Pf $PKG_BUILD/addons/pvr.vdr.xvdr/icon.png $INSTALL/usr/share/xbmc/addons/pvr.vdr.xvdr + cp -Pf $PKG_BUILD/addons/pvr.vdr.xvdr/XBMC_VDR_xvdr.pvr $INSTALL/usr/share/xbmc/addons/pvr.vdr.xvdr diff --git a/packages/mediacenter/xbmc-addon-xvdr/meta b/packages/mediacenter/xbmc-addon-xvdr/meta new file mode 100644 index 0000000000..1f91892318 --- /dev/null +++ b/packages/mediacenter/xbmc-addon-xvdr/meta @@ -0,0 +1,36 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +PKG_NAME="xbmc-addon-xvdr" +PKG_VERSION="9822a8a" +PKG_REV="1" +PKG_ARCH="any" +PKG_LICENSE="GPL" +PKG_SITE="" +PKG_URL="http://dl.dropbox.com/u/240579/xbmc-addon-xvdr/xbmc-addon-xvdr-$PKG_VERSION.tar.gz" +PKG_DEPENDS="zlib" +PKG_BUILD_DEPENDS="toolchain zlib" +PKG_PRIORITY="optional" +PKG_SECTION="mediacenter" +PKG_SHORTDESC="XVDR addon for XBMC" +PKG_LONGDESC="This addon allows XBMC PVR to connect to the VDR server." +PKG_IS_ADDON="no" + +PKG_AUTORECONF="no" From 11c6a97d23e8e887466eb2cc316ee57bd41cb74b Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 03:18:56 +0200 Subject: [PATCH 20/40] xbmc-addon-xvdr: convert to addon Signed-off-by: Stephan Raue --- .../addons/multimedia/xbmc-addon-xvdr/addon | 29 ++++++++++++++++++ .../multimedia}/xbmc-addon-xvdr/build | 5 +-- .../multimedia/xbmc-addon-xvdr/changelog.txt | 2 ++ .../multimedia/xbmc-addon-xvdr/icon/icon.png | Bin 0 -> 26487 bytes .../multimedia}/xbmc-addon-xvdr/install | 2 +- .../multimedia}/xbmc-addon-xvdr/meta | 9 +++--- .../xbmc-addon-xvdr/source/default.py | 23 ++++++++++++++ 7 files changed, 63 insertions(+), 7 deletions(-) create mode 100755 packages/addons/multimedia/xbmc-addon-xvdr/addon rename packages/{mediacenter => addons/multimedia}/xbmc-addon-xvdr/build (92%) create mode 100644 packages/addons/multimedia/xbmc-addon-xvdr/changelog.txt create mode 100644 packages/addons/multimedia/xbmc-addon-xvdr/icon/icon.png rename packages/{mediacenter => addons/multimedia}/xbmc-addon-xvdr/install (93%) rename packages/{mediacenter => addons/multimedia}/xbmc-addon-xvdr/meta (90%) create mode 100644 packages/addons/multimedia/xbmc-addon-xvdr/source/default.py diff --git a/packages/addons/multimedia/xbmc-addon-xvdr/addon b/packages/addons/multimedia/xbmc-addon-xvdr/addon new file mode 100755 index 0000000000..740fcc9230 --- /dev/null +++ b/packages/addons/multimedia/xbmc-addon-xvdr/addon @@ -0,0 +1,29 @@ +#!/bin/sh + +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ + +. config/options $1 + +mkdir -p $ADDON_BUILD/$PKG_ADDON_ID + cp -PR $PKG_BUILD/addons/pvr.vdr.xvdr/resources $ADDON_BUILD/$PKG_ADDON_ID + cp -P $PKG_BUILD/addons/pvr.vdr.xvdr/addon.xml $ADDON_BUILD/$PKG_ADDON_ID + cp -P $PKG_BUILD/addons/pvr.vdr.xvdr/icon.png $ADDON_BUILD/$PKG_ADDON_ID + cp -P $PKG_BUILD/addons/pvr.vdr.xvdr/XBMC_VDR_xvdr.pvr $ADDON_BUILD/$PKG_ADDON_ID diff --git a/packages/mediacenter/xbmc-addon-xvdr/build b/packages/addons/multimedia/xbmc-addon-xvdr/build similarity index 92% rename from packages/mediacenter/xbmc-addon-xvdr/build rename to packages/addons/multimedia/xbmc-addon-xvdr/build index b415ce0996..794b360977 100755 --- a/packages/mediacenter/xbmc-addon-xvdr/build +++ b/packages/addons/multimedia/xbmc-addon-xvdr/build @@ -28,9 +28,10 @@ cd $PKG_BUILD touch NEWS AUTHORS ChangeLog do_autoreconf -CXXFLAGS="-DZLIB_INTERNAL=1" ./configure --host=$TARGET_NAME \ +CXXFLAGS="-DZLIB_INTERNAL=1" \ +./configure --host=$TARGET_NAME \ --build=$HOST_NAME \ - --prefix=/usr/share/xbmc \ + --prefix=/usr \ --disable-static \ --enable-shared diff --git a/packages/addons/multimedia/xbmc-addon-xvdr/changelog.txt b/packages/addons/multimedia/xbmc-addon-xvdr/changelog.txt new file mode 100644 index 0000000000..c9271f76dd --- /dev/null +++ b/packages/addons/multimedia/xbmc-addon-xvdr/changelog.txt @@ -0,0 +1,2 @@ +1.0.0 +- initial import of xbmc-addon-xvdr-9822a8a diff --git a/packages/addons/multimedia/xbmc-addon-xvdr/icon/icon.png b/packages/addons/multimedia/xbmc-addon-xvdr/icon/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f8f83ae27dff8b82f477f9efb482b8a016d467dc GIT binary patch literal 26487 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 yi2&%!5QQqlPho?2$AU!h{;M4Q85 Date: Tue, 18 Oct 2011 03:20:14 +0200 Subject: [PATCH 21/40] scripts/create_addon: dont create an addon.xml if its shipped with addon Signed-off-by: Stephan Raue --- scripts/create_addon | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/create_addon b/scripts/create_addon index 9d64210415..c183c017da 100755 --- a/scripts/create_addon +++ b/scripts/create_addon @@ -53,7 +53,8 @@ if [ -f $PKG_DIR/addon ]; then $PKG_DIR/addon $@ >&$VERBOSE_OUT mkdir -p $ADDON_BUILD/$PKG_ADDON_ID - cp config/addon/addon.xml $ADDON_BUILD/$PKG_ADDON_ID + if [ ! -f $ADDON_BUILD/$PKG_ADDON_ID/addon.xml ]; then + cp config/addon/addon.xml $ADDON_BUILD/$PKG_ADDON_ID $SED -e "s|@PKG_ADDON_ID@|$PKG_ADDON_ID|g" \ -e "s|@PKG_NAME@|$PKG_NAME|g" \ -e "s|@ADDON_VERSION@|$OS_VERSION.$PKG_REV|g" \ @@ -63,12 +64,12 @@ if [ -f $PKG_DIR/addon ]; then -e "s|@OS_VERSION@|$OS_VERSION|g" \ -e "s|@PKG_LONGDESC@|$PKG_LONGDESC|g" \ -i $ADDON_BUILD/$PKG_ADDON_ID/addon.xml + fi if [ -f $PKG_DIR/source/default.py ]; then cp -R $PKG_DIR/source/* $ADDON_BUILD/$PKG_ADDON_ID else - echo "*** ERROR: you need at least $PKG_DIR/source/default.py so your addon can work ***" - exit 1 + echo "*** WARNING: you *maybe* need at least $PKG_DIR/source/default.py so your addon can work ***" fi if [ -f $PKG_DIR/icon/icon.png ]; then From 3e85aeebeca23200de9ad74ea2025c932e94a7fc Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 03:51:07 +0200 Subject: [PATCH 22/40] hts-tvheadend: set to version 1.0.1 Signed-off-by: Stephan Raue --- packages/addons/service/multimedia/hts-tvheadend/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/addons/service/multimedia/hts-tvheadend/meta b/packages/addons/service/multimedia/hts-tvheadend/meta index 869e5f621f..e82fbf6a6f 100644 --- a/packages/addons/service/multimedia/hts-tvheadend/meta +++ b/packages/addons/service/multimedia/hts-tvheadend/meta @@ -20,7 +20,7 @@ PKG_NAME="hts-tvheadend" PKG_VERSION="c88a646" -PKG_REV="0" +PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.lonelycoder.com/hts/tvheadend_overview.html" From 9bf5973d97b1f1ba53700abea7a5bf10d38b694f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 06:09:12 +0200 Subject: [PATCH 23/40] pm-utils: unload rtl8192se driver before suspend Signed-off-by: Stephan Raue --- packages/sysutils/pm-utils/config.d/module | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sysutils/pm-utils/config.d/module b/packages/sysutils/pm-utils/config.d/module index cccef5656a..60c2cb2a09 100644 --- a/packages/sysutils/pm-utils/config.d/module +++ b/packages/sysutils/pm-utils/config.d/module @@ -1 +1 @@ -SUSPEND_MODULES="xhci-hcd jme anysee" +SUSPEND_MODULES="xhci-hcd jme anysee rtl8192se" From 7656091d072387dcccec99c786775408c2c0f8e9 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 17:32:50 +0200 Subject: [PATCH 24/40] hts-tvheadend: add patch to add another provider Signed-off-by: Stephan Raue --- packages/addons/service/multimedia/hts-tvheadend/changelog.txt | 3 +++ packages/addons/service/multimedia/hts-tvheadend/meta | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/addons/service/multimedia/hts-tvheadend/changelog.txt b/packages/addons/service/multimedia/hts-tvheadend/changelog.txt index 59409030eb..644d301c42 100644 --- a/packages/addons/service/multimedia/hts-tvheadend/changelog.txt +++ b/packages/addons/service/multimedia/hts-tvheadend/changelog.txt @@ -1,3 +1,6 @@ +1.0.2 +- add (CH) GA Weissenstein default muxes + 1.0.1 - add XMLTV tv_file_grab support - add XMLTV configuration support diff --git a/packages/addons/service/multimedia/hts-tvheadend/meta b/packages/addons/service/multimedia/hts-tvheadend/meta index e82fbf6a6f..1499c51199 100644 --- a/packages/addons/service/multimedia/hts-tvheadend/meta +++ b/packages/addons/service/multimedia/hts-tvheadend/meta @@ -20,7 +20,7 @@ PKG_NAME="hts-tvheadend" PKG_VERSION="c88a646" -PKG_REV="1" +PKG_REV="2" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.lonelycoder.com/hts/tvheadend_overview.html" From 28ead8cca82f2ef6f6d18a5391d73cad61a35c28 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 18:08:49 +0200 Subject: [PATCH 25/40] linux: update to linux-3.1-rc10 Signed-off-by: Stephan Raue --- packages/linux/meta | 2 +- ...crosscompile.patch => linux-3.1-rc10-000_crosscompile.patch} | 0 ...ev_console.patch => linux-3.1-rc10-003-no_dev_console.patch} | 0 ...ch => linux-3.1-rc10-004_lower_undefined_mode_timeout.patch} | 0 ...6_enable_utf8.patch => linux-3.1-rc10-006_enable_utf8.patch} | 0 ...floppy_die.patch => linux-3.1-rc10-007_die_floppy_die.patch} | 0 ...> linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch} | 0 ...er.patch => linux-3.1-rc10-050_add_appleir_usb_driver.patch} | 0 ...1.patch => linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch} | 0 ...remote-0.1.patch => linux-3.1-rc10-053-ati_remote-0.1.patch} | 0 ...ux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch} | 0 ...voton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch} | 0 ...=> linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch} | 0 ...10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch} | 0 ...h => linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch} | 0 ... linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch} | 0 ...tch => linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch} | 0 ...piness.patch => linux-3.1-rc10-716_mm-zero_swappiness.patch} | 0 18 files changed, 1 insertion(+), 1 deletion(-) rename packages/linux/patches/{linux-3.1-rc9-000_crosscompile.patch => linux-3.1-rc10-000_crosscompile.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-003-no_dev_console.patch => linux-3.1-rc10-003-no_dev_console.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-004_lower_undefined_mode_timeout.patch => linux-3.1-rc10-004_lower_undefined_mode_timeout.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-006_enable_utf8.patch => linux-3.1-rc10-006_enable_utf8.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-007_die_floppy_die.patch => linux-3.1-rc10-007_die_floppy_die.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-009_disable_i8042_check_on_apple_mac.patch => linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-050_add_appleir_usb_driver.patch => linux-3.1-rc10-050_add_appleir_usb_driver.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-052-aureal_remote_quirk-0.1.patch => linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-053-ati_remote-0.1.patch => linux-3.1-rc10-053-ati_remote-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-053_ati-remote_all_keys_and_keychange-0.1.patch => linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch => linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-058-add_rtl2832u_dvb-usb_driver-0.1.patch => linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch => linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-060-fix_dib0700_buffer_access-0.1.patch => linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch => linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-071-silence_i915_agp-module-0.1.patch => linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch} (100%) rename packages/linux/patches/{linux-3.1-rc9-716_mm-zero_swappiness.patch => linux-3.1-rc10-716_mm-zero_swappiness.patch} (100%) diff --git a/packages/linux/meta b/packages/linux/meta index 73dbdaac36..59238d414b 100644 --- a/packages/linux/meta +++ b/packages/linux/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="linux" -PKG_VERSION="3.1-rc9" +PKG_VERSION="3.1-rc10" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="GPL" diff --git a/packages/linux/patches/linux-3.1-rc9-000_crosscompile.patch b/packages/linux/patches/linux-3.1-rc10-000_crosscompile.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-000_crosscompile.patch rename to packages/linux/patches/linux-3.1-rc10-000_crosscompile.patch diff --git a/packages/linux/patches/linux-3.1-rc9-003-no_dev_console.patch b/packages/linux/patches/linux-3.1-rc10-003-no_dev_console.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-003-no_dev_console.patch rename to packages/linux/patches/linux-3.1-rc10-003-no_dev_console.patch diff --git a/packages/linux/patches/linux-3.1-rc9-004_lower_undefined_mode_timeout.patch b/packages/linux/patches/linux-3.1-rc10-004_lower_undefined_mode_timeout.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-004_lower_undefined_mode_timeout.patch rename to packages/linux/patches/linux-3.1-rc10-004_lower_undefined_mode_timeout.patch diff --git a/packages/linux/patches/linux-3.1-rc9-006_enable_utf8.patch b/packages/linux/patches/linux-3.1-rc10-006_enable_utf8.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-006_enable_utf8.patch rename to packages/linux/patches/linux-3.1-rc10-006_enable_utf8.patch diff --git a/packages/linux/patches/linux-3.1-rc9-007_die_floppy_die.patch b/packages/linux/patches/linux-3.1-rc10-007_die_floppy_die.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-007_die_floppy_die.patch rename to packages/linux/patches/linux-3.1-rc10-007_die_floppy_die.patch diff --git a/packages/linux/patches/linux-3.1-rc9-009_disable_i8042_check_on_apple_mac.patch b/packages/linux/patches/linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-009_disable_i8042_check_on_apple_mac.patch rename to packages/linux/patches/linux-3.1-rc10-009_disable_i8042_check_on_apple_mac.patch diff --git a/packages/linux/patches/linux-3.1-rc9-050_add_appleir_usb_driver.patch b/packages/linux/patches/linux-3.1-rc10-050_add_appleir_usb_driver.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-050_add_appleir_usb_driver.patch rename to packages/linux/patches/linux-3.1-rc10-050_add_appleir_usb_driver.patch diff --git a/packages/linux/patches/linux-3.1-rc9-052-aureal_remote_quirk-0.1.patch b/packages/linux/patches/linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-052-aureal_remote_quirk-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-052-aureal_remote_quirk-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-053-ati_remote-0.1.patch b/packages/linux/patches/linux-3.1-rc10-053-ati_remote-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-053-ati_remote-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-053-ati_remote-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-053_ati-remote_all_keys_and_keychange-0.1.patch b/packages/linux/patches/linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-053_ati-remote_all_keys_and_keychange-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-053_ati-remote_all_keys_and_keychange-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch b/packages/linux/patches/linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch rename to packages/linux/patches/linux-3.1-rc10-054-nuvoton_revert_d7b290a1056c5564eec8a1b169c6e84ff3f54c13.patch diff --git a/packages/linux/patches/linux-3.1-rc9-058-add_rtl2832u_dvb-usb_driver-0.1.patch b/packages/linux/patches/linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-058-add_rtl2832u_dvb-usb_driver-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-058-add_rtl2832u_dvb-usb_driver-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch b/packages/linux/patches/linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-059-rtl2832u_change_value_of_USB_PID_GTEK_WARM-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-060-fix_dib0700_buffer_access-0.1.patch b/packages/linux/patches/linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-060-fix_dib0700_buffer_access-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-060-fix_dib0700_buffer_access-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch b/packages/linux/patches/linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-061-add_ITE-IT9135_dvb-usb_driver-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-071-silence_i915_agp-module-0.1.patch b/packages/linux/patches/linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-071-silence_i915_agp-module-0.1.patch rename to packages/linux/patches/linux-3.1-rc10-071-silence_i915_agp-module-0.1.patch diff --git a/packages/linux/patches/linux-3.1-rc9-716_mm-zero_swappiness.patch b/packages/linux/patches/linux-3.1-rc10-716_mm-zero_swappiness.patch similarity index 100% rename from packages/linux/patches/linux-3.1-rc9-716_mm-zero_swappiness.patch rename to packages/linux/patches/linux-3.1-rc10-716_mm-zero_swappiness.patch From 4ecac724b3066265062afbdddfd444d6114b4363 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 18:21:13 +0200 Subject: [PATCH 26/40] hts-tvheadend: add patch to add another provider Signed-off-by: Stephan Raue --- ...090-add_CH-GA-Weissenstein_muxes-0.1.patch | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 packages/addons/service/multimedia/hts-tvheadend/patches/hts-tvheadend-c88a646-090-add_CH-GA-Weissenstein_muxes-0.1.patch diff --git a/packages/addons/service/multimedia/hts-tvheadend/patches/hts-tvheadend-c88a646-090-add_CH-GA-Weissenstein_muxes-0.1.patch b/packages/addons/service/multimedia/hts-tvheadend/patches/hts-tvheadend-c88a646-090-add_CH-GA-Weissenstein_muxes-0.1.patch new file mode 100644 index 0000000000..e8c6050515 --- /dev/null +++ b/packages/addons/service/multimedia/hts-tvheadend/patches/hts-tvheadend-c88a646-090-add_CH-GA-Weissenstein_muxes-0.1.patch @@ -0,0 +1,55 @@ +diff -Naur hts-tvheadend-c88a646/src/linuxtv_muxes.h hts-tvheadend-c88a646.patch/src/linuxtv_muxes.h +--- hts-tvheadend-c88a646/src/linuxtv_muxes.h 2011-09-26 20:18:12.000000000 +0200 ++++ hts-tvheadend-c88a646.patch/src/linuxtv_muxes.h 2011-10-18 13:40:37.768853992 +0200 +@@ -12001,6 +12001,39 @@ + { .freq = 573000000, .symrate = 5217000, .fec = 0, .constellation = 5}, + }; + ++static const struct mux muxes_DVBC_ch_GA_Weissenstein[] = { ++ { .freq = 450000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 506000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 514000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 522000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 530000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 538000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 554000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 562000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 570000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 578000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 586000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 594000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 602000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 610000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 618000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 626000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 634000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 642000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 650000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 658000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 666000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 674000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 682000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 690000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 698000000, .symrate = 6900000, .fec = 0, .constellation = 3}, ++ { .freq = 698000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 706000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 714000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 722000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++ { .freq = 730000000, .symrate = 6900000, .fec = 0, .constellation = 5}, ++}; ++ + static const struct mux muxes_DVBC_ch_Rega_Sense[] = { + { .freq = 434000000, .symrate = 6900000, .fec = 0, .constellation = 3}, + { .freq = 714000000, .symrate = 6900000, .fec = 0, .constellation = 3}, +@@ -12881,6 +12914,11 @@ + + static const struct network networks_DVBC_ch[] = { + { ++ .name = "GA-Weissenstein", ++ .muxes = muxes_DVBC_ch_GA_Weissenstein, ++ .nmuxes = sizeof(muxes_DVBC_ch_GA_Weissenstein) / sizeof(struct mux), ++ }, ++ { + .name = "Rega-Sense", + .muxes = muxes_DVBC_ch_Rega_Sense, + .nmuxes = sizeof(muxes_DVBC_ch_Rega_Sense) / sizeof(struct mux), From b5bf326e34e5d911903bb595babdd73b7a489bfa Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 20:48:52 +0200 Subject: [PATCH 27/40] xbmc: add support for fonts installed by user Signed-off-by: Stephan Raue --- packages/mediacenter/xbmc/init.d/93_xbmc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/packages/mediacenter/xbmc/init.d/93_xbmc b/packages/mediacenter/xbmc/init.d/93_xbmc index 66dcf2910d..c50c56068e 100644 --- a/packages/mediacenter/xbmc/init.d/93_xbmc +++ b/packages/mediacenter/xbmc/init.d/93_xbmc @@ -36,6 +36,16 @@ fi # hack: make addon-bins executable chmod +x /storage/.xbmc/addons/*/bin/* > /dev/null 2>&1 +# hack to support user installed fonts + SUBFONTS="/storage/.xbmc/userdata/fonts" + if [ -d "$SUBFONTS" ]; then + files=$(ls $SUBFONTS/*.[tT][tT][fF] 2>/dev/null | wc -l) + if [ "$files" = "0" ]; then + cp /usr/share/xbmc/media/Fonts/*.[tT][tT][fF] $SUBFONTS/ + fi + mount --bind $SUBFONTS /usr/share/xbmc/media/Fonts/ + fi + # starting autostart script (will be removed later again, dont use it!!!) AUTOSTART="/storage/.config/autostart.sh" if [ -f $AUTOSTART ]; then From e997d08fa2254489afd5cb44c5578c41eea6ac8b Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Tue, 18 Oct 2011 23:18:20 +0200 Subject: [PATCH 28/40] xbmc: reload skin earlyer and in background on wakeup Signed-off-by: Stephan Raue --- .../mediacenter/xbmc/sleep.d/{63_reload_skin => 99_reload_skin} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename packages/mediacenter/xbmc/sleep.d/{63_reload_skin => 99_reload_skin} (95%) diff --git a/packages/mediacenter/xbmc/sleep.d/63_reload_skin b/packages/mediacenter/xbmc/sleep.d/99_reload_skin similarity index 95% rename from packages/mediacenter/xbmc/sleep.d/63_reload_skin rename to packages/mediacenter/xbmc/sleep.d/99_reload_skin index c0c2068b28..fd0a13ed3c 100755 --- a/packages/mediacenter/xbmc/sleep.d/63_reload_skin +++ b/packages/mediacenter/xbmc/sleep.d/99_reload_skin @@ -24,7 +24,7 @@ case "$1" in thaw|resume) - xbmc-send --host=127.0.0.1 -a "ReloadSkin()" + xbmc-send --host=127.0.0.1 -a "ReloadSkin()" & ;; *) exit $NA ;; From 87509b77fba82669f9af4c00d936b6891f5a09aa Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 19 Oct 2011 08:24:34 +0200 Subject: [PATCH 29/40] busybox: provide unique and anonymous system id Signed-off-by: Stephan Raue --- .../sysutils/busybox/profile.d/systemid.conf | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 packages/sysutils/busybox/profile.d/systemid.conf diff --git a/packages/sysutils/busybox/profile.d/systemid.conf b/packages/sysutils/busybox/profile.d/systemid.conf new file mode 100644 index 0000000000..d358798797 --- /dev/null +++ b/packages/sysutils/busybox/profile.d/systemid.conf @@ -0,0 +1,38 @@ +################################################################################ +# This file is part of OpenELEC - http://www.openelec.tv +# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv) +# +# This Program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This Program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with OpenELEC.tv; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# http://www.gnu.org/copyleft/gpl.html +################################################################################ +# Attempts to generate a unique system ID based on one local MAC address +# SystemID SHOULD be the same between upgrades/reinstalls +# MAC is hashed so that it cant be reversed making it anonymous +# Used to help with global usage statistics +################################################################################ + +SYSTEMID="00000000000000000000000000000000" + +if [ -e "/sys/class/net/eth0/address" ]; then + MAC_ADRESS=`cat /sys/class/net/eth0/address` +elif [ -e "/sys/class/net/wlan0/address" ]; then + MAC_ADRESS=`cat /sys/class/net/wlan0/address` +fi + +if [ -n "$MAC_ADRESS" ]; then + SYSTEMID=`/bin/echo $MAC_ADRESS | /usr/bin/md5sum | /usr/bin/cut -f1 -d" "` +fi + +export SYSTEMID From 29b3eadb3a10bb8332ee1ae8a38c1dac7a7e3c5e Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 19 Oct 2011 08:28:57 +0200 Subject: [PATCH 30/40] autoupdate: use our own useragent and system id for downloading updates Signed-off-by: Stephan Raue --- packages/tools/autoupdate/scripts/autoupdate.devel | 10 ++++++---- packages/tools/autoupdate/scripts/autoupdate.release | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/packages/tools/autoupdate/scripts/autoupdate.devel b/packages/tools/autoupdate/scripts/autoupdate.devel index 4642419fa2..e6a67dd39c 100755 --- a/packages/tools/autoupdate/scripts/autoupdate.devel +++ b/packages/tools/autoupdate/scripts/autoupdate.devel @@ -43,7 +43,9 @@ fi download () { case "$DL_METHOD" in wget) - wget -c $1 -P $TMP_DIR > /dev/null 2>&1 + wget -U "$THIS_DISTRIBUTION ($THIS_ARCH): $THIS_VERSION" \ + -c ${1}?sysid=$SYSTEMID \ + -O $2 > /dev/null 2>&1 ;; scp) scp $SCP_ARG "$1" $TMP_DIR @@ -69,7 +71,7 @@ if [ ! -f /var/lock/update.lock ]; then # get infofile with the latest released version rm -rf $TMP_DIR/latest - download "$UPDATEURL/latest" + download "$UPDATEURL/latest" "$TMP_DIR/latest" NEW_IMAGE="`cat $TMP_DIR/latest |grep "$THIS_DISTRIBUTION-$THIS_ARCH"`" NEW_VERSION="`echo "$NEW_IMAGE" | cut -d "-" -f5 | tr -d "r"`" @@ -79,7 +81,7 @@ if [ ! -f /var/lock/update.lock ]; then # compare installed version with latest released version THIS_VERSION="`echo "$THIS_VERSION" | cut -d "-" -f3 | tr -d "r"`" - if [ -Z $NEW_VERSION ]; then + if [ -z $NEW_VERSION ]; then NEW_VERSION="$THIS_VERSION" fi @@ -100,7 +102,7 @@ if [ ! -f /var/lock/update.lock ]; then # downloading the new version rm -rf $TMP_DIR/$NEW_IMAGE.tar.bz2 - download "$UPDATEURL/$NEW_IMAGE.tar.bz2" + download "$UPDATEURL/$NEW_IMAGE.tar.bz2" "$TMP_DIR/$NEW_IMAGE.tar.bz2" # extract the image rm -rf $TMP_DIR/$NEW_IMAGE diff --git a/packages/tools/autoupdate/scripts/autoupdate.release b/packages/tools/autoupdate/scripts/autoupdate.release index 40744df76e..1011c63f9a 100755 --- a/packages/tools/autoupdate/scripts/autoupdate.release +++ b/packages/tools/autoupdate/scripts/autoupdate.release @@ -43,7 +43,9 @@ fi download () { case "$DL_METHOD" in wget) - wget -c $1 -P $TMP_DIR > /dev/null 2>&1 + wget -U "$THIS_DISTRIBUTION ($THIS_ARCH): $THIS_VERSION" \ + -c ${1}?sysid=$SYSTEMID \ + -O $2 > /dev/null 2>&1 ;; scp) scp $SCP_ARG "$1" $TMP_DIR @@ -72,7 +74,7 @@ if [ ! -f /var/lock/update.lock ]; then # get infofile with the latest released version rm -rf $TMP_DIR/latest - download "$UPDATEURL/latest" + download "$UPDATEURL/latest" "$TMP_DIR/latest" NEW_IMAGE="`cat $TMP_DIR/latest |grep "$THIS_DISTRIBUTION-$THIS_ARCH"`" NEW_VERSION="`echo "$NEW_IMAGE" | cut -d "-" -f3`" @@ -116,7 +118,7 @@ if [ ! -f /var/lock/update.lock ]; then # downloading the new version rm -rf $TMP_DIR/$NEW_IMAGE.tar.bz2 - download "$UPDATEURL/$NEW_IMAGE.tar.bz2" + download "$UPDATEURL/$NEW_IMAGE.tar.bz2" "$TMP_DIR/$NEW_IMAGE.tar.bz2" # extract the image rm -rf $TMP_DIR/$NEW_IMAGE From e093f2afeb5ab8ed59e469dbb6710906214da9c7 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Wed, 19 Oct 2011 08:40:44 +0200 Subject: [PATCH 31/40] dvb-firmware: update to dvb-firmware-0.0.14 Signed-off-by: Stephan Raue --- packages/linux-firmware/dvb-firmware/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/linux-firmware/dvb-firmware/meta b/packages/linux-firmware/dvb-firmware/meta index 462bac423b..bf5a1bfd18 100644 --- a/packages/linux-firmware/dvb-firmware/meta +++ b/packages/linux-firmware/dvb-firmware/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="dvb-firmware" -PKG_VERSION="0.0.13" +PKG_VERSION="0.0.14" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="Free-to-use" From 8e574ea1782fada33274535a477c3df20a347f0f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 00:35:00 +0200 Subject: [PATCH 32/40] bluez: dont install actually not needed udev rules and helper scripts Signed-off-by: Stephan Raue --- packages/network/bluez/install | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/network/bluez/install b/packages/network/bluez/install index 121eb88ac7..40161de316 100755 --- a/packages/network/bluez/install +++ b/packages/network/bluez/install @@ -34,14 +34,14 @@ mkdir -p $INSTALL/etc/dbus-1/system.d cp $PKG_BUILD/src/bluetooth.conf $INSTALL/etc/dbus-1/system.d mkdir -p $INSTALL/lib/udev - cp $PKG_BUILD/scripts/bluetooth_serial $INSTALL/lib/udev - chmod +x $INSTALL/lib/udev/bluetooth_serial +# not needed: cp $PKG_BUILD/scripts/bluetooth_serial $INSTALL/lib/udev +# not needed: chmod +x $INSTALL/lib/udev/bluetooth_serial cp $PKG_BUILD/tools/hid2hci $INSTALL/lib/udev mkdir -p $INSTALL/lib/udev/rules.d cp $PKG_BUILD/scripts/97-bluetooth.rules $INSTALL/lib/udev/rules.d - cp $PKG_BUILD/scripts/97-bluetooth-hid2hci.rules $INSTALL/lib/udev/rules.d - cp $PKG_BUILD/scripts/97-bluetooth-serial.rules $INSTALL/lib/udev/rules.d +# todo: cp $PKG_BUILD/scripts/97-bluetooth-hid2hci.rules $INSTALL/lib/udev/rules.d +# not needed: cp $PKG_BUILD/scripts/97-bluetooth-serial.rules $INSTALL/lib/udev/rules.d mkdir -p $INSTALL/usr/lib cp $PKG_BUILD/lib/.libs/libbluetooth.so* $INSTALL/usr/lib From 813386c4cfd3cf9a8ffe08382f41ae38323b3935 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 01:40:22 +0200 Subject: [PATCH 33/40] afpfs-ng: install symlinks instead full libs Signed-off-by: Stephan Raue --- packages/network/afpfs-ng/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/afpfs-ng/install b/packages/network/afpfs-ng/install index 55d15a74d9..04cc3e8b2d 100755 --- a/packages/network/afpfs-ng/install +++ b/packages/network/afpfs-ng/install @@ -23,7 +23,7 @@ . config/options $1 mkdir -p $INSTALL/usr/lib - cp $PKG_BUILD/lib/.libs/*.so* $INSTALL/usr/lib + cp -P $PKG_BUILD/lib/.libs/*.so* $INSTALL/usr/lib mkdir -p $INSTALL/usr/bin cp $PKG_BUILD/fuse/afpfs $INSTALL/usr/bin From cc2ff46ee08800732a5f0f81405bc456d7dacfe0 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 01:40:34 +0200 Subject: [PATCH 34/40] bluez: install symlinks instead full libs Signed-off-by: Stephan Raue --- packages/network/bluez/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/network/bluez/install b/packages/network/bluez/install index 40161de316..a63afb0b5c 100755 --- a/packages/network/bluez/install +++ b/packages/network/bluez/install @@ -44,7 +44,7 @@ mkdir -p $INSTALL/lib/udev/rules.d # not needed: cp $PKG_BUILD/scripts/97-bluetooth-serial.rules $INSTALL/lib/udev/rules.d mkdir -p $INSTALL/usr/lib - cp $PKG_BUILD/lib/.libs/libbluetooth.so* $INSTALL/usr/lib + cp -P $PKG_BUILD/lib/.libs/libbluetooth.so* $INSTALL/usr/lib mkdir -p $INSTALL/usr/lib/alsa cp $PKG_BUILD/audio/.libs/*.so $INSTALL/usr/lib/alsa From 04e0a7c292a4ad78259e923144183055b82d5c69 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 01:40:59 +0200 Subject: [PATCH 35/40] dbus-python: dont create and install bytecode Signed-off-by: Stephan Raue --- packages/python/system/dbus-python/build | 2 -- packages/python/system/dbus-python/install | 6 +++--- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/packages/python/system/dbus-python/build b/packages/python/system/dbus-python/build index ba4cc262d5..d12d63cf09 100755 --- a/packages/python/system/dbus-python/build +++ b/packages/python/system/dbus-python/build @@ -35,5 +35,3 @@ cd $PKG_BUILD make $MAKEINSTALL - -python -Wi -t $PYTHON_LIBDIR/compileall.py . diff --git a/packages/python/system/dbus-python/install b/packages/python/system/dbus-python/install index c1b34eff67..ea1bbf248a 100755 --- a/packages/python/system/dbus-python/install +++ b/packages/python/system/dbus-python/install @@ -27,10 +27,10 @@ PYTHON_LIB_DIR=`ls -d $INSTALL/usr/lib/python*` mkdir -p $PYTHON_LIB_DIR/site-packages cp -P $PKG_BUILD/_dbus_bindings/.libs/*.so $PYTHON_LIB_DIR/site-packages cp -P $PKG_BUILD/_dbus_glib_bindings/.libs/*.so $PYTHON_LIB_DIR/site-packages - cp $PKG_BUILD/*.pyc $PYTHON_LIB_DIR/site-packages + cp $PKG_BUILD/*.py $PYTHON_LIB_DIR/site-packages mkdir -p $PYTHON_LIB_DIR/site-packages/dbus - cp $PKG_BUILD/dbus/*.pyc $PYTHON_LIB_DIR/site-packages/dbus + cp $PKG_BUILD/dbus/*.py $PYTHON_LIB_DIR/site-packages/dbus mkdir -p $PYTHON_LIB_DIR/site-packages/dbus/mainloop - cp $PKG_BUILD/dbus/mainloop/*.pyc $PYTHON_LIB_DIR/site-packages/dbus/mainloop + cp $PKG_BUILD/dbus/mainloop/*.py $PYTHON_LIB_DIR/site-packages/dbus/mainloop From 553f77fcd077792605656129dda6b09c1b0fb925 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 01:46:58 +0200 Subject: [PATCH 36/40] pygobject: dont create and install bytecode Signed-off-by: Stephan Raue --- packages/python/devel/pygobject/build | 2 -- packages/python/devel/pygobject/install | 5 ----- 2 files changed, 7 deletions(-) diff --git a/packages/python/devel/pygobject/build b/packages/python/devel/pygobject/build index 821982ea90..29a4e3e852 100755 --- a/packages/python/devel/pygobject/build +++ b/packages/python/devel/pygobject/build @@ -37,5 +37,3 @@ cd $PKG_BUILD make $MAKEINSTALL - -python -Wi -t $PYTHON_LIBDIR/compileall.py . diff --git a/packages/python/devel/pygobject/install b/packages/python/devel/pygobject/install index 767be3121a..fd8f73325f 100755 --- a/packages/python/devel/pygobject/install +++ b/packages/python/devel/pygobject/install @@ -29,25 +29,20 @@ mkdir -p $INSTALL/usr/lib mkdir -p $PYTHON_LIB_DIR/site-packages cp $PKG_BUILD/pygtk.py $PYTHON_LIB_DIR/site-packages - cp $PKG_BUILD/pygtk.pyc $PYTHON_LIB_DIR/site-packages echo "gtk-2.0" > $PYTHON_LIB_DIR/site-packages/pygtk.pth mkdir -p $PYTHON_LIB_DIR/site-packages/gtk-2.0 cp $PKG_BUILD/dsextras.py $PYTHON_LIB_DIR/site-packages/gtk-2.0 - cp $PKG_BUILD/dsextras.pyc $PYTHON_LIB_DIR/site-packages/gtk-2.0 mkdir -p $PYTHON_LIB_DIR/site-packages/gtk-2.0/gobject cp $PKG_BUILD/gobject/.libs/*.so $PYTHON_LIB_DIR/site-packages/gtk-2.0/gobject cp $PKG_BUILD/gobject/*.py $PYTHON_LIB_DIR/site-packages/gtk-2.0/gobject - cp $PKG_BUILD/gobject/*.pyc $PYTHON_LIB_DIR/site-packages/gtk-2.0/gobject mkdir -p $PYTHON_LIB_DIR/site-packages/gtk-2.0/glib cp $PKG_BUILD/glib/.libs/_glib.so $PYTHON_LIB_DIR/site-packages/gtk-2.0/glib cp $PKG_BUILD/glib/*.py $PYTHON_LIB_DIR/site-packages/gtk-2.0/glib - cp $PKG_BUILD/glib/*.pyc $PYTHON_LIB_DIR/site-packages/gtk-2.0/glib mkdir -p $PYTHON_LIB_DIR/site-packages/gtk-2.0/gio cp $PKG_BUILD/gio/.libs/_gio.so $PYTHON_LIB_DIR/site-packages/gtk-2.0/gio cp $PKG_BUILD/gio/.libs/unix.so $PYTHON_LIB_DIR/site-packages/gtk-2.0/gio cp $PKG_BUILD/gio/*.py $PYTHON_LIB_DIR/site-packages/gtk-2.0/gio - cp $PKG_BUILD/gio/*.pyc $PYTHON_LIB_DIR/site-packages/gtk-2.0/gio From cbbca9e685b4a949b4801ec5740b5351c88aef09 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Thu, 20 Oct 2011 04:43:58 +0200 Subject: [PATCH 37/40] VERSION: set version to 1.0.0 (Final 1.0), update changelog Signed-off-by: Stephan Raue --- CHANGELOG | 3 +++ VERSION | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index e69de29bb2..a3b615ac4d 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -0,0 +1,3 @@ +OpenELEC - 1.0.0 (20.10.2011) +- initial version + diff --git a/VERSION b/VERSION index 03552ce4ff..3eefcb9dd5 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.99.7 +1.0.0 From d94f1963d5c540c9cb36dec73578826831a14283 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 21 Oct 2011 08:33:56 +0200 Subject: [PATCH 38/40] wpa_supplicant: remove patch to run in debugmode Signed-off-by: Stephan Raue --- ...upplicant-0.7.3-01-enable_logging-0.1.patch | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 packages/network/wpa_supplicant/patches/wpa_supplicant-0.7.3-01-enable_logging-0.1.patch diff --git a/packages/network/wpa_supplicant/patches/wpa_supplicant-0.7.3-01-enable_logging-0.1.patch b/packages/network/wpa_supplicant/patches/wpa_supplicant-0.7.3-01-enable_logging-0.1.patch deleted file mode 100644 index 9ec07248b0..0000000000 --- a/packages/network/wpa_supplicant/patches/wpa_supplicant-0.7.3-01-enable_logging-0.1.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -Naur wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service wpa_supplicant-0.7.3.patch/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service ---- wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service 2010-09-07 17:43:39.000000000 +0200 -+++ wpa_supplicant-0.7.3.patch/wpa_supplicant/dbus/fi.epitest.hostap.WPASupplicant.service 2011-04-08 19:04:10.740611827 +0200 -@@ -1,4 +1,4 @@ - [D-BUS Service] - Name=fi.epitest.hostap.WPASupplicant --Exec=/sbin/wpa_supplicant -u -+Exec=/sbin/wpa_supplicant -u -dd -t -f /var/log/wpa_supplicant.log - User=root -diff -Naur wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service wpa_supplicant-0.7.3.patch/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service ---- wpa_supplicant-0.7.3/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service 2010-09-07 17:43:39.000000000 +0200 -+++ wpa_supplicant-0.7.3.patch/wpa_supplicant/dbus/fi.w1.wpa_supplicant1.service 2011-04-08 19:04:18.365451110 +0200 -@@ -1,4 +1,4 @@ - [D-BUS Service] - Name=fi.w1.wpa_supplicant1 --Exec=/sbin/wpa_supplicant -u -+Exec=/sbin/wpa_supplicant -u -dd -t -f /var/log/wpa_supplicant.log - User=root From 030da6d655ab3d6d3ba96bc9cb28595e4f69965f Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 21 Oct 2011 08:47:11 +0200 Subject: [PATCH 39/40] dvb-firmware: update to dvb-firmware-0.0.15 Signed-off-by: Stephan Raue --- packages/linux-firmware/dvb-firmware/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/linux-firmware/dvb-firmware/meta b/packages/linux-firmware/dvb-firmware/meta index bf5a1bfd18..36cbafba0b 100644 --- a/packages/linux-firmware/dvb-firmware/meta +++ b/packages/linux-firmware/dvb-firmware/meta @@ -19,7 +19,7 @@ ################################################################################ PKG_NAME="dvb-firmware" -PKG_VERSION="0.0.14" +PKG_VERSION="0.0.15" PKG_REV="1" PKG_ARCH="any" PKG_LICENSE="Free-to-use" From a0f7d03281f0a9ef1a8608c1638fe2f4352295c8 Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Fri, 21 Oct 2011 23:15:45 +0200 Subject: [PATCH 40/40] VERSION: set version to 1.0.1 (Final 1.0), update changelog Signed-off-by: Stephan Raue --- CHANGELOG | 4 ++++ VERSION | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG b/CHANGELOG index a3b615ac4d..af11166dcb 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,7 @@ +OpenELEC - 1.0.1 (21.10.2011) +- dont start wpa_supplicant in debugmode, this fixes non working wlan connections +- update DVB firmwares + OpenELEC - 1.0.0 (20.10.2011) - initial version diff --git a/VERSION b/VERSION index 3eefcb9dd5..7dea76edb3 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.0.0 +1.0.1