kernel
This commit is contained in:
parent
b59f84ee36
commit
cfab1d3ce7
83468 changed files with 37938688 additions and 0 deletions
3
linux-6.8.1/arch/parisc/include/uapi/asm/Kbuild
Normal file
3
linux-6.8.1/arch/parisc/include/uapi/asm/Kbuild
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
generated-y += unistd_32.h
|
||||
generated-y += unistd_64.h
|
||||
8
linux-6.8.1/arch/parisc/include/uapi/asm/auxvec.h
Normal file
8
linux-6.8.1/arch/parisc/include/uapi/asm/auxvec.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_PARISC_AUXVEC_H
|
||||
#define _UAPI_PARISC_AUXVEC_H
|
||||
|
||||
/* The vDSO location. */
|
||||
#define AT_SYSINFO_EHDR 33
|
||||
|
||||
#endif /* _UAPI_PARISC_AUXVEC_H */
|
||||
13
linux-6.8.1/arch/parisc/include/uapi/asm/bitsperlong.h
Normal file
13
linux-6.8.1/arch/parisc/include/uapi/asm/bitsperlong.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __ASM_PARISC_BITSPERLONG_H
|
||||
#define __ASM_PARISC_BITSPERLONG_H
|
||||
|
||||
#if defined(__LP64__)
|
||||
#define __BITS_PER_LONG 64
|
||||
#else
|
||||
#define __BITS_PER_LONG 32
|
||||
#endif
|
||||
|
||||
#include <asm-generic/bitsperlong.h>
|
||||
|
||||
#endif /* __ASM_PARISC_BITSPERLONG_H */
|
||||
7
linux-6.8.1/arch/parisc/include/uapi/asm/byteorder.h
Normal file
7
linux-6.8.1/arch/parisc/include/uapi/asm/byteorder.h
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_BYTEORDER_H
|
||||
#define _PARISC_BYTEORDER_H
|
||||
|
||||
#include <linux/byteorder/big_endian.h>
|
||||
|
||||
#endif /* _PARISC_BYTEORDER_H */
|
||||
12
linux-6.8.1/arch/parisc/include/uapi/asm/cachectl.h
Normal file
12
linux-6.8.1/arch/parisc/include/uapi/asm/cachectl.h
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _ASM_CACHECTL
|
||||
#define _ASM_CACHECTL
|
||||
|
||||
/*
|
||||
* Options for cacheflush system call
|
||||
*/
|
||||
#define ICACHE (1<<0) /* flush instruction cache */
|
||||
#define DCACHE (1<<1) /* writeback and flush data cache */
|
||||
#define BCACHE (ICACHE|DCACHE) /* flush both caches */
|
||||
|
||||
#endif /* _ASM_CACHECTL */
|
||||
125
linux-6.8.1/arch/parisc/include/uapi/asm/errno.h
Normal file
125
linux-6.8.1/arch/parisc/include/uapi/asm/errno.h
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_ERRNO_H
|
||||
#define _PARISC_ERRNO_H
|
||||
|
||||
#include <asm-generic/errno-base.h>
|
||||
|
||||
#define ENOMSG 35 /* No message of desired type */
|
||||
#define EIDRM 36 /* Identifier removed */
|
||||
#define ECHRNG 37 /* Channel number out of range */
|
||||
#define EL2NSYNC 38 /* Level 2 not synchronized */
|
||||
#define EL3HLT 39 /* Level 3 halted */
|
||||
#define EL3RST 40 /* Level 3 reset */
|
||||
#define ELNRNG 41 /* Link number out of range */
|
||||
#define EUNATCH 42 /* Protocol driver not attached */
|
||||
#define ENOCSI 43 /* No CSI structure available */
|
||||
#define EL2HLT 44 /* Level 2 halted */
|
||||
#define EDEADLK 45 /* Resource deadlock would occur */
|
||||
#define EDEADLOCK EDEADLK
|
||||
#define ENOLCK 46 /* No record locks available */
|
||||
#define EILSEQ 47 /* Illegal byte sequence */
|
||||
|
||||
#define ENONET 50 /* Machine is not on the network */
|
||||
#define ENODATA 51 /* No data available */
|
||||
#define ETIME 52 /* Timer expired */
|
||||
#define ENOSR 53 /* Out of streams resources */
|
||||
#define ENOSTR 54 /* Device not a stream */
|
||||
#define ENOPKG 55 /* Package not installed */
|
||||
|
||||
#define ENOLINK 57 /* Link has been severed */
|
||||
#define EADV 58 /* Advertise error */
|
||||
#define ESRMNT 59 /* Srmount error */
|
||||
#define ECOMM 60 /* Communication error on send */
|
||||
#define EPROTO 61 /* Protocol error */
|
||||
|
||||
#define EMULTIHOP 64 /* Multihop attempted */
|
||||
|
||||
#define EDOTDOT 66 /* RFS specific error */
|
||||
#define EBADMSG 67 /* Not a data message */
|
||||
#define EUSERS 68 /* Too many users */
|
||||
#define EDQUOT 69 /* Quota exceeded */
|
||||
#define ESTALE 70 /* Stale file handle */
|
||||
#define EREMOTE 71 /* Object is remote */
|
||||
#define EOVERFLOW 72 /* Value too large for defined data type */
|
||||
|
||||
/* these errnos are defined by Linux but not HPUX. */
|
||||
|
||||
#define EBADE 160 /* Invalid exchange */
|
||||
#define EBADR 161 /* Invalid request descriptor */
|
||||
#define EXFULL 162 /* Exchange full */
|
||||
#define ENOANO 163 /* No anode */
|
||||
#define EBADRQC 164 /* Invalid request code */
|
||||
#define EBADSLT 165 /* Invalid slot */
|
||||
#define EBFONT 166 /* Bad font file format */
|
||||
#define ENOTUNIQ 167 /* Name not unique on network */
|
||||
#define EBADFD 168 /* File descriptor in bad state */
|
||||
#define EREMCHG 169 /* Remote address changed */
|
||||
#define ELIBACC 170 /* Can not access a needed shared library */
|
||||
#define ELIBBAD 171 /* Accessing a corrupted shared library */
|
||||
#define ELIBSCN 172 /* .lib section in a.out corrupted */
|
||||
#define ELIBMAX 173 /* Attempting to link in too many shared libraries */
|
||||
#define ELIBEXEC 174 /* Cannot exec a shared library directly */
|
||||
#define ERESTART 175 /* Interrupted system call should be restarted */
|
||||
#define ESTRPIPE 176 /* Streams pipe error */
|
||||
#define EUCLEAN 177 /* Structure needs cleaning */
|
||||
#define ENOTNAM 178 /* Not a XENIX named type file */
|
||||
#define ENAVAIL 179 /* No XENIX semaphores available */
|
||||
#define EISNAM 180 /* Is a named type file */
|
||||
#define EREMOTEIO 181 /* Remote I/O error */
|
||||
#define ENOMEDIUM 182 /* No medium found */
|
||||
#define EMEDIUMTYPE 183 /* Wrong medium type */
|
||||
#define ENOKEY 184 /* Required key not available */
|
||||
#define EKEYEXPIRED 185 /* Key has expired */
|
||||
#define EKEYREVOKED 186 /* Key has been revoked */
|
||||
#define EKEYREJECTED 187 /* Key was rejected by service */
|
||||
|
||||
/* We now return you to your regularly scheduled HPUX. */
|
||||
|
||||
#define ENOTSOCK 216 /* Socket operation on non-socket */
|
||||
#define EDESTADDRREQ 217 /* Destination address required */
|
||||
#define EMSGSIZE 218 /* Message too long */
|
||||
#define EPROTOTYPE 219 /* Protocol wrong type for socket */
|
||||
#define ENOPROTOOPT 220 /* Protocol not available */
|
||||
#define EPROTONOSUPPORT 221 /* Protocol not supported */
|
||||
#define ESOCKTNOSUPPORT 222 /* Socket type not supported */
|
||||
#define EOPNOTSUPP 223 /* Operation not supported on transport endpoint */
|
||||
#define EPFNOSUPPORT 224 /* Protocol family not supported */
|
||||
#define EAFNOSUPPORT 225 /* Address family not supported by protocol */
|
||||
#define EADDRINUSE 226 /* Address already in use */
|
||||
#define EADDRNOTAVAIL 227 /* Cannot assign requested address */
|
||||
#define ENETDOWN 228 /* Network is down */
|
||||
#define ENETUNREACH 229 /* Network is unreachable */
|
||||
#define ENETRESET 230 /* Network dropped connection because of reset */
|
||||
#define ECONNABORTED 231 /* Software caused connection abort */
|
||||
#define ECONNRESET 232 /* Connection reset by peer */
|
||||
#define ENOBUFS 233 /* No buffer space available */
|
||||
#define EISCONN 234 /* Transport endpoint is already connected */
|
||||
#define ENOTCONN 235 /* Transport endpoint is not connected */
|
||||
#define ESHUTDOWN 236 /* Cannot send after transport endpoint shutdown */
|
||||
#define ETOOMANYREFS 237 /* Too many references: cannot splice */
|
||||
#define ETIMEDOUT 238 /* Connection timed out */
|
||||
#define ECONNREFUSED 239 /* Connection refused */
|
||||
#define EREFUSED ECONNREFUSED /* for HP's NFS apparently */
|
||||
#define EHOSTDOWN 241 /* Host is down */
|
||||
#define EHOSTUNREACH 242 /* No route to host */
|
||||
|
||||
#define EALREADY 244 /* Operation already in progress */
|
||||
#define EINPROGRESS 245 /* Operation now in progress */
|
||||
#define EWOULDBLOCK EAGAIN /* Operation would block (Not HPUX compliant) */
|
||||
#define ENOTEMPTY 247 /* Directory not empty */
|
||||
#define ENAMETOOLONG 248 /* File name too long */
|
||||
#define ELOOP 249 /* Too many symbolic links encountered */
|
||||
#define ENOSYS 251 /* Function not implemented */
|
||||
|
||||
#define ECANCELLED 253 /* aio request was canceled before complete (POSIX.4 / HPUX) */
|
||||
#define ECANCELED ECANCELLED /* SuSv3 and Solaris wants one 'L' */
|
||||
|
||||
/* for robust mutexes */
|
||||
#define EOWNERDEAD 254 /* Owner died */
|
||||
#define ENOTRECOVERABLE 255 /* State not recoverable */
|
||||
|
||||
#define ERFKILL 256 /* Operation not possible due to RF-kill */
|
||||
|
||||
#define EHWPOISON 257 /* Memory page has hardware error */
|
||||
|
||||
#endif
|
||||
39
linux-6.8.1/arch/parisc/include/uapi/asm/fcntl.h
Normal file
39
linux-6.8.1/arch/parisc/include/uapi/asm/fcntl.h
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_FCNTL_H
|
||||
#define _PARISC_FCNTL_H
|
||||
|
||||
#define O_APPEND 000000010
|
||||
#define O_CREAT 000000400 /* not fcntl */
|
||||
#define O_EXCL 000002000 /* not fcntl */
|
||||
#define O_LARGEFILE 000004000
|
||||
#define __O_SYNC 000100000
|
||||
#define O_SYNC (__O_SYNC|O_DSYNC)
|
||||
#define O_NONBLOCK 000200000
|
||||
#define O_NOCTTY 000400000 /* not fcntl */
|
||||
#define O_DSYNC 001000000
|
||||
#define O_NOATIME 004000000
|
||||
#define O_CLOEXEC 010000000 /* set close_on_exec */
|
||||
|
||||
#define O_DIRECTORY 000010000 /* must be a directory */
|
||||
#define O_NOFOLLOW 000000200 /* don't follow links */
|
||||
|
||||
#define O_PATH 020000000
|
||||
#define __O_TMPFILE 040000000
|
||||
|
||||
#define F_GETLK64 8
|
||||
#define F_SETLK64 9
|
||||
#define F_SETLKW64 10
|
||||
|
||||
#define F_GETOWN 11 /* for sockets. */
|
||||
#define F_SETOWN 12 /* for sockets. */
|
||||
#define F_SETSIG 13 /* for sockets. */
|
||||
#define F_GETSIG 14 /* for sockets. */
|
||||
|
||||
/* for posix fcntl() and lockf() */
|
||||
#define F_RDLCK 01
|
||||
#define F_WRLCK 02
|
||||
#define F_UNLCK 03
|
||||
|
||||
#include <asm-generic/fcntl.h>
|
||||
|
||||
#endif
|
||||
45
linux-6.8.1/arch/parisc/include/uapi/asm/ioctl.h
Normal file
45
linux-6.8.1/arch/parisc/include/uapi/asm/ioctl.h
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
|
||||
/*
|
||||
* Linux/PA-RISC Project (http://www.parisc-linux.org/)
|
||||
* Copyright (C) 1999,2003 Matthew Wilcox < willy at debian . org >
|
||||
* portions from "linux/ioctl.h for Linux" by H.H. Bergman.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _ASM_PARISC_IOCTL_H
|
||||
#define _ASM_PARISC_IOCTL_H
|
||||
|
||||
/* ioctl command encoding: 32 bits total, command in lower 16 bits,
|
||||
* size of the parameter structure in the lower 14 bits of the
|
||||
* upper 16 bits.
|
||||
* Encoding the size of the parameter structure in the ioctl request
|
||||
* is useful for catching programs compiled with old versions
|
||||
* and to avoid overwriting user space outside the user buffer area.
|
||||
* The highest 2 bits are reserved for indicating the ``access mode''.
|
||||
* NOTE: This limits the max parameter size to 16kB -1 !
|
||||
*/
|
||||
|
||||
/*
|
||||
* Direction bits.
|
||||
*/
|
||||
#define _IOC_NONE 0U
|
||||
#define _IOC_WRITE 2U
|
||||
#define _IOC_READ 1U
|
||||
|
||||
#include <asm-generic/ioctl.h>
|
||||
|
||||
#endif /* _ASM_PARISC_IOCTL_H */
|
||||
101
linux-6.8.1/arch/parisc/include/uapi/asm/ioctls.h
Normal file
101
linux-6.8.1/arch/parisc/include/uapi/asm/ioctls.h
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __ARCH_PARISC_IOCTLS_H__
|
||||
#define __ARCH_PARISC_IOCTLS_H__
|
||||
|
||||
#include <asm/ioctl.h>
|
||||
|
||||
/* 0x54 is just a magic number to make these relatively unique ('T') */
|
||||
|
||||
#define TCGETS _IOR('T', 16, struct termios) /* TCGETATTR */
|
||||
#define TCSETS _IOW('T', 17, struct termios) /* TCSETATTR */
|
||||
#define TCSETSW _IOW('T', 18, struct termios) /* TCSETATTRD */
|
||||
#define TCSETSF _IOW('T', 19, struct termios) /* TCSETATTRF */
|
||||
#define TCGETA _IOR('T', 1, struct termio)
|
||||
#define TCSETA _IOW('T', 2, struct termio)
|
||||
#define TCSETAW _IOW('T', 3, struct termio)
|
||||
#define TCSETAF _IOW('T', 4, struct termio)
|
||||
#define TCSBRK _IO('T', 5)
|
||||
#define TCXONC _IO('T', 6)
|
||||
#define TCFLSH _IO('T', 7)
|
||||
#define TIOCEXCL 0x540C
|
||||
#define TIOCNXCL 0x540D
|
||||
#define TIOCSCTTY 0x540E
|
||||
#define TIOCGPGRP _IOR('T', 30, int)
|
||||
#define TIOCSPGRP _IOW('T', 29, int)
|
||||
#define TIOCOUTQ 0x5411
|
||||
#define TIOCSTI 0x5412
|
||||
#define TIOCGWINSZ 0x5413
|
||||
#define TIOCSWINSZ 0x5414
|
||||
#define TIOCMGET 0x5415
|
||||
#define TIOCMBIS 0x5416
|
||||
#define TIOCMBIC 0x5417
|
||||
#define TIOCMSET 0x5418
|
||||
#define TIOCGSOFTCAR 0x5419
|
||||
#define TIOCSSOFTCAR 0x541A
|
||||
#define FIONREAD 0x541B
|
||||
#define TIOCINQ FIONREAD
|
||||
#define TIOCLINUX 0x541C
|
||||
#define TIOCCONS 0x541D
|
||||
#define TIOCGSERIAL 0x541E
|
||||
#define TIOCSSERIAL 0x541F
|
||||
#define TIOCPKT 0x5420
|
||||
#define FIONBIO 0x5421
|
||||
#define TIOCNOTTY 0x5422
|
||||
#define TIOCSETD 0x5423
|
||||
#define TIOCGETD 0x5424
|
||||
#define TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */
|
||||
#define TIOCSBRK 0x5427 /* BSD compatibility */
|
||||
#define TIOCCBRK 0x5428 /* BSD compatibility */
|
||||
#define TIOCGSID _IOR('T', 20, int) /* Return the session ID of FD */
|
||||
#define TCGETS2 _IOR('T',0x2A, struct termios2)
|
||||
#define TCSETS2 _IOW('T',0x2B, struct termios2)
|
||||
#define TCSETSW2 _IOW('T',0x2C, struct termios2)
|
||||
#define TCSETSF2 _IOW('T',0x2D, struct termios2)
|
||||
#define TIOCGRS485 _IOR('T', 0x2E, struct serial_rs485)
|
||||
#define TIOCSRS485 _IOWR('T', 0x2F, struct serial_rs485)
|
||||
#define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
|
||||
#define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */
|
||||
#define TIOCGDEV _IOR('T',0x32, int) /* Get primary device node of /dev/console */
|
||||
#define TIOCSIG _IOW('T',0x36, int) /* Generate signal on Pty slave */
|
||||
#define TIOCVHANGUP 0x5437
|
||||
#define TIOCGPKT _IOR('T', 0x38, int) /* Get packet mode state */
|
||||
#define TIOCGPTLCK _IOR('T', 0x39, int) /* Get Pty lock state */
|
||||
#define TIOCGEXCL _IOR('T', 0x40, int) /* Get exclusive mode state */
|
||||
#define TIOCGPTPEER _IO('T', 0x41) /* Safely open the slave */
|
||||
#define TIOCGISO7816 _IOR('T', 0x42, struct serial_iso7816)
|
||||
#define TIOCSISO7816 _IOWR('T', 0x43, struct serial_iso7816)
|
||||
|
||||
#define FIONCLEX 0x5450 /* these numbers need to be adjusted. */
|
||||
#define FIOCLEX 0x5451
|
||||
#define FIOASYNC 0x5452
|
||||
#define TIOCSERCONFIG 0x5453
|
||||
#define TIOCSERGWILD 0x5454
|
||||
#define TIOCSERSWILD 0x5455
|
||||
#define TIOCGLCKTRMIOS 0x5456
|
||||
#define TIOCSLCKTRMIOS 0x5457
|
||||
#define TIOCSERGSTRUCT 0x5458 /* For debugging only */
|
||||
#define TIOCSERGETLSR 0x5459 /* Get line status register */
|
||||
#define TIOCSERGETMULTI 0x545A /* Get multiport config */
|
||||
#define TIOCSERSETMULTI 0x545B /* Set multiport config */
|
||||
|
||||
#define TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */
|
||||
#define TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */
|
||||
#define FIOQSIZE 0x5460 /* Get exact space used by quota */
|
||||
|
||||
#define TIOCSTART 0x5461
|
||||
#define TIOCSTOP 0x5462
|
||||
#define TIOCSLTC 0x5462
|
||||
|
||||
/* Used for packet mode */
|
||||
#define TIOCPKT_DATA 0
|
||||
#define TIOCPKT_FLUSHREAD 1
|
||||
#define TIOCPKT_FLUSHWRITE 2
|
||||
#define TIOCPKT_STOP 4
|
||||
#define TIOCPKT_START 8
|
||||
#define TIOCPKT_NOSTOP 16
|
||||
#define TIOCPKT_DOSTOP 32
|
||||
#define TIOCPKT_IOCTL 64
|
||||
|
||||
#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
|
||||
|
||||
#endif /* _ASM_PARISC_IOCTLS_H */
|
||||
33
linux-6.8.1/arch/parisc/include/uapi/asm/ipcbuf.h
Normal file
33
linux-6.8.1/arch/parisc/include/uapi/asm/ipcbuf.h
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __PARISC_IPCBUF_H__
|
||||
#define __PARISC_IPCBUF_H__
|
||||
|
||||
#include <asm/bitsperlong.h>
|
||||
#include <linux/posix_types.h>
|
||||
|
||||
/*
|
||||
* The ipc64_perm structure for PA-RISC is almost identical to
|
||||
* kern_ipc_perm as we have always had 32-bit UIDs and GIDs in the kernel.
|
||||
* 'seq' has been changed from long to int so that it's the same size
|
||||
* on 64-bit kernels as on 32-bit ones.
|
||||
*/
|
||||
|
||||
struct ipc64_perm
|
||||
{
|
||||
__kernel_key_t key;
|
||||
__kernel_uid_t uid;
|
||||
__kernel_gid_t gid;
|
||||
__kernel_uid_t cuid;
|
||||
__kernel_gid_t cgid;
|
||||
#if __BITS_PER_LONG != 64
|
||||
unsigned short int __pad1;
|
||||
#endif
|
||||
__kernel_mode_t mode;
|
||||
unsigned short int __pad2;
|
||||
unsigned short int seq;
|
||||
unsigned int __pad3;
|
||||
unsigned long long int __unused1;
|
||||
unsigned long long int __unused2;
|
||||
};
|
||||
|
||||
#endif /* __PARISC_IPCBUF_H__ */
|
||||
86
linux-6.8.1/arch/parisc/include/uapi/asm/mman.h
Normal file
86
linux-6.8.1/arch/parisc/include/uapi/asm/mman.h
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __PARISC_MMAN_H__
|
||||
#define __PARISC_MMAN_H__
|
||||
|
||||
#define PROT_READ 0x1 /* page can be read */
|
||||
#define PROT_WRITE 0x2 /* page can be written */
|
||||
#define PROT_EXEC 0x4 /* page can be executed */
|
||||
#define PROT_SEM 0x8 /* page may be used for atomic ops */
|
||||
#define PROT_NONE 0x0 /* page can not be accessed */
|
||||
#define PROT_GROWSDOWN 0x01000000 /* mprotect flag: extend change to start of growsdown vma */
|
||||
#define PROT_GROWSUP 0x02000000 /* mprotect flag: extend change to end of growsup vma */
|
||||
|
||||
/* 0x01 - 0x03 are defined in linux/mman.h */
|
||||
#define MAP_TYPE 0x2b /* Mask for type of mapping, includes bits 0x08 and 0x20 */
|
||||
#define MAP_FIXED 0x04 /* Interpret addr exactly */
|
||||
#define MAP_ANONYMOUS 0x10 /* don't use a file */
|
||||
|
||||
#define MAP_DENYWRITE 0x0800 /* ETXTBSY */
|
||||
#define MAP_EXECUTABLE 0x1000 /* mark it as an executable */
|
||||
#define MAP_LOCKED 0x2000 /* pages are locked */
|
||||
#define MAP_NORESERVE 0x4000 /* don't check for reservations */
|
||||
#define MAP_GROWSDOWN 0x8000 /* stack-like segment */
|
||||
#define MAP_POPULATE 0x10000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x20000 /* do not block on IO */
|
||||
#define MAP_STACK 0x40000 /* give out an address that is best suited for process/thread stacks */
|
||||
#define MAP_HUGETLB 0x80000 /* create a huge page mapping */
|
||||
#define MAP_FIXED_NOREPLACE 0x100000 /* MAP_FIXED which doesn't unmap underlying mapping */
|
||||
#define MAP_UNINITIALIZED 0 /* uninitialized anonymous mmap */
|
||||
|
||||
#define MS_SYNC 1 /* synchronous memory sync */
|
||||
#define MS_ASYNC 2 /* sync memory asynchronously */
|
||||
#define MS_INVALIDATE 4 /* invalidate the caches */
|
||||
|
||||
#define MCL_CURRENT 1 /* lock all current mappings */
|
||||
#define MCL_FUTURE 2 /* lock all future mappings */
|
||||
#define MCL_ONFAULT 4 /* lock all pages that are faulted in */
|
||||
|
||||
#define MLOCK_ONFAULT 0x01 /* Lock pages in range after they are faulted in, do not prefault */
|
||||
|
||||
#define MADV_NORMAL 0 /* no further special treatment */
|
||||
#define MADV_RANDOM 1 /* expect random page references */
|
||||
#define MADV_SEQUENTIAL 2 /* expect sequential page references */
|
||||
#define MADV_WILLNEED 3 /* will need these pages */
|
||||
#define MADV_DONTNEED 4 /* don't need these pages */
|
||||
|
||||
/* common/generic parameters */
|
||||
#define MADV_FREE 8 /* free pages only if memory pressure */
|
||||
#define MADV_REMOVE 9 /* remove these pages & resources */
|
||||
#define MADV_DONTFORK 10 /* don't inherit across fork */
|
||||
#define MADV_DOFORK 11 /* do inherit across fork */
|
||||
|
||||
#define MADV_MERGEABLE 12 /* KSM may merge identical pages */
|
||||
#define MADV_UNMERGEABLE 13 /* KSM may not merge identical pages */
|
||||
|
||||
#define MADV_HUGEPAGE 14 /* Worth backing with hugepages */
|
||||
#define MADV_NOHUGEPAGE 15 /* Not worth backing with hugepages */
|
||||
|
||||
#define MADV_DONTDUMP 16 /* Explicity exclude from the core dump,
|
||||
overrides the coredump filter bits */
|
||||
#define MADV_DODUMP 17 /* Clear the MADV_NODUMP flag */
|
||||
|
||||
#define MADV_WIPEONFORK 18 /* Zero memory on fork, child only */
|
||||
#define MADV_KEEPONFORK 19 /* Undo MADV_WIPEONFORK */
|
||||
|
||||
#define MADV_COLD 20 /* deactivate these pages */
|
||||
#define MADV_PAGEOUT 21 /* reclaim these pages */
|
||||
|
||||
#define MADV_POPULATE_READ 22 /* populate (prefault) page tables readable */
|
||||
#define MADV_POPULATE_WRITE 23 /* populate (prefault) page tables writable */
|
||||
|
||||
#define MADV_DONTNEED_LOCKED 24 /* like DONTNEED, but drop locked pages too */
|
||||
|
||||
#define MADV_COLLAPSE 25 /* Synchronous hugepage collapse */
|
||||
|
||||
#define MADV_HWPOISON 100 /* poison a page for testing */
|
||||
#define MADV_SOFT_OFFLINE 101 /* soft offline page for testing */
|
||||
|
||||
/* compatibility flags */
|
||||
#define MAP_FILE 0
|
||||
|
||||
#define PKEY_DISABLE_ACCESS 0x1
|
||||
#define PKEY_DISABLE_WRITE 0x2
|
||||
#define PKEY_ACCESS_MASK (PKEY_DISABLE_ACCESS |\
|
||||
PKEY_DISABLE_WRITE)
|
||||
|
||||
#endif /* __PARISC_MMAN_H__ */
|
||||
40
linux-6.8.1/arch/parisc/include/uapi/asm/msgbuf.h
Normal file
40
linux-6.8.1/arch/parisc/include/uapi/asm/msgbuf.h
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_MSGBUF_H
|
||||
#define _PARISC_MSGBUF_H
|
||||
|
||||
#include <asm/bitsperlong.h>
|
||||
#include <asm/ipcbuf.h>
|
||||
|
||||
/*
|
||||
* The msqid64_ds structure for parisc architecture, copied from sparc.
|
||||
* Note extra padding because this structure is passed back and forth
|
||||
* between kernel and user space.
|
||||
*
|
||||
* Pad space is left for:
|
||||
* - 2 miscellaneous 32-bit values
|
||||
*/
|
||||
|
||||
struct msqid64_ds {
|
||||
struct ipc64_perm msg_perm;
|
||||
#if __BITS_PER_LONG == 64
|
||||
long msg_stime; /* last msgsnd time */
|
||||
long msg_rtime; /* last msgrcv time */
|
||||
long msg_ctime; /* last change time */
|
||||
#else
|
||||
unsigned long msg_stime_high;
|
||||
unsigned long msg_stime; /* last msgsnd time */
|
||||
unsigned long msg_rtime_high;
|
||||
unsigned long msg_rtime; /* last msgrcv time */
|
||||
unsigned long msg_ctime_high;
|
||||
unsigned long msg_ctime; /* last change time */
|
||||
#endif
|
||||
unsigned long msg_cbytes; /* current number of bytes on queue */
|
||||
unsigned long msg_qnum; /* number of messages in queue */
|
||||
unsigned long msg_qbytes; /* max number of bytes on queue */
|
||||
__kernel_pid_t msg_lspid; /* pid of last msgsnd */
|
||||
__kernel_pid_t msg_lrpid; /* last receive pid */
|
||||
unsigned long __unused1;
|
||||
unsigned long __unused2;
|
||||
};
|
||||
|
||||
#endif /* _PARISC_MSGBUF_H */
|
||||
746
linux-6.8.1/arch/parisc/include/uapi/asm/pdc.h
Normal file
746
linux-6.8.1/arch/parisc/include/uapi/asm/pdc.h
Normal file
|
|
@ -0,0 +1,746 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_PARISC_PDC_H
|
||||
#define _UAPI_PARISC_PDC_H
|
||||
|
||||
/*
|
||||
* PDC return values ...
|
||||
* All PDC calls return a subset of these errors.
|
||||
*/
|
||||
|
||||
#define PDC_WARN 3 /* Call completed with a warning */
|
||||
#define PDC_REQ_ERR_1 2 /* See above */
|
||||
#define PDC_REQ_ERR_0 1 /* Call would generate a requestor error */
|
||||
#define PDC_OK 0 /* Call completed successfully */
|
||||
#define PDC_BAD_PROC -1 /* Called non-existent procedure*/
|
||||
#define PDC_BAD_OPTION -2 /* Called with non-existent option */
|
||||
#define PDC_ERROR -3 /* Call could not complete without an error */
|
||||
#define PDC_NE_MOD -5 /* Module not found */
|
||||
#define PDC_NE_CELL_MOD -7 /* Cell module not found */
|
||||
#define PDC_NE_BOOTDEV -9 /* Cannot locate a console device or boot device */
|
||||
#define PDC_INVALID_ARG -10 /* Called with an invalid argument */
|
||||
#define PDC_BUS_POW_WARN -12 /* Call could not complete in allowed power budget */
|
||||
#define PDC_NOT_NARROW -17 /* Narrow mode not supported */
|
||||
|
||||
/*
|
||||
* PDC entry points...
|
||||
*/
|
||||
|
||||
#define PDC_POW_FAIL 1 /* perform a power-fail */
|
||||
#define PDC_POW_FAIL_PREPARE 0 /* prepare for powerfail */
|
||||
|
||||
#define PDC_CHASSIS 2 /* PDC-chassis functions */
|
||||
#define PDC_CHASSIS_DISP 0 /* update chassis display */
|
||||
#define PDC_CHASSIS_WARN 1 /* return chassis warnings */
|
||||
#define PDC_CHASSIS_DISPWARN 2 /* update&return chassis status */
|
||||
#define PDC_RETURN_CHASSIS_INFO 128 /* HVERSION dependent: return chassis LED/LCD info */
|
||||
|
||||
#define PDC_PIM 3 /* Get PIM data */
|
||||
#define PDC_PIM_HPMC 0 /* Transfer HPMC data */
|
||||
#define PDC_PIM_RETURN_SIZE 1 /* Get Max buffer needed for PIM*/
|
||||
#define PDC_PIM_LPMC 2 /* Transfer HPMC data */
|
||||
#define PDC_PIM_SOFT_BOOT 3 /* Transfer Soft Boot data */
|
||||
#define PDC_PIM_TOC 4 /* Transfer TOC data */
|
||||
|
||||
#define PDC_MODEL 4 /* PDC model information call */
|
||||
#define PDC_MODEL_INFO 0 /* returns information */
|
||||
#define PDC_MODEL_BOOTID 1 /* set the BOOT_ID */
|
||||
#define PDC_MODEL_VERSIONS 2 /* returns cpu-internal versions*/
|
||||
#define PDC_MODEL_SYSMODEL 3 /* return system model info */
|
||||
#define PDC_MODEL_ENSPEC 4 /* enable specific option */
|
||||
#define PDC_MODEL_DISPEC 5 /* disable specific option */
|
||||
#define PDC_MODEL_CPU_ID 6 /* returns cpu-id (only newer machines!) */
|
||||
#define PDC_MODEL_CAPABILITIES 7 /* returns OS32/OS64-flags */
|
||||
/* Values for PDC_MODEL_CAPABILITIES non-equivalent virtual aliasing support */
|
||||
#define PDC_MODEL_OS64 (1 << 0)
|
||||
#define PDC_MODEL_OS32 (1 << 1)
|
||||
#define PDC_MODEL_IOPDIR_FDC (1 << 2)
|
||||
#define PDC_MODEL_NVA_MASK (3 << 4)
|
||||
#define PDC_MODEL_NVA_SUPPORTED (0 << 4)
|
||||
#define PDC_MODEL_NVA_SLOW (1 << 4)
|
||||
#define PDC_MODEL_NVA_UNSUPPORTED (3 << 4)
|
||||
#define PDC_MODEL_FIRM_TEST_GET 8 /* returns boot test options */
|
||||
#define PDC_MODEL_FIRM_TEST_SET 9 /* set boot test options */
|
||||
#define PDC_MODEL_GET_PLATFORM_INFO 10 /* returns platform info */
|
||||
#define PDC_MODEL_GET_INSTALL_KERNEL 11 /* returns kernel for installation */
|
||||
|
||||
#define PA89_INSTRUCTION_SET 0x4 /* capabilities returned */
|
||||
#define PA90_INSTRUCTION_SET 0x8
|
||||
|
||||
#define PDC_CACHE 5 /* return/set cache (& TLB) info*/
|
||||
#define PDC_CACHE_INFO 0 /* returns information */
|
||||
#define PDC_CACHE_SET_COH 1 /* set coherence state */
|
||||
#define PDC_CACHE_RET_SPID 2 /* returns space-ID bits */
|
||||
|
||||
#define PDC_HPA 6 /* return HPA of processor */
|
||||
#define PDC_HPA_PROCESSOR 0
|
||||
#define PDC_HPA_MODULES 1
|
||||
|
||||
#define PDC_COPROC 7 /* Co-Processor (usually FP unit(s)) */
|
||||
#define PDC_COPROC_CFG 0 /* Co-Processor Cfg (FP unit(s) enabled?) */
|
||||
|
||||
#define PDC_IODC 8 /* talk to IODC */
|
||||
#define PDC_IODC_READ 0 /* read IODC entry point */
|
||||
/* PDC_IODC_RI_ * INDEX parameter of PDC_IODC_READ */
|
||||
#define PDC_IODC_RI_DATA_BYTES 0 /* IODC Data Bytes */
|
||||
/* 1, 2 obsolete - HVERSION dependent*/
|
||||
#define PDC_IODC_RI_INIT 3 /* Initialize module */
|
||||
#define PDC_IODC_RI_IO 4 /* Module input/output */
|
||||
#define PDC_IODC_RI_SPA 5 /* Module input/output */
|
||||
#define PDC_IODC_RI_CONFIG 6 /* Module input/output */
|
||||
/* 7 obsolete - HVERSION dependent */
|
||||
#define PDC_IODC_RI_TEST 8 /* Module input/output */
|
||||
#define PDC_IODC_RI_TLB 9 /* Module input/output */
|
||||
#define PDC_IODC_NINIT 2 /* non-destructive init */
|
||||
#define PDC_IODC_DINIT 3 /* destructive init */
|
||||
#define PDC_IODC_MEMERR 4 /* check for memory errors */
|
||||
#define PDC_IODC_INDEX_DATA 0 /* get first 16 bytes from mod IODC */
|
||||
#define PDC_IODC_BUS_ERROR -4 /* bus error return value */
|
||||
#define PDC_IODC_INVALID_INDEX -5 /* invalid index return value */
|
||||
#define PDC_IODC_COUNT -6 /* count is too small */
|
||||
|
||||
#define PDC_TOD 9 /* time-of-day clock (TOD) */
|
||||
#define PDC_TOD_READ 0 /* read TOD */
|
||||
#define PDC_TOD_WRITE 1 /* write TOD */
|
||||
#define PDC_TOD_CALIBRATE 2 /* calibrate timers */
|
||||
|
||||
#define PDC_STABLE 10 /* stable storage (sprockets) */
|
||||
#define PDC_STABLE_READ 0
|
||||
#define PDC_STABLE_WRITE 1
|
||||
#define PDC_STABLE_RETURN_SIZE 2
|
||||
#define PDC_STABLE_VERIFY_CONTENTS 3
|
||||
#define PDC_STABLE_INITIALIZE 4
|
||||
|
||||
#define PDC_NVOLATILE 11 /* often not implemented */
|
||||
#define PDC_NVOLATILE_READ 0
|
||||
#define PDC_NVOLATILE_WRITE 1
|
||||
#define PDC_NVOLATILE_RETURN_SIZE 2
|
||||
#define PDC_NVOLATILE_VERIFY_CONTENTS 3
|
||||
#define PDC_NVOLATILE_INITIALIZE 4
|
||||
|
||||
#define PDC_ADD_VALID 12 /* Memory validation PDC call */
|
||||
#define PDC_ADD_VALID_VERIFY 0 /* Make PDC_ADD_VALID verify region */
|
||||
|
||||
#define PDC_DEBUG 14 /* Obsolete */
|
||||
|
||||
#define PDC_INSTR 15 /* get instr to invoke PDCE_CHECK() */
|
||||
|
||||
#define PDC_PROC 16 /* (sprockets) */
|
||||
|
||||
#define PDC_CONFIG 17 /* (sprockets) */
|
||||
#define PDC_CONFIG_DECONFIG 0
|
||||
#define PDC_CONFIG_DRECONFIG 1
|
||||
#define PDC_CONFIG_DRETURN_CONFIG 2
|
||||
|
||||
#define PDC_BLOCK_TLB 18 /* manage hardware block-TLB */
|
||||
#define PDC_BTLB_INFO 0 /* returns parameter */
|
||||
#define PDC_BTLB_INSERT 1 /* insert BTLB entry */
|
||||
#define PDC_BTLB_PURGE 2 /* purge BTLB entries */
|
||||
#define PDC_BTLB_PURGE_ALL 3 /* purge all BTLB entries */
|
||||
|
||||
#define PDC_TLB 19 /* manage hardware TLB miss handling */
|
||||
#define PDC_TLB_INFO 0 /* returns parameter */
|
||||
#define PDC_TLB_SETUP 1 /* set up miss handling */
|
||||
|
||||
#define PDC_MEM 20 /* Manage memory */
|
||||
#define PDC_MEM_MEMINFO 0 /* Return PDT info */
|
||||
#define PDC_MEM_ADD_PAGE 1 /* Add page to PDT */
|
||||
#define PDC_MEM_CLEAR_PDT 2 /* Clear PDT */
|
||||
#define PDC_MEM_READ_PDT 3 /* Read PDT entry */
|
||||
#define PDC_MEM_RESET_CLEAR 4 /* Reset PDT clear flag */
|
||||
#define PDC_MEM_GOODMEM 5 /* Set good_mem value */
|
||||
#define PDC_MEM_TABLE 128 /* Non contig mem map (sprockets) */
|
||||
#define PDC_MEM_RETURN_ADDRESS_TABLE PDC_MEM_TABLE
|
||||
#define PDC_MEM_GET_MEMORY_SYSTEM_TABLES_SIZE 131
|
||||
#define PDC_MEM_GET_MEMORY_SYSTEM_TABLES 132
|
||||
#define PDC_MEM_GET_PHYSICAL_LOCATION_FROM_MEMORY_ADDRESS 133
|
||||
|
||||
#define PDC_MEM_RET_SBE_REPLACED 5 /* PDC_MEM return values */
|
||||
#define PDC_MEM_RET_DUPLICATE_ENTRY 4
|
||||
#define PDC_MEM_RET_BUF_SIZE_SMALL 1
|
||||
#define PDC_MEM_RET_PDT_FULL -11
|
||||
#define PDC_MEM_RET_INVALID_PHYSICAL_LOCATION ~0ULL
|
||||
|
||||
#define PDC_PSW 21 /* Get/Set default System Mask */
|
||||
#define PDC_PSW_MASK 0 /* Return mask */
|
||||
#define PDC_PSW_GET_DEFAULTS 1 /* Return defaults */
|
||||
#define PDC_PSW_SET_DEFAULTS 2 /* Set default */
|
||||
#define PDC_PSW_ENDIAN_BIT 1 /* set for big endian */
|
||||
#define PDC_PSW_WIDE_BIT 2 /* set for wide mode */
|
||||
|
||||
#define PDC_SYSTEM_MAP 22 /* find system modules */
|
||||
#define PDC_FIND_MODULE 0
|
||||
#define PDC_FIND_ADDRESS 1
|
||||
#define PDC_TRANSLATE_PATH 2
|
||||
|
||||
#define PDC_SOFT_POWER 23 /* soft power switch */
|
||||
#define PDC_SOFT_POWER_INFO 0 /* return info about the soft power switch */
|
||||
#define PDC_SOFT_POWER_ENABLE 1 /* enable/disable soft power switch */
|
||||
|
||||
#define PDC_ALLOC 24 /* allocate static storage for PDC & IODC */
|
||||
|
||||
#define PDC_CRASH_PREP 25 /* Prepare system for crash dump */
|
||||
#define PDC_CRASH_DUMP 0 /* Do platform specific preparations for dump */
|
||||
#define PDC_CRASH_LOG_CEC_ERROR 1 /* Dump hardware registers */
|
||||
|
||||
#define PDC_SCSI_PARMS 26 /* Get and set SCSI parameters */
|
||||
#define PDC_SCSI_GET_PARMS 0 /* Get SCSI parameters for I/O device */
|
||||
#define PDC_SCSI_SET_PARMS 1 /* Set SCSI parameters for I/O device */
|
||||
|
||||
/* HVERSION dependent */
|
||||
|
||||
/* The PDC_MEM_MAP calls */
|
||||
#define PDC_MEM_MAP 128 /* on s700: return page info */
|
||||
#define PDC_MEM_MAP_HPA 0 /* returns hpa of a module */
|
||||
|
||||
#define PDC_EEPROM 129 /* EEPROM access */
|
||||
#define PDC_EEPROM_READ_WORD 0
|
||||
#define PDC_EEPROM_WRITE_WORD 1
|
||||
#define PDC_EEPROM_READ_BYTE 2
|
||||
#define PDC_EEPROM_WRITE_BYTE 3
|
||||
#define PDC_EEPROM_EEPROM_PASSWORD -1000
|
||||
|
||||
#define PDC_NVM 130 /* NVM (non-volatile memory) access */
|
||||
#define PDC_NVM_READ_WORD 0
|
||||
#define PDC_NVM_WRITE_WORD 1
|
||||
#define PDC_NVM_READ_BYTE 2
|
||||
#define PDC_NVM_WRITE_BYTE 3
|
||||
|
||||
#define PDC_SEED_ERROR 132 /* (sprockets) */
|
||||
|
||||
#define PDC_IO 135 /* log error info, reset IO system */
|
||||
#define PDC_IO_READ_AND_CLEAR_ERRORS 0
|
||||
#define PDC_IO_RESET 1
|
||||
#define PDC_IO_RESET_DEVICES 2
|
||||
/* sets bits 6&7 (little endian) of the HcControl Register */
|
||||
#define PDC_IO_USB_SUSPEND 0xC000000000000000
|
||||
#define PDC_IO_EEPROM_IO_ERR_TABLE_FULL -5 /* return value */
|
||||
#define PDC_IO_NO_SUSPEND -6 /* return value */
|
||||
|
||||
#define PDC_BROADCAST_RESET 136 /* reset all processors */
|
||||
#define PDC_DO_RESET 0 /* option: perform a broadcast reset */
|
||||
#define PDC_DO_FIRM_TEST_RESET 1 /* Do broadcast reset with bitmap */
|
||||
#define PDC_BR_RECONFIGURATION 2 /* reset w/reconfiguration */
|
||||
#define PDC_FIRM_TEST_MAGIC 0xab9ec36fUL /* for this reboot only */
|
||||
|
||||
#define PDC_LAN_STATION_ID 138 /* Hversion dependent mechanism for */
|
||||
#define PDC_LAN_STATION_ID_READ 0 /* getting the lan station address */
|
||||
|
||||
#define PDC_LAN_STATION_ID_SIZE 6
|
||||
|
||||
#define PDC_CHECK_RANGES 139 /* (sprockets) */
|
||||
|
||||
#define PDC_NV_SECTIONS 141 /* (sprockets) */
|
||||
|
||||
#define PDC_PERFORMANCE 142 /* performance monitoring */
|
||||
|
||||
#define PDC_SYSTEM_INFO 143 /* system information */
|
||||
#define PDC_SYSINFO_RETURN_INFO_SIZE 0
|
||||
#define PDC_SYSINFO_RRETURN_SYS_INFO 1
|
||||
#define PDC_SYSINFO_RRETURN_ERRORS 2
|
||||
#define PDC_SYSINFO_RRETURN_WARNINGS 3
|
||||
#define PDC_SYSINFO_RETURN_REVISIONS 4
|
||||
#define PDC_SYSINFO_RRETURN_DIAGNOSE 5
|
||||
#define PDC_SYSINFO_RRETURN_HV_DIAGNOSE 1005
|
||||
|
||||
#define PDC_RDR 144 /* (sprockets) */
|
||||
#define PDC_RDR_READ_BUFFER 0
|
||||
#define PDC_RDR_READ_SINGLE 1
|
||||
#define PDC_RDR_WRITE_SINGLE 2
|
||||
|
||||
#define PDC_INTRIGUE 145 /* (sprockets) */
|
||||
#define PDC_INTRIGUE_WRITE_BUFFER 0
|
||||
#define PDC_INTRIGUE_GET_SCRATCH_BUFSIZE 1
|
||||
#define PDC_INTRIGUE_START_CPU_COUNTERS 2
|
||||
#define PDC_INTRIGUE_STOP_CPU_COUNTERS 3
|
||||
|
||||
#define PDC_STI 146 /* STI access */
|
||||
/* same as PDC_PCI_XXX values (see below) */
|
||||
|
||||
/* Legacy PDC definitions for same stuff */
|
||||
#define PDC_PCI_INDEX 147
|
||||
#define PDC_PCI_INTERFACE_INFO 0
|
||||
#define PDC_PCI_SLOT_INFO 1
|
||||
#define PDC_PCI_INFLIGHT_BYTES 2
|
||||
#define PDC_PCI_READ_CONFIG 3
|
||||
#define PDC_PCI_WRITE_CONFIG 4
|
||||
#define PDC_PCI_READ_PCI_IO 5
|
||||
#define PDC_PCI_WRITE_PCI_IO 6
|
||||
#define PDC_PCI_READ_CONFIG_DELAY 7
|
||||
#define PDC_PCI_UPDATE_CONFIG_DELAY 8
|
||||
#define PDC_PCI_PCI_PATH_TO_PCI_HPA 9
|
||||
#define PDC_PCI_PCI_HPA_TO_PCI_PATH 10
|
||||
#define PDC_PCI_PCI_PATH_TO_PCI_BUS 11
|
||||
#define PDC_PCI_PCI_RESERVED 12
|
||||
#define PDC_PCI_PCI_INT_ROUTE_SIZE 13
|
||||
#define PDC_PCI_GET_INT_TBL_SIZE PDC_PCI_PCI_INT_ROUTE_SIZE
|
||||
#define PDC_PCI_PCI_INT_ROUTE 14
|
||||
#define PDC_PCI_GET_INT_TBL PDC_PCI_PCI_INT_ROUTE
|
||||
#define PDC_PCI_READ_MON_TYPE 15
|
||||
#define PDC_PCI_WRITE_MON_TYPE 16
|
||||
|
||||
#define PDC_RELOCATE 149 /* (sprockets) */
|
||||
#define PDC_RELOCATE_GET_RELOCINFO 0
|
||||
#define PDC_RELOCATE_CHECKSUM 1
|
||||
#define PDC_RELOCATE_RELOCATE 2
|
||||
|
||||
/* Get SCSI Interface Card info: SDTR, SCSI ID, mode (SE vs LVD) */
|
||||
#define PDC_INITIATOR 163
|
||||
#define PDC_GET_INITIATOR 0
|
||||
#define PDC_SET_INITIATOR 1
|
||||
#define PDC_DELETE_INITIATOR 2
|
||||
#define PDC_RETURN_TABLE_SIZE 3
|
||||
#define PDC_RETURN_TABLE 4
|
||||
|
||||
#define PDC_LINK 165 /* (sprockets) */
|
||||
#define PDC_LINK_PCI_ENTRY_POINTS 0 /* list (Arg1) = 0 */
|
||||
#define PDC_LINK_USB_ENTRY_POINTS 1 /* list (Arg1) = 1 */
|
||||
|
||||
/* cl_class
|
||||
* page 3-33 of IO-Firmware ARS
|
||||
* IODC ENTRY_INIT(Search first) RET[1]
|
||||
*/
|
||||
#define CL_NULL 0 /* invalid */
|
||||
#define CL_RANDOM 1 /* random access (as disk) */
|
||||
#define CL_SEQU 2 /* sequential access (as tape) */
|
||||
#define CL_DUPLEX 7 /* full-duplex point-to-point (RS-232, Net) */
|
||||
#define CL_KEYBD 8 /* half-duplex console (HIL Keyboard) */
|
||||
#define CL_DISPL 9 /* half-duplex console (display) */
|
||||
#define CL_FC 10 /* FiberChannel access media */
|
||||
|
||||
/* IODC ENTRY_INIT() */
|
||||
#define ENTRY_INIT_SRCH_FRST 2
|
||||
#define ENTRY_INIT_SRCH_NEXT 3
|
||||
#define ENTRY_INIT_MOD_DEV 4
|
||||
#define ENTRY_INIT_DEV 5
|
||||
#define ENTRY_INIT_MOD 6
|
||||
#define ENTRY_INIT_MSG 9
|
||||
|
||||
/* IODC ENTRY_IO() */
|
||||
#define ENTRY_IO_BOOTIN 0
|
||||
#define ENTRY_IO_BOOTOUT 1
|
||||
#define ENTRY_IO_CIN 2
|
||||
#define ENTRY_IO_COUT 3
|
||||
#define ENTRY_IO_CLOSE 4
|
||||
#define ENTRY_IO_GETMSG 9
|
||||
#define ENTRY_IO_BBLOCK_IN 16
|
||||
#define ENTRY_IO_BBLOCK_OUT 17
|
||||
|
||||
/* IODC ENTRY_SPA() */
|
||||
|
||||
/* IODC ENTRY_CONFIG() */
|
||||
|
||||
/* IODC ENTRY_TEST() */
|
||||
|
||||
/* IODC ENTRY_TLB() */
|
||||
|
||||
/* constants for OS (NVM...) */
|
||||
#define OS_ID_NONE 0 /* Undefined OS ID */
|
||||
#define OS_ID_HPUX 1 /* HP-UX OS */
|
||||
#define OS_ID_MPEXL 2 /* MPE XL OS */
|
||||
#define OS_ID_OSF 3 /* OSF OS */
|
||||
#define OS_ID_HPRT 4 /* HP-RT OS */
|
||||
#define OS_ID_NOVEL 5 /* NOVELL OS */
|
||||
#define OS_ID_LINUX 6 /* Linux */
|
||||
|
||||
|
||||
/* constants for PDC_CHASSIS */
|
||||
#define OSTAT_OFF 0
|
||||
#define OSTAT_FLT 1
|
||||
#define OSTAT_TEST 2
|
||||
#define OSTAT_INIT 3
|
||||
#define OSTAT_SHUT 4
|
||||
#define OSTAT_WARN 5
|
||||
#define OSTAT_RUN 6
|
||||
#define OSTAT_ON 7
|
||||
|
||||
/* Page Zero constant offsets used by the HPMC handler */
|
||||
#define BOOT_CONSOLE_HPA_OFFSET 0x3c0
|
||||
#define BOOT_CONSOLE_SPA_OFFSET 0x3c4
|
||||
#define BOOT_CONSOLE_PATH_OFFSET 0x3a8
|
||||
|
||||
/* size of the pdc_result buffer for firmware.c */
|
||||
#define NUM_PDC_RESULT 32
|
||||
|
||||
#if !defined(__ASSEMBLY__)
|
||||
|
||||
/* flags for hardware_path */
|
||||
#define PF_AUTOBOOT 0x80
|
||||
#define PF_AUTOSEARCH 0x40
|
||||
#define PF_TIMER 0x0F
|
||||
|
||||
struct hardware_path {
|
||||
unsigned char flags; /* see bit definitions below */
|
||||
signed char bc[6]; /* Bus Converter routing info to a specific */
|
||||
/* I/O adaptor (< 0 means none, > 63 resvd) */
|
||||
signed char mod; /* fixed field of specified module */
|
||||
};
|
||||
|
||||
struct pdc_module_path { /* page 1-69 */
|
||||
struct hardware_path path;
|
||||
unsigned int layers[6]; /* device-specific info (ctlr #, unit # ...) */
|
||||
} __attribute__((aligned(8)));
|
||||
|
||||
struct pz_device {
|
||||
struct pdc_module_path dp; /* see above */
|
||||
/* struct iomod *hpa; */
|
||||
unsigned int hpa; /* HPA base address */
|
||||
/* char *spa; */
|
||||
unsigned int spa; /* SPA base address */
|
||||
/* int (*iodc_io)(struct iomod*, ...); */
|
||||
unsigned int iodc_io; /* device entry point */
|
||||
short pad; /* reserved */
|
||||
unsigned short cl_class;/* see below */
|
||||
} __attribute__((aligned(8))) ;
|
||||
|
||||
struct zeropage {
|
||||
/* [0x000] initialize vectors (VEC) */
|
||||
unsigned int vec_special; /* must be zero */
|
||||
/* int (*vec_pow_fail)(void);*/
|
||||
unsigned int vec_pow_fail; /* power failure handler */
|
||||
/* int (*vec_toc)(void); */
|
||||
unsigned int vec_toc;
|
||||
unsigned int vec_toclen;
|
||||
/* int (*vec_rendz)(void); */
|
||||
unsigned int vec_rendz;
|
||||
int vec_pow_fail_flen;
|
||||
int vec_pad0[3];
|
||||
unsigned int vec_toc_hi;
|
||||
int vec_pad1[6];
|
||||
|
||||
/* [0x040] reserved processor dependent */
|
||||
int pad0[112]; /* in QEMU pad0[0] holds "SeaBIOS\0" */
|
||||
|
||||
/* [0x200] reserved */
|
||||
int pad1[84];
|
||||
|
||||
/* [0x350] memory configuration (MC) */
|
||||
int memc_cont; /* contiguous mem size (bytes) */
|
||||
int memc_phsize; /* physical memory size */
|
||||
int memc_adsize; /* additional mem size, bytes of SPA space used by PDC */
|
||||
unsigned int mem_pdc_hi; /* used for 64-bit */
|
||||
|
||||
/* [0x360] various parameters for the boot-CPU */
|
||||
/* unsigned int *mem_booterr[8]; */
|
||||
unsigned int mem_booterr[8]; /* ptr to boot errors */
|
||||
unsigned int mem_free; /* first location, where OS can be loaded */
|
||||
/* struct iomod *mem_hpa; */
|
||||
unsigned int mem_hpa; /* HPA of the boot-CPU */
|
||||
/* int (*mem_pdc)(int, ...); */
|
||||
unsigned int mem_pdc; /* PDC entry point */
|
||||
unsigned int mem_10msec; /* number of clock ticks in 10msec */
|
||||
|
||||
/* [0x390] initial memory module (IMM) */
|
||||
/* struct iomod *imm_hpa; */
|
||||
unsigned int imm_hpa; /* HPA of the IMM */
|
||||
int imm_soft_boot; /* 0 = was hard boot, 1 = was soft boot */
|
||||
unsigned int imm_spa_size; /* SPA size of the IMM in bytes */
|
||||
unsigned int imm_max_mem; /* bytes of mem in IMM */
|
||||
|
||||
/* [0x3A0] boot console, display device and keyboard */
|
||||
struct pz_device mem_cons; /* description of console device */
|
||||
struct pz_device mem_boot; /* description of boot device */
|
||||
struct pz_device mem_kbd; /* description of keyboard device */
|
||||
|
||||
/* [0x430] reserved */
|
||||
int pad430[116];
|
||||
|
||||
/* [0x600] processor dependent */
|
||||
unsigned int pad600[1];
|
||||
unsigned int proc_sti; /* pointer to STI ROM */
|
||||
unsigned int pad608[126];
|
||||
};
|
||||
|
||||
struct pdc_chassis_info { /* for PDC_CHASSIS_INFO */
|
||||
unsigned long actcnt; /* actual number of bytes returned */
|
||||
unsigned long maxcnt; /* maximum number of bytes that could be returned */
|
||||
};
|
||||
|
||||
struct pdc_coproc_cfg { /* for PDC_COPROC_CFG */
|
||||
unsigned long ccr_functional;
|
||||
unsigned long ccr_present;
|
||||
unsigned long revision;
|
||||
unsigned long model;
|
||||
};
|
||||
|
||||
struct pdc_model { /* for PDC_MODEL */
|
||||
unsigned long hversion;
|
||||
unsigned long sversion;
|
||||
unsigned long hw_id;
|
||||
unsigned long boot_id;
|
||||
unsigned long sw_id;
|
||||
unsigned long sw_cap;
|
||||
unsigned long arch_rev;
|
||||
unsigned long pot_key;
|
||||
unsigned long curr_key;
|
||||
unsigned long width; /* default of PSW_W bit (1=enabled) */
|
||||
};
|
||||
|
||||
struct pdc_cache_cf { /* for PDC_CACHE (I/D-caches) */
|
||||
unsigned long
|
||||
#ifdef __LP64__
|
||||
cc_padW:32,
|
||||
#endif
|
||||
cc_alias: 4, /* alias boundaries for virtual addresses */
|
||||
cc_block: 4, /* to determine most efficient stride */
|
||||
cc_line : 3, /* maximum amount written back as a result of store (multiple of 16 bytes) */
|
||||
cc_shift: 2, /* how much to shift cc_block left */
|
||||
cc_wt : 1, /* 0 = WT-Dcache, 1 = WB-Dcache */
|
||||
cc_sh : 2, /* 0 = separate I/D-cache, else shared I/D-cache */
|
||||
cc_cst : 3, /* 0 = incoherent D-cache, 1=coherent D-cache */
|
||||
cc_pad1 : 10, /* reserved */
|
||||
cc_hv : 3; /* hversion dependent */
|
||||
};
|
||||
|
||||
struct pdc_tlb_cf { /* for PDC_CACHE (I/D-TLB's) */
|
||||
unsigned long tc_pad0:12, /* reserved */
|
||||
#ifdef __LP64__
|
||||
tc_padW:32,
|
||||
#endif
|
||||
tc_sh : 2, /* 0 = separate I/D-TLB, else shared I/D-TLB */
|
||||
tc_hv : 1, /* HV */
|
||||
tc_page : 1, /* 0 = 2K page-size-machine, 1 = 4k page size */
|
||||
tc_cst : 3, /* 0 = incoherent operations, else coherent operations */
|
||||
tc_aid : 5, /* ITLB: width of access ids of processor (encoded!) */
|
||||
tc_sr : 8; /* ITLB: width of space-registers (encoded) */
|
||||
};
|
||||
|
||||
struct pdc_cache_info { /* main-PDC_CACHE-structure (caches & TLB's) */
|
||||
/* I-cache */
|
||||
unsigned long ic_size; /* size in bytes */
|
||||
struct pdc_cache_cf ic_conf; /* configuration */
|
||||
unsigned long ic_base; /* base-addr */
|
||||
unsigned long ic_stride;
|
||||
unsigned long ic_count;
|
||||
unsigned long ic_loop;
|
||||
/* D-cache */
|
||||
unsigned long dc_size; /* size in bytes */
|
||||
struct pdc_cache_cf dc_conf; /* configuration */
|
||||
unsigned long dc_base; /* base-addr */
|
||||
unsigned long dc_stride;
|
||||
unsigned long dc_count;
|
||||
unsigned long dc_loop;
|
||||
/* Instruction-TLB */
|
||||
unsigned long it_size; /* number of entries in I-TLB */
|
||||
struct pdc_tlb_cf it_conf; /* I-TLB-configuration */
|
||||
unsigned long it_sp_base;
|
||||
unsigned long it_sp_stride;
|
||||
unsigned long it_sp_count;
|
||||
unsigned long it_off_base;
|
||||
unsigned long it_off_stride;
|
||||
unsigned long it_off_count;
|
||||
unsigned long it_loop;
|
||||
/* data-TLB */
|
||||
unsigned long dt_size; /* number of entries in D-TLB */
|
||||
struct pdc_tlb_cf dt_conf; /* D-TLB-configuration */
|
||||
unsigned long dt_sp_base;
|
||||
unsigned long dt_sp_stride;
|
||||
unsigned long dt_sp_count;
|
||||
unsigned long dt_off_base;
|
||||
unsigned long dt_off_stride;
|
||||
unsigned long dt_off_count;
|
||||
unsigned long dt_loop;
|
||||
};
|
||||
|
||||
/* Might need adjustment to work with 64-bit firmware */
|
||||
struct pdc_iodc { /* PDC_IODC */
|
||||
unsigned char hversion_model;
|
||||
unsigned char hversion;
|
||||
unsigned char spa;
|
||||
unsigned char type;
|
||||
unsigned int sversion_rev:4;
|
||||
unsigned int sversion_model:19;
|
||||
unsigned int sversion_opt:8;
|
||||
unsigned char rev;
|
||||
unsigned char dep;
|
||||
unsigned char features;
|
||||
unsigned char pad1;
|
||||
unsigned int checksum:16;
|
||||
unsigned int length:16;
|
||||
unsigned int pad[15];
|
||||
} __attribute__((aligned(8))) ;
|
||||
|
||||
/* no BLTBs in pa2.0 processors */
|
||||
struct pdc_btlb_info_range {
|
||||
unsigned char res00;
|
||||
unsigned char num_i;
|
||||
unsigned char num_d;
|
||||
unsigned char num_comb;
|
||||
};
|
||||
|
||||
struct pdc_btlb_info { /* PDC_BLOCK_TLB, return of PDC_BTLB_INFO */
|
||||
unsigned int min_size; /* minimum size of BTLB in pages */
|
||||
unsigned int max_size; /* maximum size of BTLB in pages */
|
||||
struct pdc_btlb_info_range fixed_range_info;
|
||||
struct pdc_btlb_info_range variable_range_info;
|
||||
};
|
||||
|
||||
struct pdc_mem_retinfo { /* PDC_MEM/PDC_MEM_MEMINFO (return info) */
|
||||
unsigned long pdt_size;
|
||||
unsigned long pdt_entries;
|
||||
unsigned long pdt_status;
|
||||
unsigned long first_dbe_loc;
|
||||
unsigned long good_mem;
|
||||
};
|
||||
|
||||
struct pdc_mem_read_pdt { /* PDC_MEM/PDC_MEM_READ_PDT (return info) */
|
||||
unsigned long pdt_entries;
|
||||
};
|
||||
|
||||
#ifdef __LP64__
|
||||
struct pdc_memory_table_raddr { /* PDC_MEM/PDC_MEM_TABLE (return info) */
|
||||
unsigned long entries_returned;
|
||||
unsigned long entries_total;
|
||||
};
|
||||
|
||||
struct pdc_memory_table { /* PDC_MEM/PDC_MEM_TABLE (arguments) */
|
||||
unsigned long paddr;
|
||||
unsigned int pages;
|
||||
unsigned int reserved;
|
||||
};
|
||||
#endif /* __LP64__ */
|
||||
|
||||
struct pdc_system_map_mod_info { /* PDC_SYSTEM_MAP/FIND_MODULE */
|
||||
unsigned long mod_addr;
|
||||
unsigned long mod_pgs;
|
||||
unsigned long add_addrs;
|
||||
};
|
||||
|
||||
struct pdc_system_map_addr_info { /* PDC_SYSTEM_MAP/FIND_ADDRESS */
|
||||
unsigned long mod_addr;
|
||||
unsigned long mod_pgs;
|
||||
};
|
||||
|
||||
struct pdc_relocate_info_block { /* PDC_RELOCATE_INFO */
|
||||
unsigned long pdc_size;
|
||||
unsigned long pdc_alignment;
|
||||
unsigned long pdc_address;
|
||||
};
|
||||
|
||||
struct pdc_initiator { /* PDC_INITIATOR */
|
||||
int host_id;
|
||||
int factor;
|
||||
int width;
|
||||
int mode;
|
||||
};
|
||||
|
||||
/* Only used on some pre-PA2.0 boxes */
|
||||
struct pdc_memory_map { /* PDC_MEMORY_MAP */
|
||||
unsigned long hpa; /* mod's register set address */
|
||||
unsigned long more_pgs; /* number of additional I/O pgs */
|
||||
};
|
||||
|
||||
struct pdc_tod {
|
||||
unsigned long tod_sec;
|
||||
unsigned long tod_usec;
|
||||
};
|
||||
|
||||
/* architected results from PDC_PIM/transfer hpmc on a PA1.1 machine */
|
||||
|
||||
struct pdc_hpmc_pim_11 { /* PDC_PIM */
|
||||
unsigned int gr[32];
|
||||
unsigned int cr[32];
|
||||
unsigned int sr[8];
|
||||
unsigned int iasq_back;
|
||||
unsigned int iaoq_back;
|
||||
unsigned int check_type;
|
||||
unsigned int cpu_state;
|
||||
unsigned int rsvd1;
|
||||
unsigned int cache_check;
|
||||
unsigned int tlb_check;
|
||||
unsigned int bus_check;
|
||||
unsigned int assists_check;
|
||||
unsigned int rsvd2;
|
||||
unsigned int assist_state;
|
||||
unsigned int responder_addr;
|
||||
unsigned int requestor_addr;
|
||||
unsigned int path_info;
|
||||
unsigned long long fr[32];
|
||||
};
|
||||
|
||||
/*
|
||||
* architected results from PDC_PIM/transfer hpmc on a PA2.0 machine
|
||||
*
|
||||
* Note that PDC_PIM doesn't care whether or not wide mode was enabled
|
||||
* so the results are different on PA1.1 vs. PA2.0 when in narrow mode.
|
||||
*
|
||||
* Note also that there are unarchitected results available, which
|
||||
* are hversion dependent. Do a "ser pim 0 hpmc" after rebooting, since
|
||||
* the firmware is probably the best way of printing hversion dependent
|
||||
* data.
|
||||
*/
|
||||
|
||||
struct pdc_hpmc_pim_20 { /* PDC_PIM */
|
||||
unsigned long long gr[32];
|
||||
unsigned long long cr[32];
|
||||
unsigned long long sr[8];
|
||||
unsigned long long iasq_back;
|
||||
unsigned long long iaoq_back;
|
||||
unsigned int check_type;
|
||||
unsigned int cpu_state;
|
||||
unsigned int cache_check;
|
||||
unsigned int tlb_check;
|
||||
unsigned int bus_check;
|
||||
unsigned int assists_check;
|
||||
unsigned int assist_state;
|
||||
unsigned int path_info;
|
||||
unsigned long long responder_addr;
|
||||
unsigned long long requestor_addr;
|
||||
unsigned long long fr[32];
|
||||
};
|
||||
|
||||
struct pim_cpu_state_cf {
|
||||
union {
|
||||
unsigned int
|
||||
iqv : 1, /* IIA queue Valid */
|
||||
iqf : 1, /* IIA queue Failure */
|
||||
ipv : 1, /* IPRs Valid */
|
||||
grv : 1, /* GRs Valid */
|
||||
crv : 1, /* CRs Valid */
|
||||
srv : 1, /* SRs Valid */
|
||||
trv : 1, /* CR24 through CR31 valid */
|
||||
pad : 24, /* reserved */
|
||||
td : 1; /* TOC did not cause any damage to the system state */
|
||||
unsigned int val;
|
||||
};
|
||||
};
|
||||
|
||||
struct pdc_toc_pim_11 {
|
||||
unsigned int gr[32];
|
||||
unsigned int cr[32];
|
||||
unsigned int sr[8];
|
||||
unsigned int iasq_back;
|
||||
unsigned int iaoq_back;
|
||||
unsigned int check_type;
|
||||
struct pim_cpu_state_cf cpu_state;
|
||||
};
|
||||
|
||||
struct pdc_toc_pim_20 {
|
||||
unsigned long long gr[32];
|
||||
unsigned long long cr[32];
|
||||
unsigned long long sr[8];
|
||||
unsigned long long iasq_back;
|
||||
unsigned long long iaoq_back;
|
||||
unsigned int check_type;
|
||||
struct pim_cpu_state_cf cpu_state;
|
||||
};
|
||||
|
||||
/* for SpeedyBoot/firm_ctl funtionality */
|
||||
struct pdc_firm_test_get_rtn_block { /* PDC_MODEL/PDC_FIRM_TEST_GET */
|
||||
unsigned long current_tests; /* u_R_addr Raddr_ints[0] */
|
||||
unsigned long tests_supported; /* u_R_addr Raddr_ints[1] */
|
||||
unsigned long default_tests; /* u_R_addr Raddr_ints[2] */
|
||||
};
|
||||
|
||||
#define TORNADO_CPU_ID 0xB
|
||||
#define PCXL_CPU_ID 0xD
|
||||
#define PCXU_CPU_ID 0xE /* U and U+ for all but C-class with bug */
|
||||
#define VR_CPU_ID 0xF
|
||||
#define PCXU_PLUS_CPU_ID 0x10 /* U+ only on C-class with bug */
|
||||
#define PCXW_CPU_ID 0x11
|
||||
#define PCXW_PLUS_CPU_ID 0x12
|
||||
#define PIRANHA_CPU_ID 0x13
|
||||
#define MAKO_CPU_ID 0x14
|
||||
|
||||
#endif /* !defined(__ASSEMBLY__) */
|
||||
|
||||
#endif /* _UAPI_PARISC_PDC_H */
|
||||
24
linux-6.8.1/arch/parisc/include/uapi/asm/posix_types.h
Normal file
24
linux-6.8.1/arch/parisc/include/uapi/asm/posix_types.h
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __ARCH_PARISC_POSIX_TYPES_H
|
||||
#define __ARCH_PARISC_POSIX_TYPES_H
|
||||
|
||||
/*
|
||||
* This file is generally used by user-level software, so you need to
|
||||
* be a little careful about namespace pollution etc. Also, we cannot
|
||||
* assume GCC is being used.
|
||||
*/
|
||||
|
||||
#ifndef __LP64__
|
||||
typedef unsigned short __kernel_mode_t;
|
||||
#define __kernel_mode_t __kernel_mode_t
|
||||
#endif
|
||||
|
||||
typedef unsigned short __kernel_ipc_pid_t;
|
||||
#define __kernel_ipc_pid_t __kernel_ipc_pid_t
|
||||
|
||||
typedef long long __kernel_off64_t;
|
||||
typedef unsigned long long __kernel_ino64_t;
|
||||
|
||||
#include <asm-generic/posix_types.h>
|
||||
|
||||
#endif
|
||||
96
linux-6.8.1/arch/parisc/include/uapi/asm/ptrace.h
Normal file
96
linux-6.8.1/arch/parisc/include/uapi/asm/ptrace.h
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
/* written by Philipp Rumpf, Copyright (C) 1999 SuSE GmbH Nuernberg
|
||||
** Copyright (C) 2000 Grant Grundler, Hewlett-Packard
|
||||
*/
|
||||
#ifndef _UAPI_PARISC_PTRACE_H
|
||||
#define _UAPI_PARISC_PTRACE_H
|
||||
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/* This struct defines the way the registers are stored on the
|
||||
* stack during a system call.
|
||||
*
|
||||
* N.B. gdb/strace care about the size and offsets within this
|
||||
* structure. If you change things, you may break object compatibility
|
||||
* for those applications.
|
||||
*
|
||||
* Please do NOT use this structure for future programs, but use
|
||||
* user_regs_struct (see below) instead.
|
||||
*
|
||||
* It can be accessed through PTRACE_PEEKUSR/PTRACE_POKEUSR only.
|
||||
*/
|
||||
|
||||
struct pt_regs {
|
||||
unsigned long gr[32]; /* PSW is in gr[0] */
|
||||
__u64 fr[32];
|
||||
unsigned long sr[ 8];
|
||||
unsigned long iasq[2];
|
||||
unsigned long iaoq[2];
|
||||
unsigned long cr27;
|
||||
unsigned long pad0; /* available for other uses */
|
||||
unsigned long orig_r28;
|
||||
unsigned long ksp;
|
||||
unsigned long kpc;
|
||||
unsigned long sar; /* CR11 */
|
||||
unsigned long iir; /* CR19 */
|
||||
unsigned long isr; /* CR20 */
|
||||
unsigned long ior; /* CR21 */
|
||||
unsigned long ipsw; /* CR22 */
|
||||
};
|
||||
|
||||
/**
|
||||
* struct user_regs_struct - User general purpose registers
|
||||
*
|
||||
* This is the user-visible general purpose register state structure
|
||||
* which is used to define the elf_gregset_t.
|
||||
*
|
||||
* It can be accessed through PTRACE_GETREGSET with NT_PRSTATUS
|
||||
* and through PTRACE_GETREGS.
|
||||
*/
|
||||
struct user_regs_struct {
|
||||
unsigned long gr[32]; /* PSW is in gr[0] */
|
||||
unsigned long sr[8];
|
||||
unsigned long iaoq[2];
|
||||
unsigned long iasq[2];
|
||||
unsigned long sar; /* CR11 */
|
||||
unsigned long iir; /* CR19 */
|
||||
unsigned long isr; /* CR20 */
|
||||
unsigned long ior; /* CR21 */
|
||||
unsigned long ipsw; /* CR22 */
|
||||
unsigned long cr0;
|
||||
unsigned long cr24, cr25, cr26, cr27, cr28, cr29, cr30, cr31;
|
||||
unsigned long cr8, cr9, cr12, cr13, cr10, cr15;
|
||||
unsigned long _pad[80-64]; /* pad to ELF_NGREG (80) */
|
||||
};
|
||||
|
||||
/**
|
||||
* struct user_fp_struct - User floating point registers
|
||||
*
|
||||
* This is the user-visible floating point register state structure.
|
||||
* It uses the same layout and size as elf_fpregset_t.
|
||||
*
|
||||
* It can be accessed through PTRACE_GETREGSET with NT_PRFPREG
|
||||
* and through PTRACE_GETFPREGS.
|
||||
*/
|
||||
struct user_fp_struct {
|
||||
__u64 fr[32];
|
||||
};
|
||||
|
||||
|
||||
/*
|
||||
* The numbers chosen here are somewhat arbitrary but absolutely MUST
|
||||
* not overlap with any of the number assigned in <linux/ptrace.h>.
|
||||
*
|
||||
* These ones are taken from IA-64 on the assumption that theirs are
|
||||
* the most correct (and we also want to support PTRACE_SINGLEBLOCK
|
||||
* since we have taken branch traps too)
|
||||
*/
|
||||
#define PTRACE_SINGLEBLOCK 12 /* resume execution until next branch */
|
||||
|
||||
#define PTRACE_GETREGS 18
|
||||
#define PTRACE_SETREGS 19
|
||||
#define PTRACE_GETFPREGS 14
|
||||
#define PTRACE_SETFPREGS 15
|
||||
|
||||
#endif /* _UAPI_PARISC_PTRACE_H */
|
||||
33
linux-6.8.1/arch/parisc/include/uapi/asm/sembuf.h
Normal file
33
linux-6.8.1/arch/parisc/include/uapi/asm/sembuf.h
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_SEMBUF_H
|
||||
#define _PARISC_SEMBUF_H
|
||||
|
||||
#include <asm/bitsperlong.h>
|
||||
#include <asm/ipcbuf.h>
|
||||
|
||||
/*
|
||||
* The semid64_ds structure for parisc architecture.
|
||||
* Note extra padding because this structure is passed back and forth
|
||||
* between kernel and user space.
|
||||
*
|
||||
* Pad space is left for:
|
||||
* - 2 miscellaneous 32-bit values
|
||||
*/
|
||||
|
||||
struct semid64_ds {
|
||||
struct ipc64_perm sem_perm; /* permissions .. see ipc.h */
|
||||
#if __BITS_PER_LONG == 64
|
||||
long sem_otime; /* last semop time */
|
||||
long sem_ctime; /* last change time */
|
||||
#else
|
||||
unsigned long sem_otime_high;
|
||||
unsigned long sem_otime; /* last semop time */
|
||||
unsigned long sem_ctime_high;
|
||||
unsigned long sem_ctime; /* last change time */
|
||||
#endif
|
||||
unsigned long sem_nsems; /* no. of semaphores in array */
|
||||
unsigned long __unused1;
|
||||
unsigned long __unused2;
|
||||
};
|
||||
|
||||
#endif /* _PARISC_SEMBUF_H */
|
||||
7
linux-6.8.1/arch/parisc/include/uapi/asm/setup.h
Normal file
7
linux-6.8.1/arch/parisc/include/uapi/asm/setup.h
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_SETUP_H
|
||||
#define _PARISC_SETUP_H
|
||||
|
||||
#define COMMAND_LINE_SIZE 1024
|
||||
|
||||
#endif /* _PARISC_SETUP_H */
|
||||
53
linux-6.8.1/arch/parisc/include/uapi/asm/shmbuf.h
Normal file
53
linux-6.8.1/arch/parisc/include/uapi/asm/shmbuf.h
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_SHMBUF_H
|
||||
#define _PARISC_SHMBUF_H
|
||||
|
||||
#include <asm/bitsperlong.h>
|
||||
#include <asm/ipcbuf.h>
|
||||
#include <asm/posix_types.h>
|
||||
|
||||
/*
|
||||
* The shmid64_ds structure for parisc architecture.
|
||||
* Note extra padding because this structure is passed back and forth
|
||||
* between kernel and user space.
|
||||
*
|
||||
* Pad space is left for:
|
||||
* - 2 miscellaneous 32-bit values
|
||||
*/
|
||||
|
||||
struct shmid64_ds {
|
||||
struct ipc64_perm shm_perm; /* operation perms */
|
||||
#if __BITS_PER_LONG == 64
|
||||
long shm_atime; /* last attach time */
|
||||
long shm_dtime; /* last detach time */
|
||||
long shm_ctime; /* last change time */
|
||||
#else
|
||||
unsigned long shm_atime_high;
|
||||
unsigned long shm_atime; /* last attach time */
|
||||
unsigned long shm_dtime_high;
|
||||
unsigned long shm_dtime; /* last detach time */
|
||||
unsigned long shm_ctime_high;
|
||||
unsigned long shm_ctime; /* last change time */
|
||||
unsigned int __pad4;
|
||||
#endif
|
||||
__kernel_size_t shm_segsz; /* size of segment (bytes) */
|
||||
__kernel_pid_t shm_cpid; /* pid of creator */
|
||||
__kernel_pid_t shm_lpid; /* pid of last operator */
|
||||
unsigned long shm_nattch; /* no. of current attaches */
|
||||
unsigned long __unused1;
|
||||
unsigned long __unused2;
|
||||
};
|
||||
|
||||
struct shminfo64 {
|
||||
unsigned long shmmax;
|
||||
unsigned long shmmin;
|
||||
unsigned long shmmni;
|
||||
unsigned long shmseg;
|
||||
unsigned long shmall;
|
||||
unsigned long __unused1;
|
||||
unsigned long __unused2;
|
||||
unsigned long __unused3;
|
||||
unsigned long __unused4;
|
||||
};
|
||||
|
||||
#endif /* _PARISC_SHMBUF_H */
|
||||
21
linux-6.8.1/arch/parisc/include/uapi/asm/sigcontext.h
Normal file
21
linux-6.8.1/arch/parisc/include/uapi/asm/sigcontext.h
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _ASMPARISC_SIGCONTEXT_H
|
||||
#define _ASMPARISC_SIGCONTEXT_H
|
||||
|
||||
#define PARISC_SC_FLAG_ONSTACK 1<<0
|
||||
#define PARISC_SC_FLAG_IN_SYSCALL 1<<1
|
||||
|
||||
/* We will add more stuff here as it becomes necessary, until we know
|
||||
it works. */
|
||||
struct sigcontext {
|
||||
unsigned long sc_flags;
|
||||
|
||||
unsigned long sc_gr[32]; /* PSW in sc_gr[0] */
|
||||
unsigned long long sc_fr[32]; /* FIXME, do we need other state info? */
|
||||
unsigned long sc_iasq[2];
|
||||
unsigned long sc_iaoq[2];
|
||||
unsigned long sc_sar; /* cr11 */
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
74
linux-6.8.1/arch/parisc/include/uapi/asm/signal.h
Normal file
74
linux-6.8.1/arch/parisc/include/uapi/asm/signal.h
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_ASM_PARISC_SIGNAL_H
|
||||
#define _UAPI_ASM_PARISC_SIGNAL_H
|
||||
|
||||
#define SIGHUP 1
|
||||
#define SIGINT 2
|
||||
#define SIGQUIT 3
|
||||
#define SIGILL 4
|
||||
#define SIGTRAP 5
|
||||
#define SIGABRT 6
|
||||
#define SIGIOT 6
|
||||
#define SIGSTKFLT 7
|
||||
#define SIGFPE 8
|
||||
#define SIGKILL 9
|
||||
#define SIGBUS 10
|
||||
#define SIGSEGV 11
|
||||
#define SIGXCPU 12
|
||||
#define SIGPIPE 13
|
||||
#define SIGALRM 14
|
||||
#define SIGTERM 15
|
||||
#define SIGUSR1 16
|
||||
#define SIGUSR2 17
|
||||
#define SIGCHLD 18
|
||||
#define SIGPWR 19
|
||||
#define SIGVTALRM 20
|
||||
#define SIGPROF 21
|
||||
#define SIGIO 22
|
||||
#define SIGPOLL SIGIO
|
||||
#define SIGWINCH 23
|
||||
#define SIGSTOP 24
|
||||
#define SIGTSTP 25
|
||||
#define SIGCONT 26
|
||||
#define SIGTTIN 27
|
||||
#define SIGTTOU 28
|
||||
#define SIGURG 29
|
||||
#define SIGXFSZ 30
|
||||
#define SIGUNUSED 31
|
||||
#define SIGSYS 31
|
||||
|
||||
/* These should not be considered constants from userland. */
|
||||
#define SIGRTMIN 32
|
||||
#define SIGRTMAX _NSIG
|
||||
|
||||
#define SA_ONSTACK 0x00000001
|
||||
#define SA_RESETHAND 0x00000004
|
||||
#define SA_NOCLDSTOP 0x00000008
|
||||
#define SA_SIGINFO 0x00000010
|
||||
#define SA_NODEFER 0x00000020
|
||||
#define SA_RESTART 0x00000040
|
||||
#define SA_NOCLDWAIT 0x00000080
|
||||
|
||||
#define SA_NOMASK SA_NODEFER
|
||||
#define SA_ONESHOT SA_RESETHAND
|
||||
|
||||
#define MINSIGSTKSZ 2048
|
||||
#define SIGSTKSZ 8192
|
||||
|
||||
#include <asm-generic/signal-defs.h>
|
||||
|
||||
# ifndef __ASSEMBLY__
|
||||
|
||||
# include <linux/types.h>
|
||||
|
||||
/* Avoid too many header ordering problems. */
|
||||
struct siginfo;
|
||||
|
||||
typedef struct sigaltstack {
|
||||
void __user *ss_sp;
|
||||
int ss_flags;
|
||||
__kernel_size_t ss_size;
|
||||
} stack_t;
|
||||
|
||||
#endif /* !__ASSEMBLY */
|
||||
#endif /* _UAPI_ASM_PARISC_SIGNAL_H */
|
||||
158
linux-6.8.1/arch/parisc/include/uapi/asm/socket.h
Normal file
158
linux-6.8.1/arch/parisc/include/uapi/asm/socket.h
Normal file
|
|
@ -0,0 +1,158 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_ASM_SOCKET_H
|
||||
#define _UAPI_ASM_SOCKET_H
|
||||
|
||||
#include <linux/posix_types.h>
|
||||
#include <asm/sockios.h>
|
||||
|
||||
/* For setsockopt(2) */
|
||||
#define SOL_SOCKET 0xffff
|
||||
|
||||
#define SO_DEBUG 0x0001
|
||||
#define SO_REUSEADDR 0x0004
|
||||
#define SO_KEEPALIVE 0x0008
|
||||
#define SO_DONTROUTE 0x0010
|
||||
#define SO_BROADCAST 0x0020
|
||||
#define SO_LINGER 0x0080
|
||||
#define SO_OOBINLINE 0x0100
|
||||
#define SO_REUSEPORT 0x0200
|
||||
#define SO_SNDBUF 0x1001
|
||||
#define SO_RCVBUF 0x1002
|
||||
#define SO_SNDBUFFORCE 0x100a
|
||||
#define SO_RCVBUFFORCE 0x100b
|
||||
#define SO_SNDLOWAT 0x1003
|
||||
#define SO_RCVLOWAT 0x1004
|
||||
#define SO_SNDTIMEO_OLD 0x1005
|
||||
#define SO_RCVTIMEO_OLD 0x1006
|
||||
#define SO_ERROR 0x1007
|
||||
#define SO_TYPE 0x1008
|
||||
#define SO_PROTOCOL 0x1028
|
||||
#define SO_DOMAIN 0x1029
|
||||
#define SO_PEERNAME 0x2000
|
||||
|
||||
#define SO_NO_CHECK 0x400b
|
||||
#define SO_PRIORITY 0x400c
|
||||
#define SO_BSDCOMPAT 0x400e
|
||||
#define SO_PASSCRED 0x4010
|
||||
#define SO_PEERCRED 0x4011
|
||||
|
||||
/* Security levels - as per NRL IPv6 - don't actually do anything */
|
||||
#define SO_SECURITY_AUTHENTICATION 0x4016
|
||||
#define SO_SECURITY_ENCRYPTION_TRANSPORT 0x4017
|
||||
#define SO_SECURITY_ENCRYPTION_NETWORK 0x4018
|
||||
|
||||
#define SO_BINDTODEVICE 0x4019
|
||||
|
||||
/* Socket filtering */
|
||||
#define SO_ATTACH_FILTER 0x401a
|
||||
#define SO_DETACH_FILTER 0x401b
|
||||
#define SO_GET_FILTER SO_ATTACH_FILTER
|
||||
|
||||
#define SO_ACCEPTCONN 0x401c
|
||||
|
||||
#define SO_PEERSEC 0x401d
|
||||
#define SO_PASSSEC 0x401e
|
||||
|
||||
#define SO_MARK 0x401f
|
||||
|
||||
#define SO_RXQ_OVFL 0x4021
|
||||
|
||||
#define SO_WIFI_STATUS 0x4022
|
||||
#define SCM_WIFI_STATUS SO_WIFI_STATUS
|
||||
#define SO_PEEK_OFF 0x4023
|
||||
|
||||
/* Instruct lower device to use last 4-bytes of skb data as FCS */
|
||||
#define SO_NOFCS 0x4024
|
||||
|
||||
#define SO_LOCK_FILTER 0x4025
|
||||
|
||||
#define SO_SELECT_ERR_QUEUE 0x4026
|
||||
|
||||
#define SO_BUSY_POLL 0x4027
|
||||
|
||||
#define SO_MAX_PACING_RATE 0x4028
|
||||
|
||||
#define SO_BPF_EXTENSIONS 0x4029
|
||||
|
||||
#define SO_INCOMING_CPU 0x402A
|
||||
|
||||
#define SO_ATTACH_BPF 0x402B
|
||||
#define SO_DETACH_BPF SO_DETACH_FILTER
|
||||
|
||||
#define SO_ATTACH_REUSEPORT_CBPF 0x402C
|
||||
#define SO_ATTACH_REUSEPORT_EBPF 0x402D
|
||||
|
||||
#define SO_CNX_ADVICE 0x402E
|
||||
|
||||
#define SCM_TIMESTAMPING_OPT_STATS 0x402F
|
||||
|
||||
#define SO_MEMINFO 0x4030
|
||||
|
||||
#define SO_INCOMING_NAPI_ID 0x4031
|
||||
|
||||
#define SO_COOKIE 0x4032
|
||||
|
||||
#define SCM_TIMESTAMPING_PKTINFO 0x4033
|
||||
|
||||
#define SO_PEERGROUPS 0x4034
|
||||
|
||||
#define SO_ZEROCOPY 0x4035
|
||||
|
||||
#define SO_TXTIME 0x4036
|
||||
#define SCM_TXTIME SO_TXTIME
|
||||
|
||||
#define SO_BINDTOIFINDEX 0x4037
|
||||
|
||||
#define SO_TIMESTAMP_OLD 0x4012
|
||||
#define SO_TIMESTAMPNS_OLD 0x4013
|
||||
#define SO_TIMESTAMPING_OLD 0x4020
|
||||
|
||||
#define SO_TIMESTAMP_NEW 0x4038
|
||||
#define SO_TIMESTAMPNS_NEW 0x4039
|
||||
#define SO_TIMESTAMPING_NEW 0x403A
|
||||
|
||||
#define SO_RCVTIMEO_NEW 0x4040
|
||||
#define SO_SNDTIMEO_NEW 0x4041
|
||||
|
||||
#define SO_DETACH_REUSEPORT_BPF 0x4042
|
||||
|
||||
#define SO_PREFER_BUSY_POLL 0x4043
|
||||
#define SO_BUSY_POLL_BUDGET 0x4044
|
||||
|
||||
#define SO_NETNS_COOKIE 0x4045
|
||||
|
||||
#define SO_BUF_LOCK 0x4046
|
||||
|
||||
#define SO_RESERVE_MEM 0x4047
|
||||
|
||||
#define SO_TXREHASH 0x4048
|
||||
|
||||
#define SO_RCVMARK 0x4049
|
||||
|
||||
#define SO_PASSPIDFD 0x404A
|
||||
#define SO_PEERPIDFD 0x404B
|
||||
|
||||
#if !defined(__KERNEL__)
|
||||
|
||||
#if __BITS_PER_LONG == 64
|
||||
#define SO_TIMESTAMP SO_TIMESTAMP_OLD
|
||||
#define SO_TIMESTAMPNS SO_TIMESTAMPNS_OLD
|
||||
#define SO_TIMESTAMPING SO_TIMESTAMPING_OLD
|
||||
#define SO_RCVTIMEO SO_RCVTIMEO_OLD
|
||||
#define SO_SNDTIMEO SO_SNDTIMEO_OLD
|
||||
#else
|
||||
#define SO_TIMESTAMP (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMP_OLD : SO_TIMESTAMP_NEW)
|
||||
#define SO_TIMESTAMPNS (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPNS_OLD : SO_TIMESTAMPNS_NEW)
|
||||
#define SO_TIMESTAMPING (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_TIMESTAMPING_OLD : SO_TIMESTAMPING_NEW)
|
||||
|
||||
#define SO_RCVTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_RCVTIMEO_OLD : SO_RCVTIMEO_NEW)
|
||||
#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)
|
||||
#endif
|
||||
|
||||
#define SCM_TIMESTAMP SO_TIMESTAMP
|
||||
#define SCM_TIMESTAMPNS SO_TIMESTAMPNS
|
||||
#define SCM_TIMESTAMPING SO_TIMESTAMPING
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* _UAPI_ASM_SOCKET_H */
|
||||
68
linux-6.8.1/arch/parisc/include/uapi/asm/stat.h
Normal file
68
linux-6.8.1/arch/parisc/include/uapi/asm/stat.h
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_STAT_H
|
||||
#define _PARISC_STAT_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
struct stat {
|
||||
unsigned int st_dev; /* dev_t is 32 bits on parisc */
|
||||
unsigned int st_ino; /* 32 bits */
|
||||
unsigned short st_mode; /* 16 bits */
|
||||
unsigned short st_nlink; /* 16 bits */
|
||||
unsigned short st_reserved1; /* old st_uid */
|
||||
unsigned short st_reserved2; /* old st_gid */
|
||||
unsigned int st_rdev;
|
||||
signed int st_size;
|
||||
signed int st_atime;
|
||||
unsigned int st_atime_nsec;
|
||||
signed int st_mtime;
|
||||
unsigned int st_mtime_nsec;
|
||||
signed int st_ctime;
|
||||
unsigned int st_ctime_nsec;
|
||||
int st_blksize;
|
||||
int st_blocks;
|
||||
unsigned int __unused1; /* ACL stuff */
|
||||
unsigned int __unused2; /* network */
|
||||
unsigned int __unused3; /* network */
|
||||
unsigned int __unused4; /* cnodes */
|
||||
unsigned short __unused5; /* netsite */
|
||||
short st_fstype;
|
||||
unsigned int st_realdev;
|
||||
unsigned short st_basemode;
|
||||
unsigned short st_spareshort;
|
||||
unsigned int st_uid;
|
||||
unsigned int st_gid;
|
||||
unsigned int st_spare4[3];
|
||||
};
|
||||
|
||||
#define STAT_HAVE_NSEC
|
||||
|
||||
/* This is the struct that 32-bit userspace applications are expecting.
|
||||
* How 64-bit apps are going to be compiled, I have no idea. But at least
|
||||
* this way, we don't have a wrapper in the kernel.
|
||||
*/
|
||||
struct stat64 {
|
||||
unsigned long long st_dev;
|
||||
unsigned int __pad1;
|
||||
|
||||
unsigned int __st_ino; /* Not actually filled in */
|
||||
unsigned int st_mode;
|
||||
unsigned int st_nlink;
|
||||
unsigned int st_uid;
|
||||
unsigned int st_gid;
|
||||
unsigned long long st_rdev;
|
||||
unsigned int __pad2;
|
||||
signed long long st_size;
|
||||
signed int st_blksize;
|
||||
|
||||
signed long long st_blocks;
|
||||
signed int st_atime;
|
||||
unsigned int st_atime_nsec;
|
||||
signed int st_mtime;
|
||||
unsigned int st_mtime_nsec;
|
||||
signed int st_ctime;
|
||||
unsigned int st_ctime_nsec;
|
||||
unsigned long long st_ino;
|
||||
};
|
||||
|
||||
#endif
|
||||
8
linux-6.8.1/arch/parisc/include/uapi/asm/statfs.h
Normal file
8
linux-6.8.1/arch/parisc/include/uapi/asm/statfs.h
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _PARISC_STATFS_H
|
||||
#define _PARISC_STATFS_H
|
||||
|
||||
#define __statfs_word long
|
||||
#include <asm-generic/statfs.h>
|
||||
|
||||
#endif
|
||||
149
linux-6.8.1/arch/parisc/include/uapi/asm/termbits.h
Normal file
149
linux-6.8.1/arch/parisc/include/uapi/asm/termbits.h
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef __ARCH_PARISC_TERMBITS_H__
|
||||
#define __ARCH_PARISC_TERMBITS_H__
|
||||
|
||||
#include <asm-generic/termbits-common.h>
|
||||
|
||||
typedef unsigned int tcflag_t;
|
||||
|
||||
#define NCCS 19
|
||||
struct termios {
|
||||
tcflag_t c_iflag; /* input mode flags */
|
||||
tcflag_t c_oflag; /* output mode flags */
|
||||
tcflag_t c_cflag; /* control mode flags */
|
||||
tcflag_t c_lflag; /* local mode flags */
|
||||
cc_t c_line; /* line discipline */
|
||||
cc_t c_cc[NCCS]; /* control characters */
|
||||
};
|
||||
|
||||
struct termios2 {
|
||||
tcflag_t c_iflag; /* input mode flags */
|
||||
tcflag_t c_oflag; /* output mode flags */
|
||||
tcflag_t c_cflag; /* control mode flags */
|
||||
tcflag_t c_lflag; /* local mode flags */
|
||||
cc_t c_line; /* line discipline */
|
||||
cc_t c_cc[NCCS]; /* control characters */
|
||||
speed_t c_ispeed; /* input speed */
|
||||
speed_t c_ospeed; /* output speed */
|
||||
};
|
||||
|
||||
struct ktermios {
|
||||
tcflag_t c_iflag; /* input mode flags */
|
||||
tcflag_t c_oflag; /* output mode flags */
|
||||
tcflag_t c_cflag; /* control mode flags */
|
||||
tcflag_t c_lflag; /* local mode flags */
|
||||
cc_t c_line; /* line discipline */
|
||||
cc_t c_cc[NCCS]; /* control characters */
|
||||
speed_t c_ispeed; /* input speed */
|
||||
speed_t c_ospeed; /* output speed */
|
||||
};
|
||||
|
||||
/* c_cc characters */
|
||||
#define VINTR 0
|
||||
#define VQUIT 1
|
||||
#define VERASE 2
|
||||
#define VKILL 3
|
||||
#define VEOF 4
|
||||
#define VTIME 5
|
||||
#define VMIN 6
|
||||
#define VSWTC 7
|
||||
#define VSTART 8
|
||||
#define VSTOP 9
|
||||
#define VSUSP 10
|
||||
#define VEOL 11
|
||||
#define VREPRINT 12
|
||||
#define VDISCARD 13
|
||||
#define VWERASE 14
|
||||
#define VLNEXT 15
|
||||
#define VEOL2 16
|
||||
|
||||
/* c_iflag bits */
|
||||
#define IUCLC 0x0200
|
||||
#define IXON 0x0400
|
||||
#define IXOFF 0x1000
|
||||
#define IMAXBEL 0x4000
|
||||
#define IUTF8 0x8000
|
||||
|
||||
/* c_oflag bits */
|
||||
#define OLCUC 0x00002
|
||||
#define ONLCR 0x00004
|
||||
#define NLDLY 0x00100
|
||||
#define NL0 0x00000
|
||||
#define NL1 0x00100
|
||||
#define CRDLY 0x00600
|
||||
#define CR0 0x00000
|
||||
#define CR1 0x00200
|
||||
#define CR2 0x00400
|
||||
#define CR3 0x00600
|
||||
#define TABDLY 0x01800
|
||||
#define TAB0 0x00000
|
||||
#define TAB1 0x00800
|
||||
#define TAB2 0x01000
|
||||
#define TAB3 0x01800
|
||||
#define XTABS 0x01800
|
||||
#define BSDLY 0x02000
|
||||
#define BS0 0x00000
|
||||
#define BS1 0x02000
|
||||
#define VTDLY 0x04000
|
||||
#define VT0 0x00000
|
||||
#define VT1 0x04000
|
||||
#define FFDLY 0x08000
|
||||
#define FF0 0x00000
|
||||
#define FF1 0x08000
|
||||
|
||||
/* c_cflag bit meaning */
|
||||
#define CBAUD 0x0000100f
|
||||
#define CSIZE 0x00000030
|
||||
#define CS5 0x00000000
|
||||
#define CS6 0x00000010
|
||||
#define CS7 0x00000020
|
||||
#define CS8 0x00000030
|
||||
#define CSTOPB 0x00000040
|
||||
#define CREAD 0x00000080
|
||||
#define PARENB 0x00000100
|
||||
#define PARODD 0x00000200
|
||||
#define HUPCL 0x00000400
|
||||
#define CLOCAL 0x00000800
|
||||
#define CBAUDEX 0x00001000
|
||||
#define BOTHER 0x00001000
|
||||
#define B57600 0x00001001
|
||||
#define B115200 0x00001002
|
||||
#define B230400 0x00001003
|
||||
#define B460800 0x00001004
|
||||
#define B500000 0x00001005
|
||||
#define B576000 0x00001006
|
||||
#define B921600 0x00001007
|
||||
#define B1000000 0x00001008
|
||||
#define B1152000 0x00001009
|
||||
#define B1500000 0x0000100a
|
||||
#define B2000000 0x0000100b
|
||||
#define B2500000 0x0000100c
|
||||
#define B3000000 0x0000100d
|
||||
#define B3500000 0x0000100e
|
||||
#define B4000000 0x0000100f
|
||||
#define CIBAUD 0x100f0000 /* input baud rate */
|
||||
|
||||
/* c_lflag bits */
|
||||
#define ISIG 0x00001
|
||||
#define ICANON 0x00002
|
||||
#define XCASE 0x00004
|
||||
#define ECHO 0x00008
|
||||
#define ECHOE 0x00010
|
||||
#define ECHOK 0x00020
|
||||
#define ECHONL 0x00040
|
||||
#define NOFLSH 0x00080
|
||||
#define TOSTOP 0x00100
|
||||
#define ECHOCTL 0x00200
|
||||
#define ECHOPRT 0x00400
|
||||
#define ECHOKE 0x00800
|
||||
#define FLUSHO 0x01000
|
||||
#define PENDIN 0x04000
|
||||
#define IEXTEN 0x08000
|
||||
#define EXTPROC 0x10000
|
||||
|
||||
/* tcsetattr uses these */
|
||||
#define TCSANOW 0
|
||||
#define TCSADRAIN 1
|
||||
#define TCSAFLUSH 2
|
||||
|
||||
#endif
|
||||
13
linux-6.8.1/arch/parisc/include/uapi/asm/unistd.h
Normal file
13
linux-6.8.1/arch/parisc/include/uapi/asm/unistd.h
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
|
||||
#ifndef _UAPI_ASM_PARISC_UNISTD_H_
|
||||
#define _UAPI_ASM_PARISC_UNISTD_H_
|
||||
|
||||
#ifdef __LP64__
|
||||
#include <asm/unistd_64.h>
|
||||
#else
|
||||
#include <asm/unistd_32.h>
|
||||
#endif
|
||||
|
||||
#define LINUX_GATEWAY_ADDR 0x100
|
||||
|
||||
#endif /* _UAPI_ASM_PARISC_UNISTD_H_ */
|
||||
Loading…
Add table
Add a link
Reference in a new issue