[PATCH] Force-enable EXA UploadToScreen() and DownloadFromScreen()
Corbin Simpson
mostawesomedude at gmail.com
Sun Mar 6 11:08:27 PST 2011
On Sat, Mar 5, 2011 at 2:13 PM, Stephen Kitt <steve at sk2.org> wrote:
> The radeon drivers no longer support UploadToScreen() and
> DownloadFromScreen(). If the exa module supports it, the driver
> instructs it to prevent the user disabling them.
>
> Signed-off-by: Stephen Kitt <steve at sk2.org>
> ---
> src/evergreen_exa.c | 7 +++++++
> src/r600_exa.c | 7 +++++++
> src/radeon_exa_funcs.c | 6 ++++++
> 3 files changed, 20 insertions(+), 0 deletions(-)
>
> diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c
> index 553f05e..196c95d 100644
> --- a/src/evergreen_exa.c
> +++ b/src/evergreen_exa.c
> @@ -1778,6 +1778,13 @@ EVERGREENDrawInit(ScreenPtr pScreen)
> info->accel_state->exa->flags |= EXA_MIXED_PIXMAPS;
> #endif
> #endif
> +
> +#ifdef EXA_REQUIRES_UPLOAD_DOWNLOAD
> + /* This driver causes segfaults if UploadToScreen() or
> + DownloadFromScreen() are disabled. */
> + info->accel_state->exa->flags |= EXA_REQUIRES_UPLOAD_DOWNLOAD
> +#endif
> +
> info->accel_state->exa->pixmapOffsetAlign = 256;
> info->accel_state->exa->pixmapPitchAlign = 256;
>
> diff --git a/src/r600_exa.c b/src/r600_exa.c
> index 57e5c0f..b4eca00 100644
> --- a/src/r600_exa.c
> +++ b/src/r600_exa.c
> @@ -2235,6 +2235,13 @@ R600DrawInit(ScreenPtr pScreen)
> }
> #endif
> #endif
> +
> +#ifdef EXA_REQUIRES_UPLOAD_DOWNLOAD
> + /* This driver causes segfaults if UploadToScreen() or
> + DownloadFromScreen() are disabled. */
> + info->accel_state->exa->flags |= EXA_REQUIRES_UPLOAD_DOWNLOAD
> +#endif
> +
> info->accel_state->exa->pixmapOffsetAlign = 256;
> info->accel_state->exa->pixmapPitchAlign = 256;
>
> diff --git a/src/radeon_exa_funcs.c b/src/radeon_exa_funcs.c
> index e8c5571..d7b0700 100644
> --- a/src/radeon_exa_funcs.c
> +++ b/src/radeon_exa_funcs.c
> @@ -848,6 +848,12 @@ Bool FUNC_NAME(RADEONDrawInit)(ScreenPtr pScreen)
> }
> #endif
>
> +#ifdef EXA_REQUIRES_UPLOAD_DOWNLOAD
> + /* This driver causes segfaults if UploadToScreen() or
> + DownloadFromScreen() are disabled. */
> + info->accel_state->exa->flags |= EXA_REQUIRES_UPLOAD_DOWNLOAD
> +#endif
> +
> #ifdef RENDER
> if (info->RenderAccel) {
> if (IS_R300_3D || IS_R500_3D) {
Maybe I'm still waking up, but this shouldn't even compile due to
missing semicolons. Did you test these patches?
~ C.
--
When the facts change, I change my mind. What do you do, sir? ~ Keynes
Corbin Simpson
<MostAwesomeDude at gmail.com>
More information about the xorg-devel
mailing list