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 e57924d4ae80 ("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: Sam Ravnborg <sam@ravnborg.org> Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Danilo Krummrich <dakr@redhat.com> Reviewed-by: Liviu Dudau <liviu.dudau@arm.com> #drivers/gpu/drm/arm Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Link: https://patchwork.freedesktop.org/patch/msgid/20220802000405.949236-4-dakr@redhat.com
46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef _IMX_DRM_H_
|
|
#define _IMX_DRM_H_
|
|
|
|
struct device_node;
|
|
struct drm_crtc;
|
|
struct drm_connector;
|
|
struct drm_device;
|
|
struct drm_display_mode;
|
|
struct drm_encoder;
|
|
struct drm_framebuffer;
|
|
struct drm_plane;
|
|
struct platform_device;
|
|
|
|
struct imx_crtc_state {
|
|
struct drm_crtc_state base;
|
|
u32 bus_format;
|
|
u32 bus_flags;
|
|
int di_hsync_pin;
|
|
int di_vsync_pin;
|
|
};
|
|
|
|
static inline struct imx_crtc_state *to_imx_crtc_state(struct drm_crtc_state *s)
|
|
{
|
|
return container_of(s, struct imx_crtc_state, base);
|
|
}
|
|
int imx_drm_init_drm(struct platform_device *pdev,
|
|
int preferred_bpp);
|
|
int imx_drm_exit_drm(void);
|
|
|
|
extern struct platform_driver ipu_drm_driver;
|
|
|
|
void imx_drm_mode_config_init(struct drm_device *drm);
|
|
|
|
struct drm_gem_dma_object *imx_drm_fb_get_obj(struct drm_framebuffer *fb);
|
|
|
|
int imx_drm_encoder_parse_of(struct drm_device *drm,
|
|
struct drm_encoder *encoder, struct device_node *np);
|
|
|
|
void imx_drm_connector_destroy(struct drm_connector *connector);
|
|
|
|
int ipu_planes_assign_pre(struct drm_device *dev,
|
|
struct drm_atomic_state *state);
|
|
|
|
#endif /* _IMX_DRM_H_ */
|