diff mbox series

drm/i915: fix i386 build of 64b raw_uncore functions

Message ID 20190326233817.5417-1-daniele.ceraolospurio@intel.com (mailing list archive)
State New, archived
Headers show
Series drm/i915: fix i386 build of 64b raw_uncore functions | expand

Commit Message

Daniele Ceraolo Spurio March 26, 2019, 11:38 p.m. UTC
When building with ARCH=i386, readq and writeq are not defined,
resulting in:

intel_uncore.h: In function ‘__raw_uncore_read64’:
intel_uncore.h:257:9: error: implicit declaration of function ‘readq’;
	did you mean ‘readl’? [-Werror=implicit-function-declaration]
  return read##s__(uncore->regs + i915_mmio_reg_offset(reg)); \
         ^

and:

intel_uncore.h: In function ‘__raw_uncore_write64’:
intel_uncore.h:264:2: error: implicit declaration of function ‘writeq’;
	did you mean ‘writel’? [-Werror=implicit-function-declaration]
  write##s__(val, uncore->regs + i915_mmio_reg_offset(reg)); \
  ^

Add the io-64-nonatomic-lo-hi include to have readq and writeq available
for all builds. This header internally includes linux/io.h, so the
native readq and writeq definitions will be used when available.

Fixes: 6cc5ca768825 ("drm/i915: rename raw reg access functions")
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
---
 drivers/gpu/drm/i915/intel_uncore.h | 1 +
 1 file changed, 1 insertion(+)

Comments

Chris Wilson March 26, 2019, 11:57 p.m. UTC | #1
Quoting Daniele Ceraolo Spurio (2019-03-26 23:38:17)
> When building with ARCH=i386, readq and writeq are not defined,
> resulting in:
> 
> intel_uncore.h: In function ‘__raw_uncore_read64’:
> intel_uncore.h:257:9: error: implicit declaration of function ‘readq’;
>         did you mean ‘readl’? [-Werror=implicit-function-declaration]
>   return read##s__(uncore->regs + i915_mmio_reg_offset(reg)); \
>          ^
> 
> and:
> 
> intel_uncore.h: In function ‘__raw_uncore_write64’:
> intel_uncore.h:264:2: error: implicit declaration of function ‘writeq’;
>         did you mean ‘writel’? [-Werror=implicit-function-declaration]
>   write##s__(val, uncore->regs + i915_mmio_reg_offset(reg)); \
>   ^
> 
> Add the io-64-nonatomic-lo-hi include to have readq and writeq available
> for all builds. This header internally includes linux/io.h, so the
> native readq and writeq definitions will be used when available.
> 
> Fixes: 6cc5ca768825 ("drm/i915: rename raw reg access functions")
> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
> ---
>  drivers/gpu/drm/i915/intel_uncore.h | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_uncore.h b/drivers/gpu/drm/i915/intel_uncore.h
> index 06762501e9ee..50d226f68753 100644
> --- a/drivers/gpu/drm/i915/intel_uncore.h
> +++ b/drivers/gpu/drm/i915/intel_uncore.h
> @@ -28,6 +28,7 @@
>  #include <linux/spinlock.h>
>  #include <linux/notifier.h>
>  #include <linux/hrtimer.h>
> +#include <linux/io-64-nonatomic-lo-hi.h>

Yeah, can't see a better way as it does what we need for the fallback.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
-Chris
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/intel_uncore.h b/drivers/gpu/drm/i915/intel_uncore.h
index 06762501e9ee..50d226f68753 100644
--- a/drivers/gpu/drm/i915/intel_uncore.h
+++ b/drivers/gpu/drm/i915/intel_uncore.h
@@ -28,6 +28,7 @@ 
 #include <linux/spinlock.h>
 #include <linux/notifier.h>
 #include <linux/hrtimer.h>
+#include <linux/io-64-nonatomic-lo-hi.h>
 
 #include "i915_reg.h"