Module Name: src
Committed By: sborrill
Date: Wed Jan 23 14:49:00 UTC 2019
Modified Files:
src/sys/arch/acorn32/stand/lib: riscoscalls.S riscoscalls.h
Log Message:
Add xosmodule_enumeratewithversion() to allow operating systems modules
to be enumerated along with their version numbers.
To generate a diff of this commit:
cvs rdiff -u -r1.11 -r1.12 src/sys/arch/acorn32/stand/lib/riscoscalls.S
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/acorn32/stand/lib/riscoscalls.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/acorn32/stand/lib/riscoscalls.S
diff -u src/sys/arch/acorn32/stand/lib/riscoscalls.S:1.11 src/sys/arch/acorn32/stand/lib/riscoscalls.S:1.12
--- src/sys/arch/acorn32/stand/lib/riscoscalls.S:1.11 Thu Oct 18 19:02:46 2018
+++ src/sys/arch/acorn32/stand/lib/riscoscalls.S Wed Jan 23 14:49:00 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: riscoscalls.S,v 1.11 2018/10/18 19:02:46 skrll Exp $ */
+/* $NetBSD: riscoscalls.S,v 1.12 2019/01/23 14:49:00 sborrill Exp $ */
/*-
* Copyright (c) 2001 Ben Harris
@@ -254,6 +254,36 @@ ENTRY(xosmodule_lookup)
mov r0, #0
ldmdb fp, {r4-r8, fp, sp, pc}
+ENTRY(xosmodule_enumeratewithversion)
+ mov ip, sp
+ stmfd sp!, {r4-r10, fp, ip, lr, pc}
+ sub fp, ip, #4
+ mov r7, r0
+ mov r8, r1
+ mov r9, r2
+ mov r10, r3
+ ldr r1, [r7]
+ ldr r2, [r8]
+ mov r0, #OSModule_EnumerateWithVersion
+ swi XOS_Module
+ ldmdbvs fp, {r4-r10, fp, sp, pc}
+ str r1, [r7]
+ str r2, [r8]
+ teq r9, #0
+ strne r3, [r9]
+ teq r9, #0
+ strne r3, [r9]
+ teq r10, #0
+ strne r4, [r10]
+ ldr r10, [fp, #4]
+ teq r10, #0
+ strne r5, [r10]
+ ldr r10, [fp, #8]
+ teq r10, #0
+ strne r6, [r10]
+ mov r0, #0
+ ldmdb fp, {r4-r10, fp, sp, pc}
+
ENTRY(xosfscontrol_shutdown)
mov ip, sp
stmfd sp!, {fp, ip, lr, pc}
Index: src/sys/arch/acorn32/stand/lib/riscoscalls.h
diff -u src/sys/arch/acorn32/stand/lib/riscoscalls.h:1.12 src/sys/arch/acorn32/stand/lib/riscoscalls.h:1.13
--- src/sys/arch/acorn32/stand/lib/riscoscalls.h:1.12 Thu May 10 10:27:10 2012
+++ src/sys/arch/acorn32/stand/lib/riscoscalls.h Wed Jan 23 14:49:00 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: riscoscalls.h,v 1.12 2012/05/10 10:27:10 skrll Exp $ */
+/* $NetBSD: riscoscalls.h,v 1.13 2019/01/23 14:49:00 sborrill Exp $ */
/*-
* Copyright (c) 2001 Ben Harris
@@ -285,12 +285,15 @@ extern void os_enter_os(void);
#define OSModule_Alloc 6
#define OSModule_Free 7
#define OSModule_Lookup 18
+#define OSModule_EnumerateWithVersion 20
#ifndef __ASSEMBLER__
extern os_error *xosmodule_alloc(int, void **);
extern os_error *xosmodule_free(void *);
extern os_error *xosmodule_lookup(char const *, int *, int *, void **, void **,
char **);
+extern os_error *xosmodule_enumeratewithversion(int *, int *, char **, int *,
+ int *, int *);
#endif
#define OSFSControl_AddFS 12