mirror of
https://github.com/motioneye-project/motioneyeos.git
synced 2025-07-28 13:46:32 +00:00
sane-backends: fix build on !x86
qcam backend uses x86 specific inb/outb/ioperm interface, so replace with noops on !x86. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
parent
f00424cff0
commit
e08e35326c
61
package/sane-backends/sane-backends-1.0.22-qcam-x86.patch
Normal file
61
package/sane-backends/sane-backends-1.0.22-qcam-x86.patch
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
[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;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user