• Danilo Krummrich's avatar
    drm/gem: rename GEM CMA helpers to GEM DMA helpers · 4a83c26a
    Danilo Krummrich authored
    Rename "GEM CMA" helpers to "GEM DMA" helpers - considering the
    hierarchy of APIs (mm/cma -> dma -> gem dma) calling them "GEM
    DMA" seems to be more applicable.
    
    Besides that, commit e57924d4 ("drm/doc: Task to rename CMA helpers")
    requests to rename the CMA helpers and implies that people seem to be
    confused about the naming.
    
    In order to do this renaming the following script was used:
    
    ```
    	#!/bin/bash
    
    	DIRS="drivers/gpu include/drm Documentation/gpu"
    
    	REGEX_SYM_UPPER="[0-9A-Z_\-]"
    	REGEX_SYM_LOWER="[0-9a-z_\-]"
    
    	REGEX_GREP_UPPER="(${REGEX_SYM_UPPER}*)(GEM)_CMA_(${REGEX_SYM_UPPER}*)"
    	REGEX_GREP_LOWER="(${REGEX_SYM_LOWER}*)(gem)_cma_(${REGEX_SYM_LOWER}*)"
    
    	REGEX_SED_UPPER="s/${REGEX_GREP_UPPER}/\1\2_DMA_\3/g"
    	REGEX_SED_LOWER="s/${REGEX_GREP_LOWER}/\1\2_dma_\3/g"
    
    	# Find all upper case 'CMA' symbols and replace them with 'DMA'.
    	for ff in $(grep -REHl "${REGEX_GREP_UPPER}" $DIRS)
    	do
    	       sed -i -E "$REGEX_SED_UPPER" $ff
    	done
    
    	# Find all lower case 'cma' symbols and replace them with 'dma'.
    	for ff in $(grep -REHl "${REGEX_GREP_LOWER}" $DIRS)
    	do
    	       sed -i -E "$REGEX_SED_LOWER" $ff
    	done
    
    	# Replace all occurrences of 'CMA' / 'cma' in comments and
    	# documentation files with 'DMA' / 'dma'.
    	for ff in $(grep -RiHl " cma " $DIRS)
    	do
    		sed -i -E "s/ cma / dma /g" $ff
    		sed -i -E "s/ CMA / DMA /g" $ff
    	done
    
    	# Rename all 'cma_obj's to 'dma_obj'.
    	for ff in $(grep -RiHl "cma_obj" $DIRS)
    	do
    		sed -i -E "s/cma_obj/dma_obj/g" $ff
    	done
    ```
    
    Only a few more manual modifications were needed, e.g. reverting the
    following modifications in some DRM Kconfig files
    
        -       select CMA if HAVE_DMA_CONTIGUOUS
        +       select DMA if HAVE_DMA_CONTIGUOUS
    
    as well as manually picking the occurrences of 'CMA'/'cma' in comments and
    documentation which relate to "GEM CMA", but not "FB CMA".
    
    Also drivers/gpu/drm/Makefile was fixed up manually after renaming
    drm_gem_cma_helper.c to drm_gem_dma_helper.c.
    
    This patch is compile-time tested building a x86_64 kernel with
    `make allyesconfig && make drivers/gpu/drm`.
    Acked-by: default avatarSam Ravnborg <sam@ravnborg.org>
    Acked-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
    Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
    Signed-off-by: default avatarDanilo Krummrich <dakr@redhat.com>
    Reviewed-by: Liviu Dudau <liviu.dudau@arm.com> #drivers/gpu/drm/arm
    Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
    Link: https://patchwork.freedesktop.org/patch/msgid/20220802000405.949236-4-dakr@redhat.com
    4a83c26a
vc4_drv.c 11.7 KB