blob: f14dd0e9808459e73fc3797d6b59c2162db3c9a9 [file] [log] [blame]
[PATCH] backend/qcam.c: fix build on !x86
inb/outb/ioperm are x86 specific interfaces, so replace with noops on
!x86.
Inspired by similar patch in openwrt:
https://dev.openwrt.org/ticket/5689
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
backend/qcam.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
Index: sane-backends-1.0.22/backend/qcam.c
===================================================================
--- sane-backends-1.0.22.orig/backend/qcam.c
+++ sane-backends-1.0.22/backend/qcam.c
@@ -205,12 +205,20 @@
#endif /* <sys/io.h> || <asm/io.h> || <sys/hw.h> */
+/* inb / outb only exist on x86 */
+#if defined(__i386__) || defined(__x86_64__)
#define read_lpdata(d) inb ((d)->port)
#define read_lpstatus(d) inb ((d)->port + 1)
#define read_lpcontrol(d) inb ((d)->port + 2)
#define write_lpdata(d,v) outb ((v), (d)->port)
#define write_lpcontrol(d,v) outb ((v), (d)->port + 2)
-
+#else
+#define read_lpdata(d) 0
+#define read_lpstatus(d) 0
+#define read_lpcontrol(d) 0
+#define write_lpdata(d,v)
+#define write_lpcontrol(d,v)
+#endif
static SANE_Status
enable_ports (QC_Device * q)
@@ -219,8 +227,10 @@
if (q->port < 0x278 || q->port > 0x3bc)
return SANE_STATUS_INVAL;
+#if defined(__i386__) || defined(__x86_64__)
if (ioperm (q->port, 3, 1) < 0)
return SANE_STATUS_INVAL;
+#endif
return SANE_STATUS_GOOD;
}
@@ -228,8 +238,10 @@
static SANE_Status
disable_ports (QC_Device * q)
{
+#if defined(__i386__) || defined(__x86_64__)
if (ioperm (q->port, 3, 0) < 0)
return SANE_STATUS_INVAL;
+#endif
return SANE_STATUS_GOOD;
}