Displaying 4 results from an estimated 4 matches for "ram_fb_disable".
2014 Sep 04
1
[PATCH 4/8] fb/ramnve0: Disable FB before reclocking
...100644
> --- a/drivers/gpu/drm/nouveau/core/subdev/fb/ramnve0.c
> +++ b/drivers/gpu/drm/nouveau/core/subdev/fb/ramnve0.c
> @@ -998,6 +998,8 @@ nve0_ram_calc_xits(struct nouveau_fb *pfb, struct nouveau_ram_data *next)
> if (ret)
> return ret;
>
> + ram_fb_disable(fuc);
> +
> ram->mode = (next->freq > fuc->refpll.vco1.max_freq) ? 2 : 1;
> ram->from = ram_rd32(fuc, 0x1373f4) & 0x0000000f;
>
> @@ -1061,6 +1063,9 @@ nve0_ram_calc_xits(struct nouveau_fb *pfb, struct nouveau_ram_data *next)
> br...
2014 Sep 04
0
[PATCH 4/8] fb/ramnve0: Disable FB before reclocking
...rm/nouveau/core/subdev/fb/ramnve0.c
index c5b46e3..9764792 100644
--- a/drivers/gpu/drm/nouveau/core/subdev/fb/ramnve0.c
+++ b/drivers/gpu/drm/nouveau/core/subdev/fb/ramnve0.c
@@ -998,6 +998,8 @@ nve0_ram_calc_xits(struct nouveau_fb *pfb, struct nouveau_ram_data *next)
if (ret)
return ret;
+ ram_fb_disable(fuc);
+
ram->mode = (next->freq > fuc->refpll.vco1.max_freq) ? 2 : 1;
ram->from = ram_rd32(fuc, 0x1373f4) & 0x0000000f;
@@ -1061,6 +1063,9 @@ nve0_ram_calc_xits(struct nouveau_fb *pfb, struct nouveau_ram_data *next)
break;
}
+ if (!ret)
+ ram_fb_enable(fuc);
+
ret...
2014 Sep 04
0
[PATCH 3/8] pwr/memx: Make FB disable and enable explicit
...[0] != 0x000000)
@@ -121,5 +133,7 @@ ramfuc_wait_vblank(struct ramfuc *ram)
#define ram_wait(s,r,m,d,n) ramfuc_wait(&(s)->base, (r), (m), (d), (n))
#define ram_nsec(s,n) ramfuc_nsec(&(s)->base, (n))
#define ram_wait_vblank(s) ramfuc_wait_vblank(&(s)->base)
+#define ram_fb_disable(s) ramfuc_fb_disable(&(s)->base)
+#define ram_fb_enable(s) ramfuc_fb_enable(&(s)->base)
#endif
diff --git a/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/memx.fuc b/drivers/gpu/drm/nouveau/core/subdev/pwr/fuc/memx.fuc
index 228ee0d..9f2f57c 100644
--- a/drivers/gpu/drm/nouveau...
2014 Sep 04
10
MEMX improvements + DDR 2/3 MR generation
Patch 1 and 2 implement wait-for-vblank, required to remove flicker when reclocking memory
Patch 3 and 4 allow me to do things between waiting for VBLANK and disabling FB, like pause PFIFO and wait for the engines to idle. This minimises the time PFIFO is paused, thus maximises performance.
The rest of the patches speak for themselves. As the actual memory reclocking script is still somewhat prone