CVS commit: src/sys/arch/powerpc/include

2024-04-02 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Apr  2 14:21:29 UTC 2024

Modified Files:
src/sys/arch/powerpc/include: limits.h

Log Message:
harmonize with the rest of MD limits files.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/powerpc/include/limits.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2024-04-02 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Tue Apr  2 14:21:29 UTC 2024

Modified Files:
src/sys/arch/powerpc/include: limits.h

Log Message:
harmonize with the rest of MD limits files.


To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/powerpc/include/limits.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/powerpc/include/limits.h
diff -u src/sys/arch/powerpc/include/limits.h:1.20 src/sys/arch/powerpc/include/limits.h:1.21
--- src/sys/arch/powerpc/include/limits.h:1.20	Mon Jan 21 15:28:18 2019
+++ src/sys/arch/powerpc/include/limits.h	Tue Apr  2 10:21:29 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: limits.h,v 1.20 2019/01/21 20:28:18 dholland Exp $	*/
+/*	$NetBSD: limits.h,v 1.21 2024/04/02 14:21:29 christos Exp $	*/
 
 /*
  * Copyright (c) 1988, 1993
@@ -94,18 +94,9 @@
 #define	SIZE_T_MAX	UINT_MAX	/* max value for a size_t */
 #endif
 
-#ifdef _LP64
-/* Quads and longs are the same on LP64. */
-#define	UQUAD_MAX	(ULONG_MAX)
-#define	QUAD_MAX	(LONG_MAX)
-#define	QUAD_MIN	(LONG_MIN)
-#else
-/* GCC requires that quad constants be written as expressions. */
-#define	UQUAD_MAX	((u_quad_t)0-1)	/* max value for a uquad_t */
-	/* max value for a quad_t */
-#define	QUAD_MAX	((quad_t)(UQUAD_MAX >> 1))
-#define	QUAD_MIN	(-QUAD_MAX-1)	/* min value for a quad_t */
-#endif
+#define	UQUAD_MAX	0xULL		/* max unsigned quad */
+#define	QUAD_MAX	0x7fffLL		/* max signed quad */
+#define	QUAD_MIN	(-0x7fffLL-1)	/* min signed quad */
 
 #endif /* _NETBSD_SOURCE */
 #endif /* _POSIX_C_SOURCE || _XOPEN_SOURCE || _NETBSD_SOURCE */



CVS commit: src/sys/arch/powerpc/include/oea

2024-03-10 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sun Mar 10 17:07:31 UTC 2024

Modified Files:
src/sys/arch/powerpc/include/oea: hid.h

Log Message:
powerpc/hid: fix snprintb format for HID0_970_BITMASK_U


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/powerpc/include/oea/hid.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/powerpc/include/oea/hid.h
diff -u src/sys/arch/powerpc/include/oea/hid.h:1.14 src/sys/arch/powerpc/include/oea/hid.h:1.15
--- src/sys/arch/powerpc/include/oea/hid.h:1.14	Sat Jan 20 09:47:35 2024
+++ src/sys/arch/powerpc/include/oea/hid.h	Sun Mar 10 17:07:31 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: hid.h,v 1.14 2024/01/20 09:47:35 jmcneill Exp $	*/
+/*	$NetBSD: hid.h,v 1.15 2024/03/10 17:07:31 rillig Exp $	*/
 
 /*-
  * Copyright (c) 2000 Tsubai Masanari.  All rights reserved.
@@ -112,7 +112,7 @@
 "\040EMCP"
 
 #define HID0_970_BITMASK_U "\020" \
-"\040ONEPPC\036DOSNGL\036ISYNCSC\035SERGP\034res\033res\032res\031DEEPNAP" \
+"\040ONEPPC\037DOSNGL\036ISYNCSC\035SERGP\034res\033res\032res\031DEEPNAP" \
 "\030DOZE\027NAP\026res\025DPM\024res\023TG\022HNGDIS\021NHR" \
 "\020INORDER\017res\016TBCTRL\015EXTBEN\014res\013res\012CIABREN\011HDICEEN" \
 "\001ENATTN"



CVS commit: src/sys/arch/powerpc/include/oea

2024-03-10 Thread Roland Illig
Module Name:src
Committed By:   rillig
Date:   Sun Mar 10 17:07:31 UTC 2024

Modified Files:
src/sys/arch/powerpc/include/oea: hid.h

Log Message:
powerpc/hid: fix snprintb format for HID0_970_BITMASK_U


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/powerpc/include/oea/hid.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2024-01-22 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Tue Jan 23 04:15:54 UTC 2024

Modified Files:
src/sys/arch/powerpc/include: ieee.h

Log Message:
powerpc/ieee.h: Protect from multiple includes

Fix build failure triggered by import of libm long-double functions.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/include/ieee.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2024-01-22 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Tue Jan 23 04:15:54 UTC 2024

Modified Files:
src/sys/arch/powerpc/include: ieee.h

Log Message:
powerpc/ieee.h: Protect from multiple includes

Fix build failure triggered by import of libm long-double functions.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/include/ieee.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/powerpc/include/ieee.h
diff -u src/sys/arch/powerpc/include/ieee.h:1.6 src/sys/arch/powerpc/include/ieee.h:1.7
--- src/sys/arch/powerpc/include/ieee.h:1.6	Wed Oct 22 10:32:50 2014
+++ src/sys/arch/powerpc/include/ieee.h	Tue Jan 23 04:15:54 2024
@@ -1,4 +1,7 @@
-/*	$NetBSD: ieee.h,v 1.6 2014/10/22 10:32:50 joerg Exp $	*/
+/*	$NetBSD: ieee.h,v 1.7 2024/01/23 04:15:54 rin Exp $	*/
+
+#ifndef _POWERPC_IEEE_H_
+#define _POWERPC_IEEE_H_
 
 #include 
 
@@ -16,3 +19,5 @@ union ldbl_u {
 	long double	ldblu_ld;
 	double		ldblu_d[2];
 };
+
+#endif /* !_POWERPC_IEEE_H_ */



CVS commit: src/sys/arch/powerpc/include/oea

2024-01-20 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jan 20 09:47:35 UTC 2024

Modified Files:
src/sys/arch/powerpc/include/oea: hid.h

Log Message:
fix comments: HID0 ICFI/DCFI are "flash invalidate", not "flush invalidate"


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/oea/hid.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/powerpc/include/oea/hid.h
diff -u src/sys/arch/powerpc/include/oea/hid.h:1.13 src/sys/arch/powerpc/include/oea/hid.h:1.14
--- src/sys/arch/powerpc/include/oea/hid.h:1.13	Mon Jul  6 10:31:23 2020
+++ src/sys/arch/powerpc/include/oea/hid.h	Sat Jan 20 09:47:35 2024
@@ -1,4 +1,4 @@
-/*	$NetBSD: hid.h,v 1.13 2020/07/06 10:31:23 rin Exp $	*/
+/*	$NetBSD: hid.h,v 1.14 2024/01/20 09:47:35 jmcneill Exp $	*/
 
 /*-
  * Copyright (c) 2000 Tsubai Masanari.  All rights reserved.
@@ -81,8 +81,8 @@
 #define HID0_DCE	0x4000  /* Enable d-cache */
 #define HID0_ILOCK	0x2000  /* i-cache lock */
 #define HID0_DLOCK	0x1000  /* d-cache lock */
-#define HID0_ICFI	0x0800  /* i-cache flush invalidate */
-#define HID0_DCFI	0x0400  /* d-cache flush invalidate */
+#define HID0_ICFI	0x0800  /* i-cache flash invalidate */
+#define HID0_DCFI	0x0400  /* d-cache flash invalidate */
 #define HID0_SPD	0x0200  /* Disable speculative cache access */
 #define HID0_IFEM	0x0100  /* Enable M-bit for I-fetch */
 #define HID0_XBSEN	0x0100  /* Extended BAT block size enable (7455+) */



CVS commit: src/sys/arch/powerpc/include/oea

2024-01-20 Thread Jared D. McNeill
Module Name:src
Committed By:   jmcneill
Date:   Sat Jan 20 09:47:35 UTC 2024

Modified Files:
src/sys/arch/powerpc/include/oea: hid.h

Log Message:
fix comments: HID0 ICFI/DCFI are "flash invalidate", not "flush invalidate"


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/oea/hid.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include/booke

2023-09-28 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Thu Sep 28 06:24:37 UTC 2023

Modified Files:
src/sys/arch/powerpc/include/booke: pmap.h

Log Message:
#define -> #define for consistency


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/include/booke/pmap.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/powerpc/include/booke/pmap.h
diff -u src/sys/arch/powerpc/include/booke/pmap.h:1.24 src/sys/arch/powerpc/include/booke/pmap.h:1.25
--- src/sys/arch/powerpc/include/booke/pmap.h:1.24	Sun Dec 20 16:38:25 2020
+++ src/sys/arch/powerpc/include/booke/pmap.h	Thu Sep 28 06:24:37 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.24 2020/12/20 16:38:25 skrll Exp $	*/
+/*	$NetBSD: pmap.h,v 1.25 2023/09/28 06:24:37 skrll Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -66,8 +66,8 @@
 
 #define	NBSEG		(NBPG*NPTEPG)
 #define	SEGSHIFT	(PGSHIFT + PGSHIFT - 2)
-#define SEGOFSET	((1 << SEGSHIFT) - 1)
-#define PMAP_SEGTABSIZE	(1 << (32 - SEGSHIFT))
+#define	SEGOFSET	((1 << SEGSHIFT) - 1)
+#define	PMAP_SEGTABSIZE	(1 << (32 - SEGSHIFT))
 #define	NPTEPG		(NBPG >> 2)
 
 #define	KERNEL_PID	0



CVS commit: src/sys/arch/powerpc/include/booke

2023-09-28 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Thu Sep 28 06:24:37 UTC 2023

Modified Files:
src/sys/arch/powerpc/include/booke: pmap.h

Log Message:
#define -> #define for consistency


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/include/booke/pmap.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2023-09-28 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Thu Sep 28 06:19:19 UTC 2023

Modified Files:
src/sys/arch/powerpc/include/ibm4xx: pmap.h
src/sys/arch/powerpc/include/oea: pmap.h

Log Message:
Trailing whitespace.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/powerpc/include/ibm4xx/pmap.h
cvs rdiff -u -r1.37 -r1.38 src/sys/arch/powerpc/include/oea/pmap.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/powerpc/include/ibm4xx/pmap.h
diff -u src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.21 src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.22
--- src/sys/arch/powerpc/include/ibm4xx/pmap.h:1.21	Sat Mar 14 14:05:43 2020
+++ src/sys/arch/powerpc/include/ibm4xx/pmap.h	Thu Sep 28 06:19:19 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.21 2020/03/14 14:05:43 ad Exp $	*/
+/*	$NetBSD: pmap.h,v 1.22 2023/09/28 06:19:19 skrll Exp $	*/
 
 /*
  * Copyright 2001 Wasabi Systems, Inc.
@@ -69,7 +69,7 @@
 #ifndef	_IBM4XX_PMAP_H_
 #define	_IBM4XX_PMAP_H_
 
-#ifdef _LOCORE  
+#ifdef _LOCORE
 #error use assym.h instead
 #endif
 
@@ -132,7 +132,7 @@
 #define	STIDX(v)	((v) >> (PGSHIFT + 12))
 
 
-/* 
+/*
  * Extra flags to pass to pmap_enter() -- make sure they don't conflict
  * w/PMAP_CANFAIL or PMAP_WIRED
  */

Index: src/sys/arch/powerpc/include/oea/pmap.h
diff -u src/sys/arch/powerpc/include/oea/pmap.h:1.37 src/sys/arch/powerpc/include/oea/pmap.h:1.38
--- src/sys/arch/powerpc/include/oea/pmap.h:1.37	Sat May  7 07:10:46 2022
+++ src/sys/arch/powerpc/include/oea/pmap.h	Thu Sep 28 06:19:19 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.37 2022/05/07 07:10:46 rin Exp $	*/
+/*	$NetBSD: pmap.h,v 1.38 2023/09/28 06:19:19 skrll Exp $	*/
 
 /*-
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -34,7 +34,7 @@
 #ifndef	_POWERPC_OEA_PMAP_H_
 #define	_POWERPC_OEA_PMAP_H_
 
-#ifdef _LOCORE  
+#ifdef _LOCORE
 #error use assym.h instead
 #endif
 



CVS commit: src/sys/arch/powerpc/include

2023-09-28 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Thu Sep 28 06:19:19 UTC 2023

Modified Files:
src/sys/arch/powerpc/include/ibm4xx: pmap.h
src/sys/arch/powerpc/include/oea: pmap.h

Log Message:
Trailing whitespace.


To generate a diff of this commit:
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/powerpc/include/ibm4xx/pmap.h
cvs rdiff -u -r1.37 -r1.38 src/sys/arch/powerpc/include/oea/pmap.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2023-07-26 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Wed Jul 26 06:36:20 UTC 2023

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
Trailing whitespace


To generate a diff of this commit:
cvs rdiff -u -r1.123 -r1.124 src/sys/arch/powerpc/include/cpu.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/powerpc/include/cpu.h
diff -u src/sys/arch/powerpc/include/cpu.h:1.123 src/sys/arch/powerpc/include/cpu.h:1.124
--- src/sys/arch/powerpc/include/cpu.h:1.123	Tue Nov 15 12:43:14 2022
+++ src/sys/arch/powerpc/include/cpu.h	Wed Jul 26 06:36:20 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.123 2022/11/15 12:43:14 macallan Exp $	*/
+/*	$NetBSD: cpu.h,v 1.124 2023/07/26 06:36:20 skrll Exp $	*/
 
 /*
  * Copyright (C) 1999 Wolfgang Solfrank.
@@ -134,7 +134,7 @@ struct cpu_info {
 #define	ci_pmap_user_segtab	ci_pmap_segtabs[1]
 	struct pmap_tlb_info *ci_tlb_info;
 #endif /* PPC_BOOKE || ((MODULAR || _MODULE) && !_LP64) */
-	struct cache_info ci_ci;		
+	struct cache_info ci_ci;
 	void *ci_sysmon_cookie;
 	void (*ci_idlespin)(void);
 	uint32_t ci_khz;
@@ -341,7 +341,7 @@ mfrtc(uint32_t *rtcp)
 static __inline uint64_t
 rtc_nanosecs(void)
 {
-/* 
+/*
  * 601 RTC/DEC registers share clock of 7.8125 MHz, 128 ns per tick.
  * DEC has max of 25 bits, FF => 2.14748352 seconds.
  * RTCU is seconds, 32 bits.



CVS commit: src/sys/arch/powerpc/include

2023-07-26 Thread Nick Hudson
Module Name:src
Committed By:   skrll
Date:   Wed Jul 26 06:36:20 UTC 2023

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
Trailing whitespace


To generate a diff of this commit:
cvs rdiff -u -r1.123 -r1.124 src/sys/arch/powerpc/include/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-11-15 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Tue Nov 15 12:43:14 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
remove workaround for old clang - it's not needed anymore and caused problems
elsewhere


To generate a diff of this commit:
cvs rdiff -u -r1.122 -r1.123 src/sys/arch/powerpc/include/cpu.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/powerpc/include/cpu.h
diff -u src/sys/arch/powerpc/include/cpu.h:1.122 src/sys/arch/powerpc/include/cpu.h:1.123
--- src/sys/arch/powerpc/include/cpu.h:1.122	Mon May 30 14:48:08 2022
+++ src/sys/arch/powerpc/include/cpu.h	Tue Nov 15 12:43:14 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.122 2022/05/30 14:48:08 rin Exp $	*/
+/*	$NetBSD: cpu.h,v 1.123 2022/11/15 12:43:14 macallan Exp $	*/
 
 /*
  * Copyright (C) 1999 Wolfgang Solfrank.
@@ -240,12 +240,8 @@ curcpu(void)
 	return ci;
 }
 
-#ifdef __clang__
-#define	curlwp			(curcpu()->ci_curlwp)
-#else
 register struct lwp *powerpc_curlwp __asm("r13");
 #define	curlwp			powerpc_curlwp
-#endif
 #define curpcb			(curcpu()->ci_curpcb)
 #define curpm			(curcpu()->ci_curpm)
 



CVS commit: src/sys/arch/powerpc/include

2022-11-15 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Tue Nov 15 12:43:14 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
remove workaround for old clang - it's not needed anymore and caused problems
elsewhere


To generate a diff of this commit:
cvs rdiff -u -r1.122 -r1.123 src/sys/arch/powerpc/include/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-09-12 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Tue Sep 13 01:22:12 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: fenv.h

Log Message:
fesetexceptflag(): Set FE_ALL_INVALID instead of FE_ALL_EXCEPT for
FE_INVALID. Taken from FreeBSD:

https://cgit.freebsd.org/src/commit/lib/msun/powerpc/fenv.h?id=e7bd4f846f0c9185aebfd3d116bb78ab137280fa

> [POWERPC] msun: fix incorrect flag in fesetexceptflag
> Fix incorrect mask being used when FE_INVALID bit is wanted by user.
> The problem was noticed thanks to msun fenv tests.
>
> Reviewed by:  jhibbits, luporl
> Sponsored by: Eldorado Research Institute (eldorado.org.br)
> Differential Revision:https://reviews.freebsd.org/D27201

No regression for full ATF on both real and emulated FPU.

XXX
Import some tests from FreeBSD's lib/msun/tests.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/include/fenv.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/powerpc/include/fenv.h
diff -u src/sys/arch/powerpc/include/fenv.h:1.6 src/sys/arch/powerpc/include/fenv.h:1.7
--- src/sys/arch/powerpc/include/fenv.h:1.6	Wed Oct 30 02:44:29 2019
+++ src/sys/arch/powerpc/include/fenv.h	Tue Sep 13 01:22:12 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: fenv.h,v 1.6 2019/10/30 02:44:29 christos Exp $	*/
+/*	$NetBSD: fenv.h,v 1.7 2022/09/13 01:22:12 rin Exp $	*/
 
 /*-
  * Copyright (c) 2004-2005 David Schultz 
@@ -177,7 +177,7 @@ fesetexceptflag(const fexcept_t *__flagp
 	union __fpscr __r;
 
 	if (__excepts & FE_INVALID)
-		__excepts |= FE_ALL_EXCEPT;
+		__excepts |= FE_ALL_INVALID;
 	__mffs(&__r.__d);
 	__r.__bits.__reg &= ~__excepts;
 	__r.__bits.__reg |= *__flagp & __excepts;



CVS commit: src/sys/arch/powerpc/include

2022-09-12 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Tue Sep 13 01:22:12 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: fenv.h

Log Message:
fesetexceptflag(): Set FE_ALL_INVALID instead of FE_ALL_EXCEPT for
FE_INVALID. Taken from FreeBSD:

https://cgit.freebsd.org/src/commit/lib/msun/powerpc/fenv.h?id=e7bd4f846f0c9185aebfd3d116bb78ab137280fa

> [POWERPC] msun: fix incorrect flag in fesetexceptflag
> Fix incorrect mask being used when FE_INVALID bit is wanted by user.
> The problem was noticed thanks to msun fenv tests.
>
> Reviewed by:  jhibbits, luporl
> Sponsored by: Eldorado Research Institute (eldorado.org.br)
> Differential Revision:https://reviews.freebsd.org/D27201

No regression for full ATF on both real and emulated FPU.

XXX
Import some tests from FreeBSD's lib/msun/tests.


To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/powerpc/include/fenv.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include/booke

2022-09-12 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Mon Sep 12 08:14:55 UTC 2022

Modified Files:
src/sys/arch/powerpc/include/booke: intr.h

Log Message:
PR port-powerpc/56922

__HAVE_FAST_SOFTINTS is broken for powerpc.
Disable it temporarily also for booke.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/powerpc/include/booke/intr.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/powerpc/include/booke/intr.h
diff -u src/sys/arch/powerpc/include/booke/intr.h:1.12 src/sys/arch/powerpc/include/booke/intr.h:1.13
--- src/sys/arch/powerpc/include/booke/intr.h:1.12	Sat Nov 23 19:40:36 2019
+++ src/sys/arch/powerpc/include/booke/intr.h	Mon Sep 12 08:14:55 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: intr.h,v 1.12 2019/11/23 19:40:36 ad Exp $	*/
+/*	$NetBSD: intr.h,v 1.13 2022/09/12 08:14:55 rin Exp $	*/
 /*-
  * Copyright (c) 2010, 2011 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -77,7 +77,9 @@
 #define IPI_SUSPEND	0x0020
 #define IPI_AST		0x0040
 
+#if 0	/* PR port-powerpc/56922: fast softints are broken on powerpc */
 #define	__HAVE_FAST_SOFTINTS	1
+#endif
 #define	SOFTINT_KPREEMPT	SOFTINT_COUNT
 
 #ifndef _LOCORE



CVS commit: src/sys/arch/powerpc/include/booke

2022-09-12 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Mon Sep 12 08:14:55 UTC 2022

Modified Files:
src/sys/arch/powerpc/include/booke: intr.h

Log Message:
PR port-powerpc/56922

__HAVE_FAST_SOFTINTS is broken for powerpc.
Disable it temporarily also for booke.


To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/powerpc/include/booke/intr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-07-11 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Mon Jul 11 09:39:10 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: intr.h

Log Message:
PR 56922: disabel fast softints for powerpc for now.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/sys/arch/powerpc/include/intr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-07-11 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Mon Jul 11 09:39:10 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: intr.h

Log Message:
PR 56922: disabel fast softints for powerpc for now.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/sys/arch/powerpc/include/intr.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/powerpc/include/intr.h
diff -u src/sys/arch/powerpc/include/intr.h:1.18 src/sys/arch/powerpc/include/intr.h:1.19
--- src/sys/arch/powerpc/include/intr.h:1.18	Tue Mar  2 07:37:27 2021
+++ src/sys/arch/powerpc/include/intr.h	Mon Jul 11 09:39:10 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: intr.h,v 1.18 2021/03/02 07:37:27 rin Exp $ */
+/*	$NetBSD: intr.h,v 1.19 2022/07/11 09:39:10 martin Exp $ */
 
 /*-
  * Copyright (c) 2007 Michael Lorenz
@@ -28,13 +28,15 @@
 
 #ifndef _LOCORE
 #include 
-__KERNEL_RCSID(0, "$NetBSD: intr.h,v 1.18 2021/03/02 07:37:27 rin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intr.h,v 1.19 2022/07/11 09:39:10 martin Exp $");
 #endif
 
 #ifndef _POWERPC_INTR_MACHDEP_H_
 #define _POWERPC_INTR_MACHDEP_H_
 
+#if 0	/* PR port-powerpc/56922: fast softints are broken on powerpc */
 #define	__HAVE_FAST_SOFTINTS	1
+#endif
 
 
 /* Interrupt priority `levels'. */



CVS commit: src/sys/arch/powerpc/include

2022-05-29 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Sun May 29 11:55:05 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: instr.h

Log Message:
Fix insn field definitions for MD and MDS formats.

No one uses these yet.


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/powerpc/include/instr.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/powerpc/include/instr.h
diff -u src/sys/arch/powerpc/include/instr.h:1.9 src/sys/arch/powerpc/include/instr.h:1.10
--- src/sys/arch/powerpc/include/instr.h:1.9	Wed Jul 15 08:58:51 2020
+++ src/sys/arch/powerpc/include/instr.h	Sun May 29 11:55:05 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: instr.h,v 1.9 2020/07/15 08:58:51 rin Exp $ */
+/*	$NetBSD: instr.h,v 1.10 2022/05/29 11:55:05 rin Exp $ */
 
 /*
  * Copyright (c) 1992, 1993
@@ -135,11 +135,10 @@ union instr {
 		u_int	i_opcd:6;
 		u_int	i_rs:5;
 		u_int	i_ra:5;
-		u_int	i_rb:5;
 		int	i_sh1_5:5;
 		int	i_mb:6;
 		u_int	i_xo:3;
-		int	i_sh0:2;
+		int	i_sh0:1;
 		u_int	i_rc:1;
 	} i_md;
 
@@ -151,7 +150,6 @@ union instr {
 		u_int	i_rs:5;
 		u_int	i_ra:5;
 		u_int	i_rb:5;
-		int	i_sh:5;
 		int	i_mb:6;
 		u_int	i_xo:4;
 		u_int	i_rc:1;



CVS commit: src/sys/arch/powerpc/include

2022-05-29 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Sun May 29 11:55:05 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: instr.h

Log Message:
Fix insn field definitions for MD and MDS formats.

No one uses these yet.


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/powerpc/include/instr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-05-11 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Wed May 11 13:58:43 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: vmparam.h

Log Message:
s/varible/variable/


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/include/vmparam.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-05-11 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Wed May 11 13:58:43 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: vmparam.h

Log Message:
s/varible/variable/


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/include/vmparam.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/powerpc/include/vmparam.h
diff -u src/sys/arch/powerpc/include/vmparam.h:1.25 src/sys/arch/powerpc/include/vmparam.h:1.26
--- src/sys/arch/powerpc/include/vmparam.h:1.25	Wed Jan  6 08:17:46 2021
+++ src/sys/arch/powerpc/include/vmparam.h	Wed May 11 13:58:43 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: vmparam.h,v 1.25 2021/01/06 08:17:46 rin Exp $	*/
+/*	$NetBSD: vmparam.h,v 1.26 2022/05/11 13:58:43 andvar Exp $	*/
 
 #ifndef _POWERPC_VMPARAM_H_
 #define _POWERPC_VMPARAM_H_
@@ -30,7 +30,7 @@
 #if defined(MODULAR) || defined(_MODULE) || !defined(_KERNEL)
 /*
  * If we are a module or a modular kernel, then we need to defined the range
- * of our varible page sizes since BOOKE and OEA use 4KB pages while IBM4XX
+ * of our variable page sizes since BOOKE and OEA use 4KB pages while IBM4XX
  * use 16KB pages.
  * This is also required for userland by jemalloc.
  */



CVS commit: src/sys/arch/powerpc/include

2022-05-07 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Sat May  7 09:02:19 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: spr.h

Log Message:
Remove SPR_CCR0 from ; we already have it in
, together with other 4xx-specific SPRs.

Thanks uwe@ for pointing out.


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 src/sys/arch/powerpc/include/spr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2022-05-07 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Sat May  7 09:02:19 UTC 2022

Modified Files:
src/sys/arch/powerpc/include: spr.h

Log Message:
Remove SPR_CCR0 from ; we already have it in
, together with other 4xx-specific SPRs.

Thanks uwe@ for pointing out.


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.56 src/sys/arch/powerpc/include/spr.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/powerpc/include/spr.h
diff -u src/sys/arch/powerpc/include/spr.h:1.55 src/sys/arch/powerpc/include/spr.h:1.56
--- src/sys/arch/powerpc/include/spr.h:1.55	Sat May  7 04:12:54 2022
+++ src/sys/arch/powerpc/include/spr.h	Sat May  7 09:02:19 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: spr.h,v 1.55 2022/05/07 04:12:54 rin Exp $	*/
+/*	$NetBSD: spr.h,v 1.56 2022/05/07 09:02:19 rin Exp $	*/
 
 /*
  * Copyright (c) 2001, The NetBSD Foundation, Inc.
@@ -144,7 +144,6 @@ mfspr(int reg)
 #define	SPR_TBL			0x11c	/* E468 Time Base Lower */
 #define	SPR_TBU			0x11d	/* E468 Time Base Upper */
 #define	SPR_PVR			0x11f	/* E468 Processor Version Register */
-#define	SPR_CCR0		0x3b3	/* .4.. Core Configuration Register */
 
 /* Time Base Register declarations */
 #define	TBR_TBL			0x10c	/* E468 Time Base Lower */



CVS commit: src/sys/arch/powerpc/include/oea

2022-02-03 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Thu Feb  3 17:23:50 UTC 2022

Modified Files:
src/sys/arch/powerpc/include/oea: vmparam.h

Log Message:
bump MAXTSIZ
now clang runs again


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/oea/vmparam.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include/oea

2022-02-03 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Thu Feb  3 17:23:50 UTC 2022

Modified Files:
src/sys/arch/powerpc/include/oea: vmparam.h

Log Message:
bump MAXTSIZ
now clang runs again


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/oea/vmparam.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/powerpc/include/oea/vmparam.h
diff -u src/sys/arch/powerpc/include/oea/vmparam.h:1.22 src/sys/arch/powerpc/include/oea/vmparam.h:1.23
--- src/sys/arch/powerpc/include/oea/vmparam.h:1.22	Sat Sep 11 20:28:05 2021
+++ src/sys/arch/powerpc/include/oea/vmparam.h	Thu Feb  3 17:23:50 2022
@@ -55,7 +55,7 @@
 #endif
 
 #ifndef	MAXTSIZ
-#define	MAXTSIZ		(128*1024*1024)		/* maximum text size */
+#define	MAXTSIZ		(256*1024*1024)		/* maximum text size */
 #endif
 
 #ifndef	MAXDSIZ



CVS commit: src/sys/arch/powerpc/include

2021-11-02 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Tue Nov  2 11:22:03 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: profile.h

Log Message:
fix profiling kernel build


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/powerpc/include/profile.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/powerpc/include/profile.h
diff -u src/sys/arch/powerpc/include/profile.h:1.9 src/sys/arch/powerpc/include/profile.h:1.10
--- src/sys/arch/powerpc/include/profile.h:1.9	Thu Sep 12 15:36:17 2013
+++ src/sys/arch/powerpc/include/profile.h	Tue Nov  2 11:22:03 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: profile.h,v 1.9 2013/09/12 15:36:17 joerg Exp $	*/
+/*	$NetBSD: profile.h,v 1.10 2021/11/02 11:22:03 ryo Exp $	*/
 
 /*-
  * Copyright (c) 2000 Tsubai Masanari.  All rights reserved.
@@ -132,6 +132,7 @@ __asm("	.globl	_mcount			\n" \
 #define MCOUNT_ENTER	do s = wrtee(0); while (/*CONSTCOND*/ 0)
 #define MCOUNT_EXIT	wrtee(s)
 #else
+#include 
 #define MCOUNT_ENTER		\
 	__asm volatile("mfmsr %0" : "=r"(s));			\
 	if ((s & (PSL_IR | PSL_DR)) != (PSL_IR | PSL_DR))	\



CVS commit: src/sys/arch/powerpc/include

2021-11-02 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Tue Nov  2 11:22:03 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: profile.h

Log Message:
fix profiling kernel build


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/arch/powerpc/include/profile.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-11-02 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Tue Nov  2 11:21:24 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: spr.h
src/sys/arch/powerpc/include/ibm4xx: cpu.h

Log Message:
fix build with COPTS=-O0


To generate a diff of this commit:
cvs rdiff -u -r1.53 -r1.54 src/sys/arch/powerpc/include/spr.h
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/powerpc/include/ibm4xx/cpu.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/powerpc/include/spr.h
diff -u src/sys/arch/powerpc/include/spr.h:1.53 src/sys/arch/powerpc/include/spr.h:1.54
--- src/sys/arch/powerpc/include/spr.h:1.53	Mon Jul  6 10:31:23 2020
+++ src/sys/arch/powerpc/include/spr.h	Tue Nov  2 11:21:24 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: spr.h,v 1.53 2020/07/06 10:31:23 rin Exp $	*/
+/*	$NetBSD: spr.h,v 1.54 2021/11/02 11:21:24 ryo Exp $	*/
 
 /*
  * Copyright (c) 2001, The NetBSD Foundation, Inc.
@@ -72,8 +72,8 @@ mfspr64(int reg)
 } )
 #endif /* PPC_OEA64_BRIDGE || _ARCH_PPC64 */
 
-static __inline uint64_t
-mfspr32(int reg)
+static __inline __always_inline uint64_t
+mfspr32(const int reg)
 {
 	register_t val;
 
@@ -81,8 +81,8 @@ mfspr32(int reg)
 	return val;
 }
 
-static __inline void
-mtspr32(int reg, uint32_t val)
+static __inline __always_inline void
+mtspr32(const int reg, uint32_t val)
 {
 
 	__asm volatile("mtspr %0,%1" : : "K"(reg), "r"(val));

Index: src/sys/arch/powerpc/include/ibm4xx/cpu.h
diff -u src/sys/arch/powerpc/include/ibm4xx/cpu.h:1.26 src/sys/arch/powerpc/include/ibm4xx/cpu.h:1.27
--- src/sys/arch/powerpc/include/ibm4xx/cpu.h:1.26	Mon May 31 14:38:56 2021
+++ src/sys/arch/powerpc/include/ibm4xx/cpu.h	Tue Nov  2 11:21:24 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.26 2021/05/31 14:38:56 simonb Exp $	*/
+/*	$NetBSD: cpu.h,v 1.27 2021/11/02 11:21:24 ryo Exp $	*/
 
 /*
  * Copyright 2002 Wasabi Systems, Inc.
@@ -90,14 +90,14 @@ extern void intr_init(void);
  * macros because register address is encoded as immediate
  * operand.
  */
-static __inline void
-mtdcr(int reg, uint32_t val)
+static __inline __always_inline void
+mtdcr(const int reg, uint32_t val)
 {
 	__asm volatile("mtdcr %0,%1" : : "K"(reg), "r"(val));
 }
 
-static __inline uint32_t
-mfdcr(int reg)
+static __inline __always_inline uint32_t
+mfdcr(const int reg)
 {
 	uint32_t val;	
 	



CVS commit: src/sys/arch/powerpc/include

2021-11-02 Thread Ryo Shimizu
Module Name:src
Committed By:   ryo
Date:   Tue Nov  2 11:21:24 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: spr.h
src/sys/arch/powerpc/include/ibm4xx: cpu.h

Log Message:
fix build with COPTS=-O0


To generate a diff of this commit:
cvs rdiff -u -r1.53 -r1.54 src/sys/arch/powerpc/include/spr.h
cvs rdiff -u -r1.26 -r1.27 src/sys/arch/powerpc/include/ibm4xx/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-10-29 Thread Jason R Thorpe
Module Name:src
Committed By:   thorpej
Date:   Fri Oct 29 21:42:02 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
Define __HAVE_STRUCT_SIGCONTEXT regardless of its current visibility.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/include/signal.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/powerpc/include/signal.h
diff -u src/sys/arch/powerpc/include/signal.h:1.25 src/sys/arch/powerpc/include/signal.h:1.26
--- src/sys/arch/powerpc/include/signal.h:1.25	Wed Oct 27 18:20:08 2021
+++ src/sys/arch/powerpc/include/signal.h	Fri Oct 29 21:42:02 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: signal.h,v 1.25 2021/10/27 18:20:08 christos Exp $	*/
+/*	$NetBSD: signal.h,v 1.26 2021/10/29 21:42:02 thorpej Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -37,6 +37,14 @@
 #ifndef _LOCORE
 #include 
 
+/*
+ * This is needed natively for 32-bit, and for 32-bit compatibility only
+ * in the 64-bit environment.
+ */
+#if !defined(__LP64__) || defined(_KERNEL)
+#define	__HAVE_STRUCT_SIGCONTEXT
+#endif
+
 typedef int sig_atomic_t;
 
 #ifndef __LP64__
@@ -56,7 +64,6 @@ struct sigcontext13 {
 /*
  * struct sigcontext introduced in NetBSD 1.4
  */
-#define	__HAVE_STRUCT_SIGCONTEXT
 struct sigcontext {
 	int sc_onstack;			/* saved onstack flag */
 	int __sc_mask13;		/* saved signal mask (old style) */



CVS commit: src/sys/arch/powerpc/include

2021-10-29 Thread Jason R Thorpe
Module Name:src
Committed By:   thorpej
Date:   Fri Oct 29 21:42:02 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
Define __HAVE_STRUCT_SIGCONTEXT regardless of its current visibility.


To generate a diff of this commit:
cvs rdiff -u -r1.25 -r1.26 src/sys/arch/powerpc/include/signal.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-10-27 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 27 18:20:23 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: pcb.h

Log Message:
Need frame.h


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/pcb.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-10-27 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 27 18:20:23 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: pcb.h

Log Message:
Need frame.h


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/pcb.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/powerpc/include/pcb.h
diff -u src/sys/arch/powerpc/include/pcb.h:1.22 src/sys/arch/powerpc/include/pcb.h:1.23
--- src/sys/arch/powerpc/include/pcb.h:1.22	Mon Jan 17 20:02:54 2011
+++ src/sys/arch/powerpc/include/pcb.h	Wed Oct 27 14:20:23 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: pcb.h,v 1.22 2011/01/18 01:02:54 matt Exp $	*/
+/*	$NetBSD: pcb.h,v 1.23 2021/10/27 18:20:23 christos Exp $	*/
 
 /*-
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -34,6 +34,7 @@
 #define	_POWERPC_PCB_H_
 
 #include 
+#include 
 
 struct faultbuf {
 	register_t fb_sp;		/* R1 */



CVS commit: src/sys/arch/powerpc/include

2021-10-27 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 27 18:20:08 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
There is no sigcontext in ppc64


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/include/signal.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/powerpc/include/signal.h
diff -u src/sys/arch/powerpc/include/signal.h:1.24 src/sys/arch/powerpc/include/signal.h:1.25
--- src/sys/arch/powerpc/include/signal.h:1.24	Tue Oct 26 21:11:03 2021
+++ src/sys/arch/powerpc/include/signal.h	Wed Oct 27 14:20:08 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: signal.h,v 1.24 2021/10/27 01:11:03 thorpej Exp $	*/
+/*	$NetBSD: signal.h,v 1.25 2021/10/27 18:20:08 christos Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -39,6 +39,7 @@
 
 typedef int sig_atomic_t;
 
+#ifndef __LP64__
 #if defined(_NETBSD_SOURCE)
 #include 
 #include 
@@ -65,5 +66,6 @@ struct sigcontext {
 #endif /* _LIBC || _KERNEL */
 
 #endif	/* _NETBSD_SOURCE */
+#endif /* __LP64__ */
 #endif	/* !_LOCORE */
 #endif	/* !_POWERPC_SIGNAL_H_ */



CVS commit: src/sys/arch/powerpc/include

2021-10-27 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 27 18:20:08 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
There is no sigcontext in ppc64


To generate a diff of this commit:
cvs rdiff -u -r1.24 -r1.25 src/sys/arch/powerpc/include/signal.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-10-26 Thread Jason R Thorpe
Module Name:src
Committed By:   thorpej
Date:   Wed Oct 27 01:11:03 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
Make sigcontext13 visible only to _KERNEL.  Make sigcontext visible only
to _LIBC and _KERNEL.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/arch/powerpc/include/signal.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/powerpc/include/signal.h
diff -u src/sys/arch/powerpc/include/signal.h:1.23 src/sys/arch/powerpc/include/signal.h:1.24
--- src/sys/arch/powerpc/include/signal.h:1.23	Tue Oct 26 16:16:35 2021
+++ src/sys/arch/powerpc/include/signal.h	Wed Oct 27 01:11:03 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: signal.h,v 1.23 2021/10/26 16:16:35 christos Exp $	*/
+/*	$NetBSD: signal.h,v 1.24 2021/10/27 01:11:03 thorpej Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -43,14 +43,15 @@ typedef int sig_atomic_t;
 #include 
 #include 
 
-#if defined(__LIBC12_SOURCE__) || defined(_KERNEL)
+#if defined(_KERNEL)
 struct sigcontext13 {
 	int sc_onstack;			/* saved onstack flag */
 	int sc_mask;			/* saved signal mask (old style) */
 	struct utrapframe sc_frame;	/* saved registers */
 };
-#endif /* __LIBC12_SOURCE__ || _KERNEL */
+#endif /* _KERNEL */
 
+#if defined(_LIBC) || defined(_KERNEL)
 /*
  * struct sigcontext introduced in NetBSD 1.4
  */
@@ -61,6 +62,7 @@ struct sigcontext {
 	struct utrapframe sc_frame;	/* saved registers */
 	sigset_t sc_mask;		/* saved signal mask (new style) */
 };
+#endif /* _LIBC || _KERNEL */
 
 #endif	/* _NETBSD_SOURCE */
 #endif	/* !_LOCORE */



CVS commit: src/sys/arch/powerpc/include

2021-10-26 Thread Jason R Thorpe
Module Name:src
Committed By:   thorpej
Date:   Wed Oct 27 01:11:03 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: signal.h

Log Message:
Make sigcontext13 visible only to _KERNEL.  Make sigcontext visible only
to _LIBC and _KERNEL.


To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/arch/powerpc/include/signal.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2021-09-13 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Mon Sep 13 11:54:42 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: lock.h

Log Message:
Fix IBM405 errata 77 workaround for __cpu_simple_lock{,_try}();
adjust labels so that dcbt is executed before stwcx. insn.


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/powerpc/include/lock.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/powerpc/include/lock.h
diff -u src/sys/arch/powerpc/include/lock.h:1.15 src/sys/arch/powerpc/include/lock.h:1.16
--- src/sys/arch/powerpc/include/lock.h:1.15	Sun Mar  1 23:23:36 2020
+++ src/sys/arch/powerpc/include/lock.h	Mon Sep 13 11:54:42 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: lock.h,v 1.15 2020/03/01 23:23:36 rin Exp $	*/
+/*	$NetBSD: lock.h,v 1.16 2021/09/13 11:54:42 rin Exp $	*/
 
 /*-
  * Copyright (c) 2000, 2007 The NetBSD Foundation, Inc.
@@ -80,12 +80,12 @@ __cpu_simple_lock(__cpu_simple_lock_t *a
 2:	lwzx	%0,0,%1		\n\
 	cmpwi	%0,%2		\n\
 	beq+	1b		\n\
-	b	2b		\n"
+	b	2b		\n\
+3:\n"
 #ifdef IBM405_ERRATA77
 	"dcbt	0,%1		\n"
 #endif
-"\
-3:	stwcx.	%3,0,%1		\n\
+	"stwcx.	%3,0,%1		\n\
 	bne-	1b		\n\
 	isync			\n\
 \n"
@@ -108,12 +108,12 @@ __cpu_simple_lock_try(__cpu_simple_lock_
 	"dcbt	0,%1		\n"
 #endif
 	"stwcx.	%3,0,%1		\n\
-	bne-	1b		\n"
+	bne-	1b		\n\
+2:\n"
 #ifdef IBM405_ERRATA77
 	"dcbt	0,%4		\n"
 #endif
-"\
-2:	stwcx.	%3,0,%4		\n\
+	"stwcx.	%3,0,%4		\n\
 	isync			\n\
 \n"
 	: "="(old)



CVS commit: src/sys/arch/powerpc/include

2021-09-13 Thread Rin Okuyama
Module Name:src
Committed By:   rin
Date:   Mon Sep 13 11:54:42 UTC 2021

Modified Files:
src/sys/arch/powerpc/include: lock.h

Log Message:
Fix IBM405 errata 77 workaround for __cpu_simple_lock{,_try}();
adjust labels so that dcbt is executed before stwcx. insn.


To generate a diff of this commit:
cvs rdiff -u -r1.15 -r1.16 src/sys/arch/powerpc/include/lock.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



Re: CVS commit: src/sys/arch/powerpc/include/booke

2021-04-21 Thread Rin Okuyama

On 2021/04/18 0:38, Joerg Sonnenberger wrote:

On Sat, Apr 17, 2021 at 01:25:57PM +, Rin Okuyama wrote:

Module Name:src
Committed By:   rin
Date:   Sat Apr 17 13:25:57 UTC 2021

Modified Files:
src/sys/arch/powerpc/include/booke: vmparam.h

Log Message:
Sync MAXfoo params with oea:

   MAXTSIZ: 512MB -> 128MB
   MAXDSIZ: 3.25GB -> 1GB

There should be no particular reasons for having different values.


Is there an architectural reason for MAXTSIZ to be 128MB? Because we
have seen binaries larger than that.

Ah, I just forgot recent discussion on MAXTSIZ.

There's no limitation due to architecture. I've confirmed binary just
works fine, whose text is larger than 256MB segment on oea. It works
on booke and ibm4xx also.

Maybe we can leave MAXTSIZ undefined for powerpc.

Thanks,
rin


Re: CVS commit: src/sys/arch/powerpc/include/booke

2021-04-17 Thread Joerg Sonnenberger
On Sat, Apr 17, 2021 at 01:25:57PM +, Rin Okuyama wrote:
> Module Name:  src
> Committed By: rin
> Date: Sat Apr 17 13:25:57 UTC 2021
> 
> Modified Files:
>   src/sys/arch/powerpc/include/booke: vmparam.h
> 
> Log Message:
> Sync MAXfoo params with oea:
> 
>   MAXTSIZ: 512MB -> 128MB
>   MAXDSIZ: 3.25GB -> 1GB
> 
> There should be no particular reasons for having different values.

Is there an architectural reason for MAXTSIZ to be 128MB? Because we
have seen binaries larger than that.

Joerg


Re: CVS commit: src/sys/arch/powerpc/include

2020-06-27 Thread Rin Okuyama

Perhaps yes, but I'm not sure. How do you mips guys think?

Thanks,
rin

On 2020/06/27 19:08, Jaromír Doleček wrote:

Perhaps we can use a similar technique for mips too? There also the
kernel actually always uses a compile-time fixed page size AFAICS.

Jaromir

Le sam. 27 juin 2020 à 04:51, Rin Okuyama  a écrit :


Module Name:src
Committed By:   rin
Date:   Sat Jun 27 02:51:23 UTC 2020

Modified Files:
 src/sys/arch/powerpc/include: vmparam.h

Log Message:
Restrict {MIN,MAX}_PAGE_SIZE for MODULAR || _MODULE, which makes
non-MODULAR kernel a little bit efficient.

They are also exposed to userland for jemalloc.


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/vmparam.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.


Re: CVS commit: src/sys/arch/powerpc/include

2020-06-27 Thread Jaromír Doleček
Perhaps we can use a similar technique for mips too? There also the
kernel actually always uses a compile-time fixed page size AFAICS.

Jaromir

Le sam. 27 juin 2020 à 04:51, Rin Okuyama  a écrit :
>
> Module Name:src
> Committed By:   rin
> Date:   Sat Jun 27 02:51:23 UTC 2020
>
> Modified Files:
> src/sys/arch/powerpc/include: vmparam.h
>
> Log Message:
> Restrict {MIN,MAX}_PAGE_SIZE for MODULAR || _MODULE, which makes
> non-MODULAR kernel a little bit efficient.
>
> They are also exposed to userland for jemalloc.
>
>
> To generate a diff of this commit:
> cvs rdiff -u -r1.22 -r1.23 src/sys/arch/powerpc/include/vmparam.h
>
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.
>


CVS commit: src/sys/arch/powerpc/include

2019-11-29 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Nov 29 20:05:59 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: lock.h mutex.h

Log Message:
Nix mb_* on powerpc.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/lock.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/powerpc/include/mutex.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2019-11-29 Thread Taylor R Campbell
Module Name:src
Committed By:   riastradh
Date:   Fri Nov 29 20:05:59 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: lock.h mutex.h

Log Message:
Nix mb_* on powerpc.


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/lock.h
cvs rdiff -u -r1.4 -r1.5 src/sys/arch/powerpc/include/mutex.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/powerpc/include/lock.h
diff -u src/sys/arch/powerpc/include/lock.h:1.13 src/sys/arch/powerpc/include/lock.h:1.14
--- src/sys/arch/powerpc/include/lock.h:1.13	Sun Sep 17 00:01:08 2017
+++ src/sys/arch/powerpc/include/lock.h	Fri Nov 29 20:05:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: lock.h,v 1.13 2017/09/17 00:01:08 christos Exp $	*/
+/*	$NetBSD: lock.h,v 1.14 2019/11/29 20:05:59 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2000, 2007 The NetBSD Foundation, Inc.
@@ -120,22 +120,4 @@ __cpu_simple_unlock(__cpu_simple_lock_t 
 	*alp = __SIMPLELOCK_UNLOCKED;
 }
 
-static __inline void
-mb_read(void)
-{
-	__asm volatile ("isync" ::: "memory");
-}
-
-static __inline void
-mb_write(void)
-{
-	__asm volatile ("sync" ::: "memory");
-}
-
-static __inline void
-mb_memory(void)
-{
-	__asm volatile ("sync" ::: "memory");
-}
-
 #endif /* _POWERPC_LOCK_H_ */

Index: src/sys/arch/powerpc/include/mutex.h
diff -u src/sys/arch/powerpc/include/mutex.h:1.4 src/sys/arch/powerpc/include/mutex.h:1.5
--- src/sys/arch/powerpc/include/mutex.h:1.4	Mon Apr 28 20:23:32 2008
+++ src/sys/arch/powerpc/include/mutex.h	Fri Nov 29 20:05:59 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: mutex.h,v 1.4 2008/04/28 20:23:32 martin Exp $	*/
+/*	$NetBSD: mutex.h,v 1.5 2019/11/29 20:05:59 riastradh Exp $	*/
 
 /*-
  * Copyright (c) 2002, 2007 The NetBSD Foundation, Inc.
@@ -61,8 +61,8 @@ struct kmutex {
 #define	__HAVE_SIMPLE_MUTEXES		1
 #define	__HAVE_MUTEX_STUBS		1
 
-#define	MUTEX_RECEIVE(mtx)		mb_read()
-#define	MUTEX_GIVE(mtx)			mb_memory()
+#define	MUTEX_RECEIVE(mtx)		__asm __volatile("isync" ::: "memory")
+#define	MUTEX_GIVE(mtx)			__asm __volatile("sync" ::: "memory")
 
 #define	MUTEX_CAS(p, o, n)		_lock_cas((p), (o), (n))
 



CVS commit: src/sys/arch/powerpc/include

2019-11-29 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Nov 29 12:04:32 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: ptrace.h

Log Message:
Add illegal asm and breakpoint


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/powerpc/include/ptrace.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2019-11-29 Thread Martin Husemann
Module Name:src
Committed By:   martin
Date:   Fri Nov 29 12:04:32 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: ptrace.h

Log Message:
Add illegal asm and breakpoint


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/powerpc/include/ptrace.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/powerpc/include/ptrace.h
diff -u src/sys/arch/powerpc/include/ptrace.h:1.14 src/sys/arch/powerpc/include/ptrace.h:1.15
--- src/sys/arch/powerpc/include/ptrace.h:1.14	Tue Jun 18 21:18:12 2019
+++ src/sys/arch/powerpc/include/ptrace.h	Fri Nov 29 12:04:32 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: ptrace.h,v 1.14 2019/06/18 21:18:12 kamil Exp $	*/
+/*	$NetBSD: ptrace.h,v 1.15 2019/11/29 12:04:32 martin Exp $	*/
 
 #ifndef _POWERPC_PTRACE_H
 #define	_POWERPC_PTRACE_H
@@ -71,4 +71,10 @@ int procfs_machdep_validvecregs(struct l
 #endif /* ALTIVEC || PPC_HAVE_SPE */
 #endif /* _KERNEL */
 
+#define PTRACE_ILLEGAL_ASM	__asm __volatile (".long 0" : : : "memory")
+
+#define PTRACE_BREAKPOINT	((const uint8_t[]) { 0x7f, 0xe0, 0x00, 0x08 })
+#define PTRACE_BREAKPOINT_ASM	__asm __volatile("trap")
+#define PTRACE_BREAKPOINT_SIZE	4
+
 #endif /* _POWERPC_PTRACE_H */



CVS commit: src/sys/arch/powerpc/include

2019-10-29 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 30 02:44:29 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: fenv.h

Log Message:
do the ignore builtin dance for gcc-8


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/powerpc/include/fenv.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2019-10-29 Thread Christos Zoulas
Module Name:src
Committed By:   christos
Date:   Wed Oct 30 02:44:29 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: fenv.h

Log Message:
do the ignore builtin dance for gcc-8


To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/powerpc/include/fenv.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/powerpc/include/fenv.h
diff -u src/sys/arch/powerpc/include/fenv.h:1.5 src/sys/arch/powerpc/include/fenv.h:1.6
--- src/sys/arch/powerpc/include/fenv.h:1.5	Thu Apr 19 17:50:07 2018
+++ src/sys/arch/powerpc/include/fenv.h	Tue Oct 29 22:44:29 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: fenv.h,v 1.5 2018/04/19 21:50:07 christos Exp $	*/
+/*	$NetBSD: fenv.h,v 1.6 2019/10/30 02:44:29 christos Exp $	*/
 
 /*-
  * Copyright (c) 2004-2005 David Schultz 
@@ -143,6 +143,11 @@ union __fpscr {
 	} __bits;
 };
 
+#if __GNUC_PREREQ__(8, 0)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wshadow"
+#endif
+
 __fenv_static __inline int
 feclearexcept(int __excepts)
 {
@@ -273,6 +278,10 @@ feupdateenv(const fenv_t *__envp)
 	return (0);
 }
 
+#if __GNUC_PREREQ__(8, 0)
+#pragma GCC diagnostic pop
+#endif
+
 #if defined(_NETBSD_SOURCE) || defined(_GNU_SOURCE)
 
 __fenv_static __inline int



CVS commit: src/sys/arch/powerpc/include

2019-10-24 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Thu Oct 24 23:03:35 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: intr.h

Log Message:
bump NIRQ to 256 since we're going to use vectors above 128


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/intr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2019-10-24 Thread Michael Lorenz
Module Name:src
Committed By:   macallan
Date:   Thu Oct 24 23:03:35 UTC 2019

Modified Files:
src/sys/arch/powerpc/include: intr.h

Log Message:
bump NIRQ to 256 since we're going to use vectors above 128


To generate a diff of this commit:
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/powerpc/include/intr.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/powerpc/include/intr.h
diff -u src/sys/arch/powerpc/include/intr.h:1.13 src/sys/arch/powerpc/include/intr.h:1.14
--- src/sys/arch/powerpc/include/intr.h:1.13	Thu Apr 19 21:50:07 2018
+++ src/sys/arch/powerpc/include/intr.h	Thu Oct 24 23:03:35 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: intr.h,v 1.13 2018/04/19 21:50:07 christos Exp $ */
+/*	$NetBSD: intr.h,v 1.14 2019/10/24 23:03:35 macallan Exp $ */
 
 /*-
  * Copyright (c) 2007 Michael Lorenz
@@ -28,7 +28,7 @@
 
 #ifndef _LOCORE
 #include 
-__KERNEL_RCSID(0, "$NetBSD: intr.h,v 1.13 2018/04/19 21:50:07 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: intr.h,v 1.14 2019/10/24 23:03:35 macallan Exp $");
 #endif
 
 #ifndef _POWERPC_INTR_MACHDEP_H_
@@ -105,7 +105,7 @@ extern imask_t imask[];
 
 #define NVIRQ		(sizeof(imask_t)*8)	/* 32 virtual IRQs */
 #ifndef NIRQ
-#define NIRQ		128	/* up to 128 HW IRQs */
+#define NIRQ		256	/* up to 256 HW IRQs */
 #endif
 
 #define HWIRQ_MAX   (NVIRQ - 1)



Re: CVS commit: src/sys/arch/powerpc/include

2012-02-20 Thread Joerg Sonnenberger
On Tue, Feb 21, 2012 at 02:19:01AM +, Matt Thomas wrote:
 Module Name:  src
 Committed By: matt
 Date: Tue Feb 21 02:19:01 UTC 2012
 
 Modified Files:
   src/sys/arch/powerpc/include: cdefs.h
 
 Log Message:
 Restore back to double alignment.

For reference: __ALIGNBYTES is used for two purposes. The first purpose
is stack alignment, which is what was intended here. The second purpose
is the alignment for CMSG_SPACE and friends, which was not intended. The
latter is part of the system ABI.

Joerg


CVS commit: src/sys/arch/powerpc/include

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:36:41 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: asm.h

Log Message:
Put ASM RCSIDs into .ident


To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/powerpc/include/asm.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/powerpc/include/asm.h
diff -u src/sys/arch/powerpc/include/asm.h:1.28 src/sys/arch/powerpc/include/asm.h:1.29
--- src/sys/arch/powerpc/include/asm.h:1.28	Thu Dec 10 05:10:03 2009
+++ src/sys/arch/powerpc/include/asm.h	Tue Mar  9 22:36:41 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: asm.h,v 1.28 2009/12/10 05:10:03 rmind Exp $	*/
+/*	$NetBSD: asm.h,v 1.29 2010/03/09 22:36:41 matt Exp $	*/
 
 /*
  * Copyright (C) 1995, 1996 Wolfgang Solfrank.
@@ -123,7 +123,7 @@
 
 #define	ASMSTR		.asciz
 
-#define RCSID(x)	.text; .asciz x
+#define RCSID(x)	.pushsection .ident; .asciz x; .popsection
 
 #ifdef __ELF__
 #define	WEAK_ALIAS(alias,sym)		\



CVS commit: src/sys/arch/powerpc/include/booke

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:39:32 UTC 2010

Added Files:
src/sys/arch/powerpc/include/booke: Makefile booke_intr.h pte.h spr.h
trap.h vmparam.h

Log Message:
Add initial versions of these for BookE.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/sys/arch/powerpc/include/booke/Makefile \
src/sys/arch/powerpc/include/booke/booke_intr.h \
src/sys/arch/powerpc/include/booke/pte.h \
src/sys/arch/powerpc/include/booke/spr.h \
src/sys/arch/powerpc/include/booke/trap.h \
src/sys/arch/powerpc/include/booke/vmparam.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Added files:

Index: src/sys/arch/powerpc/include/booke/Makefile
diff -u /dev/null src/sys/arch/powerpc/include/booke/Makefile:1.1
--- /dev/null	Tue Mar  9 22:39:32 2010
+++ src/sys/arch/powerpc/include/booke/Makefile	Tue Mar  9 22:39:32 2010
@@ -0,0 +1,11 @@
+#	$NetBSD: Makefile,v 1.1 2010/03/09 22:39:32 matt Exp $
+
+INCSDIR= /usr/include/powerpc/booke
+
+INCS=	booke_intr.h \
+	pmap.h pte.h \
+	spr.h \
+	trap.h \
+	vmparam.h
+
+.include bsd.kinc.mk
Index: src/sys/arch/powerpc/include/booke/booke_intr.h
diff -u /dev/null src/sys/arch/powerpc/include/booke/booke_intr.h:1.1
--- /dev/null	Tue Mar  9 22:39:32 2010
+++ src/sys/arch/powerpc/include/booke/booke_intr.h	Tue Mar  9 22:39:32 2010
@@ -0,0 +1,95 @@
+/*	$NetBSD: booke_intr.h,v 1.1 2010/03/09 22:39:32 matt Exp $	*/
+
+/*-
+ * Copyright (c) 1998, 2007 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to The NetBSD Foundation
+ * by Charles M. Hannum.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *notice, this list of conditions and the following disclaimer in the
+ *documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ * POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef _BOOKE_INTR_H_
+#define _BOOKE_INTR_H_
+
+/* Interrupt priority `levels'. */
+#define	IPL_NONE	0	/* nothing */
+#define	IPL_SOFTCLOCK	1	/* software clock interrupt */
+#define	IPL_SOFTBIO	2	/* software block i/o interrupt */
+#define	IPL_SOFTNET	3	/* software network interrupt */
+#define	IPL_SOFTSERIAL	4	/* software serial interrupt */
+#define	IPL_VM		5	/* memory allocation */
+#define	IPL_SCHED	6	/* clock */
+#define	IPL_HIGH	7	/* everything */
+#define	NIPL		8
+
+/* Interrupt sharing types. */
+#define	IST_NONE	0	/* none */
+#define	IST_PULSE	1	/* pulsed */
+#define	IST_EDGE	2	/* edge-triggered */
+#define	IST_LEVEL	3	/* level-triggered */
+
+#ifndef _LOCORE
+
+#define	CLKF_BASEPRI(frame)	((frame)-cf_ipl == IPL_NONE)
+
+void 	*intr_establish(int, int, int, int (*)(void *), void *);
+void 	intr_disestablish(void *);
+void 	intr_init(void);
+void 	ext_intr(void); 			/* for machdep */
+int 	splraise(int);
+int 	spllower(int);
+void 	splx(int);
+void 	softintr(int);
+
+extern volatile u_int 		imask[NIPL];
+extern const int 		mask_clock; 		/* for clock.c */
+extern const int 		mask_statclock; 	/* for clock.c */
+
+#define	spllowersoftclock() 	spllower(imask[IPL_SOFTCLOCK])
+
+typedef int ipl_t;
+typedef struct {
+	ipl_t _ipl;
+} ipl_cookie_t;
+
+static inline ipl_cookie_t
+makeiplcookie(ipl_t ipl)
+{
+
+	return (ipl_cookie_t){._ipl = ipl};
+}
+
+static inline int
+splraiseipl(ipl_cookie_t icookie)
+{
+
+	return splraise(imask[icookie._ipl]);
+}
+
+#include sys/spl.h
+
+#define	spl0()			spllower(0)
+
+#endif /* !_LOCORE */
+#endif /* !_BOOKE_INTR_H_ */
Index: src/sys/arch/powerpc/include/booke/pte.h
diff -u /dev/null src/sys/arch/powerpc/include/booke/pte.h:1.1
--- /dev/null	Tue Mar  9 22:39:32 2010
+++ src/sys/arch/powerpc/include/booke/pte.h	Tue Mar  9 22:39:32 2010
@@ -0,0 +1,60 @@
+/*-
+ * Copyright (c) 2010 The NetBSD Foundation, Inc.
+ * All rights reserved.
+ *
+ * This code is derived from software contributed to 

CVS commit: src/sys/arch/powerpc/include

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:40:06 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: pmap.h

Log Message:
Include BookE version of pmap.h


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/sys/arch/powerpc/include/pmap.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:40:06 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: pmap.h

Log Message:
Include BookE version of pmap.h


To generate a diff of this commit:
cvs rdiff -u -r1.34 -r1.35 src/sys/arch/powerpc/include/pmap.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/powerpc/include/pmap.h
diff -u src/sys/arch/powerpc/include/pmap.h:1.34 src/sys/arch/powerpc/include/pmap.h:1.35
--- src/sys/arch/powerpc/include/pmap.h:1.34	Tue Dec  9 20:45:45 2008
+++ src/sys/arch/powerpc/include/pmap.h	Tue Mar  9 22:40:06 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: pmap.h,v 1.34 2008/12/09 20:45:45 pooka Exp $	*/
+/*	$NetBSD: pmap.h,v 1.35 2010/03/09 22:40:06 matt Exp $	*/
 
 #ifdef _KERNEL_OPT
 #include opt_ppcarch.h
@@ -6,6 +6,8 @@
 
 #ifdef PPC_IBM4XX
 #include powerpc/ibm4xx/pmap.h
+#elif defined(PPC_BOOKE)
+#include powerpc/booke/pmap.h
 #elif defined(PPC_OEA) || defined (PPC_OEA64) || defined (PPC_OEA64_BRIDGE)
 #include powerpc/oea/pmap.h
 #else



CVS commit: src/sys/arch/powerpc/include

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:41:03 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
Add BookE modifications to cpu_info


To generate a diff of this commit:
cvs rdiff -u -r1.67 -r1.68 src/sys/arch/powerpc/include/cpu.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/powerpc/include/cpu.h
diff -u src/sys/arch/powerpc/include/cpu.h:1.67 src/sys/arch/powerpc/include/cpu.h:1.68
--- src/sys/arch/powerpc/include/cpu.h:1.67	Sat Oct 24 20:03:56 2009
+++ src/sys/arch/powerpc/include/cpu.h	Tue Mar  9 22:41:03 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.67 2009/10/24 20:03:56 rmind Exp $	*/
+/*	$NetBSD: cpu.h,v 1.68 2010/03/09 22:41:03 matt Exp $	*/
 
 /*
  * Copyright (C) 1999 Wolfgang Solfrank.
@@ -78,11 +78,14 @@
 	int ci_intrdepth;
 	int ci_mtx_oldspl;
 	int ci_mtx_count;
+#ifndef PPC_BOOKE
 	char *ci_intstk;
+#endif
 #define	CPUSAVE_LEN	8
 	register_t ci_tempsave[CPUSAVE_LEN];
 	register_t ci_ddbsave[CPUSAVE_LEN];
 	register_t ci_ipkdbsave[CPUSAVE_LEN];
+#ifndef PPC_BOOKE
 #define	CPUSAVE_R28	0		/* where r28 gets saved */
 #define	CPUSAVE_R29	1		/* where r29 gets saved */
 #define	CPUSAVE_R30	2		/* where r30 gets saved */
@@ -93,6 +96,18 @@
 #define	CPUSAVE_SRR1	7		/* where SRR1 gets saved */
 #define	DISISAVE_LEN	4
 	register_t ci_disisave[DISISAVE_LEN];
+#else
+#define	CPUSAVE_R26	0		/* where r26 gets saved */
+#define	CPUSAVE_R27	1		/* where r27 gets saved */
+#define	CPUSAVE_R28	2		/* where r28 gets saved */
+#define	CPUSAVE_R29	3		/* where r29 gets saved */
+#define	CPUSAVE_R30	4		/* where r30 gets saved */
+#define	CPUSAVE_R31	5		/* where r31 gets saved */
+	register_t ci_critsave[CPUSAVE_LEN];
+	register_t ci_mchksave[CPUSAVE_LEN];
+	struct pmap_segtab *ci_pmap_kern_segtab;
+	struct pmap_segtab *ci_pmap_user_segtab;
+#endif
 	struct cache_info ci_ci;		
 	void *ci_sysmon_cookie;
 	void (*ci_idlespin)(void);



CVS commit: src/sys/arch/powerpc/include

2010-03-09 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Tue Mar  9 22:41:03 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: cpu.h

Log Message:
Add BookE modifications to cpu_info


To generate a diff of this commit:
cvs rdiff -u -r1.67 -r1.68 src/sys/arch/powerpc/include/cpu.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/powerpc/include

2010-02-25 Thread Matt Thomas
Module Name:src
Committed By:   matt
Date:   Thu Feb 25 23:30:05 UTC 2010

Modified Files:
src/sys/arch/powerpc/include: spr.h
src/sys/arch/powerpc/include/ibm4xx: Makefile
src/sys/arch/powerpc/include/oea: Makefile
Added Files:
src/sys/arch/powerpc/include/ibm4xx: spr.h
src/sys/arch/powerpc/include/oea: spr.h

Log Message:
Split powerpc/spr.h into a common powerpc/spr.h and powerpc/XXX/spr.h
where XXX is ibm4xx or oea.


To generate a diff of this commit:
cvs rdiff -u -r1.44 -r1.45 src/sys/arch/powerpc/include/spr.h
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/powerpc/include/ibm4xx/Makefile
cvs rdiff -u -r0 -r1.1 src/sys/arch/powerpc/include/ibm4xx/spr.h
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/powerpc/include/oea/Makefile
cvs rdiff -u -r0 -r1.1 src/sys/arch/powerpc/include/oea/spr.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/powerpc/include/spr.h
diff -u src/sys/arch/powerpc/include/spr.h:1.44 src/sys/arch/powerpc/include/spr.h:1.45
--- src/sys/arch/powerpc/include/spr.h:1.44	Sat Feb 23 19:54:54 2008
+++ src/sys/arch/powerpc/include/spr.h	Thu Feb 25 23:30:04 2010
@@ -1,4 +1,4 @@
-/*	$NetBSD: spr.h,v 1.44 2008/02/23 19:54:54 matt Exp $	*/
+/*	$NetBSD: spr.h,v 1.45 2010/02/25 23:30:04 matt Exp $	*/
 
 #ifndef _POWERPC_SPR_H_
 #define	_POWERPC_SPR_H_
@@ -17,524 +17,31 @@
 /*
  * Special Purpose Register declarations.
  *
- * The first column in the comments indicates which PowerPC
- * architectures the SPR is valid on - 4 for 4xx series,
- * 6 for 6xx/7xx series and 8 for 8xx and 8xxx series.
+ * The first column in the comments indicates which PowerPC architectures the
+ * SPR is valid on - E for BookE series, 4 for 4xx series,
+ * 6 for 6xx/7xx series and 8 for 8xx and 8xxx (but not 85xx) series.
  */
 
-#define	SPR_MQ			0x000	/* .6. 601 MQ register */
-#define	SPR_XER			0x001	/* 468 Fixed Point Exception Register */
-#define	SPR_RTCU_R		0x004	/* .6. 601 RTC Upper - Read */
-#define	SPR_RTCL_R		0x005	/* .6. 601 RTC Lower - Read */
-#define	SPR_LR			0x008	/* 468 Link Register */
-#define	SPR_CTR			0x009	/* 468 Count Register */
-#define	SPR_DSISR		0x012	/* .68 DSI exception source */
-#define	  DSISR_DIRECT		  0x8000 /* Direct-store error exception */
-#define	  DSISR_NOTFOUND	  0x4000 /* Translation not found */
-#define	  DSISR_PROTECT		  0x0800 /* Memory access not permitted */
-#define	  DSISR_INVRX		  0x0400 /* Reserve-indexed insn direct-store access */
-#define	  DSISR_STORE		  0x0200 /* Store operation */
-#define	  DSISR_DABR		  0x0040 /* DABR match */
-#define	  DSISR_SEGMENT		  0x0020 /* XXX; not in 6xx PEM */
-#define	  DSISR_EAR		  0x0010 /* eciwx/ecowx  EAR[E] == 0 */
-#define	SPR_DAR			0x013	/* .68 Data Address Register */
-#define	SPR_RTCU_W		0x014	/* .6. 601 RTC Upper - Write */
-#define	SPR_RTCL_W		0x015	/* .6. 601 RTC Lower - Write */
-#define	SPR_DEC			0x016	/* .68 DECrementer register */
-#define	SPR_SDR1		0x019	/* .68 Page table base address register */
-#define	SPR_SRR0		0x01a	/* 468 Save/Restore Register 0 */
-#define	SPR_SRR1		0x01b	/* 468 Save/Restore Register 1 */
-#define	SPR_44XPID		0x030	/* 4.. 440 Process ID */
-#define SPR_EIE			0x050	/* ..8 Exception Interrupt ??? */
-#define SPR_EID			0x051	/* ..8 Exception Interrupt ??? */
-#define SPR_NRI			0x052	/* ..8 Exception Interrupt ??? */
-#define	SPR_USPRG0		0x100	/* 4.. User SPR General 0 */
-#define	SPR_VRSAVE		0x100	/* .6. AltiVec VRSAVE */
-#define	SPR_SPRG0		0x110	/* 468 SPR General 0 */
-#define	SPR_SPRG1		0x111	/* 468 SPR General 1 */
-#define	SPR_SPRG2		0x112	/* 468 SPR General 2 */
-#define	SPR_SPRG3		0x113	/* 468 SPR General 3 */
-#define	SPR_SPRG4		0x114	/* 4.. SPR General 4 */
-#define	SPR_SPRG5		0x115	/* 4.. SPR General 5 */
-#define	SPR_SPRG6		0x116	/* 4.. SPR General 6 */
-#define	SPR_SPRG7		0x117	/* 4.. SPR General 7 */
-#define	SPR_ASR			0x118	/* ... Address Space Register (PPC64) */
-#define	SPR_EAR			0x11a	/* .68 External Access Register */
-#define	SPR_TBL			0x11c	/* 468 Time Base Lower */
-#define	SPR_TBU			0x11d	/* 468 Time Base Upper */
-#define	SPR_PVR			0x11f	/* 468 Processor Version Register */
-#define	  MPC601		  0x0001
-#define	  MPC603		  0x0003
-#define	  MPC604		  0x0004
-#define	  MPC602		  0x0005
-#define	  MPC603e		  0x0006
-#define	  MPC603ev		  0x0007
-#define	  MPC750		  0x0008
-#define	  MPC604e		  0x0009
-#define	  MPC604ev		  0x000a
-#define	  MPC7400		  0x000c
-#define	  MPC620		  0x0014
-#define	  IBM403		  0x0020
-#define	  IBM401A1		  0x0021
-#define	  IBM401B2		  0x0022
-#define	  IBM401C2		  0x0023
-#define	  IBM401D2		  0x0024
-#define	  IBM401E2		  0x0025
-#define	  IBM401F2		  0x0026
-#define	  IBM401G2		  0x0027
-#define   IBMRS64II		  0x0033
-#define   IBMRS64IIIp		  0x0034
-#define   IBMPOWER4		  0x0035
-#define   IBMRS64IIIi		  0x0036
-#define   IBMRS64IV		  0x0037
-#define   IBMPOWER4II