Re: [PATCH v1 04/11] drm/ati_pcigart: drop dependency on drm_os_linux.h

Sean Paul
2019-07-18T17:49:05Z

On Thu, Jul 18, 2019 at 06:15:00PM +0200, Sam Ravnborg wrote:
> The drm_os_linux.h header is deprecated.
> Just opencode the sole DRM_WRITE32().

Any plans for the other users of DRM_WRITE<N>()? It seems like it'd be trivial
to fix it up for via and mga. I don't really have any background on
drm_os_linux.h, but it doesn't seem like it'd be that much more effort to just
remove the whole thing.

Sean

>
> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Cc: Maxime Ripard <maxime.ripard@bootlin.com>
> Cc: Sean Paul <sean@poorly.run>
> Cc: David Airlie <airlied@linux.ie>
> Cc: Daniel Vetter <daniel@ffwll.ch>
> ---
> drivers/gpu/drm/ati_pcigart.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/ati_pcigart.c b/drivers/gpu/drm/ati_pcigart.c
> index 2a413e291a60..580aa2676358 100644
> --- a/drivers/gpu/drm/ati_pcigart.c
> +++ b/drivers/gpu/drm/ati_pcigart.c
> @@ -35,7 +35,6 @@
>
> #include <drm/ati_pcigart.h>
> #include <drm/drm_device.h>
> -#include <drm/drm_os_linux.h>
> #include <drm/drm_pci.h>
> #include <drm/drm_print.h>
>
> @@ -169,6 +168,7 @@ int drm_ati_pcigart_init(struct drm_device *dev, struct drm_ati_pcigart_info *ga
> page_base = (u32) entry->busaddr[i];
>
> for (j = 0; j < (PAGE_SIZE / ATI_PCIGART_PAGE_SIZE); j++) {
> + u32 offset;
> u32 val;
>
> switch(gart_info->gart_reg_if) {
> @@ -184,10 +184,12 @@ int drm_ati_pcigart_init(struct drm_device *dev, struct drm_ati_pcigart_info *ga
> break;
> }
> if (gart_info->gart_table_location ==
> - DRM_ATI_GART_MAIN)
> + DRM_ATI_GART_MAIN) {
> pci_gart[gart_idx] = cpu_to_le32(val);
> - else
> - DRM_WRITE32(map, gart_idx * sizeof(u32), val);
> + } else {
> + offset = gart_idx * sizeof(u32);
> + writel(val, (void __iomem *)map->handle + offset);
> + }
> gart_idx++;
> page_base += ATI_PCIGART_PAGE_SIZE;
> }
> --
> 2.20.1
>

--
Sean Paul, Software Engineer, Google / Chromium OS