[Mesa-dev] [PATCH 1/2] radeonsi: Use defines for CONTEXT_CONTROL instead of magic values.
Nicolai Hähnle
nhaehnle at gmail.com
Thu Apr 21 00:47:13 UTC 2016
On 20.04.2016 18:49, Bas Nieuwenhuizen wrote:
> I have no source for the actual name of these fields, as these are
> not in the kernel headers. I hope they are clear though.
>
> Signed-off-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
> ---
> src/gallium/drivers/radeonsi/si_state.c | 4 ++--
> src/gallium/drivers/radeonsi/sid.h | 3 +++
> 2 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
> index 305a70b..bd9a45c 100644
> --- a/src/gallium/drivers/radeonsi/si_state.c
> +++ b/src/gallium/drivers/radeonsi/si_state.c
> @@ -3821,8 +3821,8 @@ static void si_init_config(struct si_context *sctx)
> return;
>
> si_pm4_cmd_begin(pm4, PKT3_CONTEXT_CONTROL);
> - si_pm4_cmd_add(pm4, 0x80000000);
> - si_pm4_cmd_add(pm4, 0x80000000);
> + si_pm4_cmd_add(pm4, LOAD_CONTROL_UPDATE(1));
> + si_pm4_cmd_add(pm4, SHADOW_ENABLE_UPDATE(1));
> si_pm4_cmd_end(pm4, false);
>
> si_pm4_set_reg(pm4, R_028A18_VGT_HOS_MAX_TESS_LEVEL, fui(64));
> diff --git a/src/gallium/drivers/radeonsi/sid.h b/src/gallium/drivers/radeonsi/sid.h
> index 516e114..6fb12f62 100644
> --- a/src/gallium/drivers/radeonsi/sid.h
> +++ b/src/gallium/drivers/radeonsi/sid.h
> @@ -88,6 +88,9 @@
> #define PKT3_INDEX_BASE 0x26
> #define PKT3_DRAW_INDEX_2 0x27
> #define PKT3_CONTEXT_CONTROL 0x28
> +#define LOAD_CONTROL_UPDATE(x) (((x) & 0x1) << 31)
> +#define LOAD_CONTROL_CE_RAM_EN(x) (((x) & 0x1) << 28)
> +#define SHADOW_ENABLE_UPDATE(x) (((x) & 0x1) << 31)
In the docs I have here, they are called LOAD_ENABLE, LOAD_CE_RAM, and
SHADOW_ENABLE, respectively.
> #define PKT3_INDEX_TYPE 0x2A
> #define PKT3_DRAW_INDIRECT_MULTI 0x2C
> #define PKT3_DRAW_INDEX_AUTO 0x2D
>
More information about the mesa-dev
mailing list