[openchrome-devel] [PATCH v2 1/4] drm/via: drop use of DRM(READ|WRITE) macros
Emil Velikov
emil.l.velikov at gmail.com
Mon Jul 22 15:38:39 UTC 2019
On Sat, 20 Jul 2019 at 09:46, Sam Ravnborg <sam at ravnborg.org> wrote:
>
> The DRM_READ, DRM_WRITE macros comes from the deprecated drm_os_linux.h
> header file. Remove their use to remove this dependency.
>
> Replace the use of the macros with open coded variants.
>
> Signed-off-by: Sam Ravnborg <sam at ravnborg.org>
> Cc: Kevin Brace <kevinbrace at gmx.com>
> Cc: Thomas Hellstrom <thellstrom at vmware.com>
> Cc: "Gustavo A. R. Silva" <gustavo at embeddedor.com>
> Cc: Mike Marshall <hubcap at omnibond.com>
> Cc: Ira Weiny <ira.weiny at intel.com>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> Cc: Emil Velikov <emil.velikov at collabora.com>
> Cc: Michel Dänzer <michel at daenzer.net>
> ---
> drivers/gpu/drm/via/via_drv.h | 15 +++++++++++----
> 1 file changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h
> index 6d1ae834484c..d5a2b1ffd8c1 100644
> --- a/drivers/gpu/drm/via/via_drv.h
> +++ b/drivers/gpu/drm/via/via_drv.h
> @@ -115,10 +115,17 @@ enum via_family {
> /* VIA MMIO register access */
> #define VIA_BASE ((dev_priv->mmio))
>
> -#define VIA_READ(reg) DRM_READ32(VIA_BASE, reg)
> -#define VIA_WRITE(reg, val) DRM_WRITE32(VIA_BASE, reg, val)
> -#define VIA_READ8(reg) DRM_READ8(VIA_BASE, reg)
> -#define VIA_WRITE8(reg, val) DRM_WRITE8(VIA_BASE, reg, val)
> +#define VIA_READ(reg) \
> + readl(((void __iomem *)VIA_BASE->handle) + (reg))
> +
> +#define VIA_WRITE(reg, val) \
> + writel(val, ((void __iomem *)VIA_BASE->handle) + (reg))
> +
> +#define VIA_READ8(reg) \
> + readb(((void __iomem *)VIA_BASE->handle) + (reg))
> +
> +#define VIA_WRITE8(reg, val) \
> + writeb(val, ((void __iomem *)VIA_BASE->handle) + (reg))
>
IMHO a far better idea is to expand these macros as static inline functions.
The extra bonus here is that the pseudo-magical VIA_BASE will also disappear.
Since all the VIA_READ8 are used for masking, one might as well drop
them in favour of via_mask().
WDYT?
-Emil
More information about the openchrome-devel
mailing list