Module Name:    src
Committed By:   thorpej
Date:           Fri Jan 19 05:45:28 UTC 2024

Modified Files:
        src/sys/arch/m68k/include: vectors.h
        src/sys/arch/m68k/m68k: m68k_intr.c

Log Message:
Ensuire VECO_TO_VECI() returns an 8-bit index.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/m68k/include/vectors.h
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/m68k/m68k/m68k_intr.c

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/m68k/include/vectors.h
diff -u src/sys/arch/m68k/include/vectors.h:1.4 src/sys/arch/m68k/include/vectors.h:1.5
--- src/sys/arch/m68k/include/vectors.h:1.4	Sun Jan 14 00:00:15 2024
+++ src/sys/arch/m68k/include/vectors.h	Fri Jan 19 05:45:28 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: vectors.h,v 1.4 2024/01/14 00:00:15 thorpej Exp $	*/
+/*	$NetBSD: vectors.h,v 1.5 2024/01/19 05:45:28 thorpej Exp $	*/
 
 /*-
  * Copyright (c) 2024 The NetBSD Foundation, Inc.
@@ -122,7 +122,7 @@
 #define	VECI_TRAP(x)		((x) + VECI_TRAP0)
 
 #define	VECI_TO_VECO(x)		((x) << 2)
-#define	VECO_TO_VECI(x)		((unsigned int)(x) >> 2)
+#define	VECO_TO_VECI(x)		((uint8_t)((unsigned int)(x) >> 2))
 
 #ifdef _KERNEL
 

Index: src/sys/arch/m68k/m68k/m68k_intr.c
diff -u src/sys/arch/m68k/m68k/m68k_intr.c:1.10 src/sys/arch/m68k/m68k/m68k_intr.c:1.11
--- src/sys/arch/m68k/m68k/m68k_intr.c:1.10	Tue Jan 16 02:36:49 2024
+++ src/sys/arch/m68k/m68k/m68k_intr.c	Fri Jan 19 05:45:28 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: m68k_intr.c,v 1.10 2024/01/16 02:36:49 thorpej Exp $	*/
+/*	$NetBSD: m68k_intr.c,v 1.11 2024/01/19 05:45:28 thorpej Exp $	*/
 
 /*-
  * Copyright (c) 1996, 2023, 2024 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: m68k_intr.c,v 1.10 2024/01/16 02:36:49 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: m68k_intr.c,v 1.11 2024/01/19 05:45:28 thorpej Exp $");
 
 #define	_M68K_INTR_PRIVATE
 
@@ -389,7 +389,7 @@ void	m68k_intr_autovec(struct clockframe
 void
 m68k_intr_autovec(struct clockframe frame)
 {
-	const int ipl = VECO_TO_VECI(frame.cf_vo & 0xfff) - VECI_INTRAV0;
+	const int ipl = VECO_TO_VECI(frame.cf_vo) - VECI_INTRAV0;
 	struct m68k_intrhand *ih;
 	bool rv = false;
 
@@ -420,7 +420,7 @@ void	m68k_intr_vectored(struct clockfram
 void
 m68k_intr_vectored(struct clockframe frame)
 {
-	const int vec = VECO_TO_VECI(frame.cf_vo & 0xfff);
+	const int vec = VECO_TO_VECI(frame.cf_vo);
 	const int ipl = (getsr() >> 8) & 7;
 	struct m68k_intrhand *ih;
 

Reply via email to