[PATCH] drm/etnaviv: dump DMA registers first

Derek Foreman derek.foreman at collabora.com
Fri May 3 14:21:42 UTC 2024


This patch is wrong, please discard.

The actual thing to do is read each register twice and discard the first 
read, as the vivante driver does when reading dma registers. I'll 
provide a patch to do that shortly.

Thanks,

Derek

On 2024-05-01 15:57, Derek Foreman wrote:
> On at least some hardware, reading one of these other registers has the
> side effect of changing the DMA address register, making dumps much less
> useful.
>
> Move some DMA registers to the top of the list to increase the chance of
> getting a useful devcoredump.
>
> Signed-off-by: Derek Foreman <derek.foreman at collabora.com>
> ---
>   drivers/gpu/drm/etnaviv/etnaviv_dump.c | 6 +++---
>   1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/etnaviv/etnaviv_dump.c b/drivers/gpu/drm/etnaviv/etnaviv_dump.c
> index 898f84a0fc30..920bbf627aa3 100644
> --- a/drivers/gpu/drm/etnaviv/etnaviv_dump.c
> +++ b/drivers/gpu/drm/etnaviv/etnaviv_dump.c
> @@ -25,6 +25,9 @@ struct core_dump_iterator {
>   };
>   
>   static const unsigned short etnaviv_dump_registers[] = {
> +	VIVS_FE_DMA_ADDRESS,
> +	VIVS_FE_DMA_LOW,
> +	VIVS_FE_DMA_HIGH,
>   	VIVS_HI_AXI_STATUS,
>   	VIVS_HI_CLOCK_CONTROL,
>   	VIVS_HI_IDLE_STATE,
> @@ -58,9 +61,6 @@ static const unsigned short etnaviv_dump_registers[] = {
>   	VIVS_MC_BUS_CONFIG,
>   	VIVS_FE_DMA_STATUS,
>   	VIVS_FE_DMA_DEBUG_STATE,
> -	VIVS_FE_DMA_ADDRESS,
> -	VIVS_FE_DMA_LOW,
> -	VIVS_FE_DMA_HIGH,
>   	VIVS_FE_AUTO_FLUSH,
>   };
>   


More information about the etnaviv mailing list