Module Name:    src
Committed By:   riastradh
Date:           Sat Aug 20 10:54:25 UTC 2022

Modified Files:
        src/sys/arch/ia64/ia64: efi.c
        src/sys/arch/ia64/include: efi.h

Log Message:
ia64: Make ct_data void *, not uint64_t, as in spec.


To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/ia64/ia64/efi.c
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/ia64/include/efi.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/ia64/ia64/efi.c
diff -u src/sys/arch/ia64/ia64/efi.c:1.3 src/sys/arch/ia64/ia64/efi.c:1.4
--- src/sys/arch/ia64/ia64/efi.c:1.3	Sat Aug 20 10:35:50 2022
+++ src/sys/arch/ia64/ia64/efi.c	Sat Aug 20 10:54:25 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: efi.c,v 1.3 2022/08/20 10:35:50 riastradh Exp $	*/
+/*	$NetBSD: efi.c,v 1.4 2022/08/20 10:54:25 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2004 Marcel Moolenaar
@@ -109,8 +109,10 @@ efi_get_table(struct uuid *uuid)
 	count = efi_systbl->st_entries;
 	ct = efi_cfgtbl;
 	while (count--) {
-		if (!memcmp(&ct->ct_uuid, uuid, sizeof(*uuid)))
-			return ((void *)IA64_PHYS_TO_RR7(ct->ct_data));
+		if (!memcmp(&ct->ct_uuid, uuid, sizeof(*uuid))) {
+			uint64_t data_pa = (uint64_t)(uintptr_t)ct->ct_data;
+			return ((void *)IA64_PHYS_TO_RR7(data_pa));
+		}
 		ct++;
 	}
 	return (NULL);

Index: src/sys/arch/ia64/include/efi.h
diff -u src/sys/arch/ia64/include/efi.h:1.4 src/sys/arch/ia64/include/efi.h:1.5
--- src/sys/arch/ia64/include/efi.h:1.4	Sat Aug 20 10:35:50 2022
+++ src/sys/arch/ia64/include/efi.h	Sat Aug 20 10:54:25 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: efi.h,v 1.4 2022/08/20 10:35:50 riastradh Exp $	*/
+/*	$NetBSD: efi.h,v 1.5 2022/08/20 10:54:25 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2004 Marcel Moolenaar
@@ -52,7 +52,7 @@ typedef unsigned long efi_status;
 
 struct efi_cfgtbl {
 	struct uuid	ct_uuid;
-	uint64_t	ct_data;
+	void		*ct_data;
 };
 
 struct efi_md {

Reply via email to