Файловый менеджер - Редактировать - /var/www/html/uapi.zip
Ðазад
PK ! ��'#� � asm/unistd.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Syscall support for Hexagon * * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ /* * The kernel pulls this unistd.h in three different ways: * 1. the "normal" way which gets all the __NR defines * 2. with __SYSCALL defined to produce function declarations * 3. with __SYSCALL defined to produce syscall table initialization * See also: syscalltab.c */ #define sys_mmap2 sys_mmap_pgoff #define __ARCH_WANT_RENAMEAT #define __ARCH_WANT_STAT64 #define __ARCH_WANT_SET_GET_RLIMIT #define __ARCH_WANT_SYS_EXECVE #define __ARCH_WANT_SYS_CLONE #define __ARCH_WANT_SYS_VFORK #define __ARCH_WANT_SYS_FORK #define __ARCH_WANT_TIME32_SYSCALLS #define __ARCH_WANT_SYNC_FILE_RANGE2 #include <asm-generic/unistd.h> PK ! ���� asm/setup.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_SETUP_H #define _ASM_SETUP_H #ifdef __KERNEL__ #include <linux/init.h> #else #define __init #endif #include <asm-generic/setup.h> extern char external_cmdline_buffer; void __init setup_arch_memory(void); #endif PK ! :� ; ; asm/Kbuildnu �[��� # SPDX-License-Identifier: GPL-2.0 generic-y += ucontext.h PK ! �'}B� � asm/user.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ #ifndef HEXAGON_ASM_USER_H #define HEXAGON_ASM_USER_H /* * Layout for registers passed in elf core dumps to userspace. * * Basically a rearranged subset of "pt_regs". * * Interested parties: libc, gdb... */ struct user_regs_struct { unsigned long r0; unsigned long r1; unsigned long r2; unsigned long r3; unsigned long r4; unsigned long r5; unsigned long r6; unsigned long r7; unsigned long r8; unsigned long r9; unsigned long r10; unsigned long r11; unsigned long r12; unsigned long r13; unsigned long r14; unsigned long r15; unsigned long r16; unsigned long r17; unsigned long r18; unsigned long r19; unsigned long r20; unsigned long r21; unsigned long r22; unsigned long r23; unsigned long r24; unsigned long r25; unsigned long r26; unsigned long r27; unsigned long r28; unsigned long r29; unsigned long r30; unsigned long r31; unsigned long sa0; unsigned long lc0; unsigned long sa1; unsigned long lc1; unsigned long m0; unsigned long m1; unsigned long usr; unsigned long p3_0; unsigned long gp; unsigned long ugp; unsigned long pc; unsigned long cause; unsigned long badva; #if CONFIG_HEXAGON_ARCH_VERSION < 4 unsigned long pad1; /* pad out to 48 words total */ unsigned long pad2; /* pad out to 48 words total */ unsigned long pad3; /* pad out to 48 words total */ #else unsigned long cs0; unsigned long cs1; unsigned long pad1; /* pad out to 48 words total */ #endif }; #endif PK ! �u7u� � asm/signal.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_SIGNAL_H #define _ASM_SIGNAL_H extern unsigned long __rt_sigtramp_template[2]; void do_signal(struct pt_regs *regs); #include <asm-generic/signal.h> #endif PK ! �}�� � asm/ptrace.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Ptrace definitions for the Hexagon architecture * * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_PTRACE_H #define _ASM_PTRACE_H #include <asm/registers.h> #define instruction_pointer(regs) pt_elr(regs) #define user_stack_pointer(regs) ((regs)->r29) #define profile_pc(regs) instruction_pointer(regs) /* kprobe-based event tracer support */ extern int regs_query_register_offset(const char *name); extern const char *regs_query_register_name(unsigned int offset); #define current_pt_regs() \ ((struct pt_regs *) \ ((unsigned long)current_thread_info() + THREAD_SIZE) - 1) #if CONFIG_HEXAGON_ARCH_VERSION >= 4 #define arch_has_single_step() (1) #endif #endif PK ! ��4� � asm/param.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_PARAM_H #define _ASM_PARAM_H #define EXEC_PAGESIZE 16384 #include <asm-generic/param.h> #endif PK ! M��u# # asm/byteorder.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_BYTEORDER_H #define _ASM_BYTEORDER_H #if defined(__GNUC__) && !defined(__STRICT_ANSI__) || defined(__KERNEL__) # define __BYTEORDER_HAS_U64__ #endif #include <linux/byteorder/little_endian.h> #endif /* _ASM_BYTEORDER_H */ PK ! �nf� � asm/sigcontext.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_SIGCONTEXT_H #define _ASM_SIGCONTEXT_H #include <asm/user.h> /* * Signal context structure - contains all info to do with the state * before the signal handler was invoked. Note: only add new entries * to the end of the structure. */ struct sigcontext { struct user_regs_struct sc_regs; } __aligned(8); #endif PK ! �lu� asm/registers.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Register definitions for the Hexagon architecture */ #ifndef _ASM_REGISTERS_H #define _ASM_REGISTERS_H #ifndef __ASSEMBLY__ /* See kernel/entry.S for further documentation. */ /* * Entry code copies the event record out of guest registers into * this structure (which is on the stack). */ struct hvm_event_record { unsigned long vmel; /* Event Linkage (return address) */ unsigned long vmest; /* Event context - pre-event SSR values */ unsigned long vmpsp; /* Previous stack pointer */ unsigned long vmbadva; /* Bad virtual address for addressing events */ }; struct pt_regs { long restart_r0; /* R0 checkpoint for syscall restart */ long syscall_nr; /* Only used in system calls */ union { struct { unsigned long usr; unsigned long preds; }; long long int predsusr; }; union { struct { unsigned long m0; unsigned long m1; }; long long int m1m0; }; union { struct { unsigned long sa1; unsigned long lc1; }; long long int lc1sa1; }; union { struct { unsigned long sa0; unsigned long lc0; }; long long int lc0sa0; }; union { struct { unsigned long ugp; unsigned long gp; }; long long int gpugp; }; union { struct { unsigned long cs0; unsigned long cs1; }; long long int cs1cs0; }; /* * Be extremely careful with rearranging these, if at all. Some code * assumes the 32 registers exist exactly like this in memory; * e.g. kernel/ptrace.c * e.g. kernel/signal.c (restore_sigcontext) */ union { struct { unsigned long r00; unsigned long r01; }; long long int r0100; }; union { struct { unsigned long r02; unsigned long r03; }; long long int r0302; }; union { struct { unsigned long r04; unsigned long r05; }; long long int r0504; }; union { struct { unsigned long r06; unsigned long r07; }; long long int r0706; }; union { struct { unsigned long r08; unsigned long r09; }; long long int r0908; }; union { struct { unsigned long r10; unsigned long r11; }; long long int r1110; }; union { struct { unsigned long r12; unsigned long r13; }; long long int r1312; }; union { struct { unsigned long r14; unsigned long r15; }; long long int r1514; }; union { struct { unsigned long r16; unsigned long r17; }; long long int r1716; }; union { struct { unsigned long r18; unsigned long r19; }; long long int r1918; }; union { struct { unsigned long r20; unsigned long r21; }; long long int r2120; }; union { struct { unsigned long r22; unsigned long r23; }; long long int r2322; }; union { struct { unsigned long r24; unsigned long r25; }; long long int r2524; }; union { struct { unsigned long r26; unsigned long r27; }; long long int r2726; }; union { struct { unsigned long r28; unsigned long r29; }; long long int r2928; }; union { struct { unsigned long r30; unsigned long r31; }; long long int r3130; }; /* VM dispatch pushes event record onto stack - we can build on it */ struct hvm_event_record hvmer; }; /* Defines to conveniently access the values */ /* * As of the VM spec 0.5, these registers are now set/retrieved via a * VM call. On the in-bound side, we just fetch the values * at the entry points and stuff them into the old record in pt_regs. * However, on the outbound side, probably at VM rte, we set the * registers back. */ #define pt_elr(regs) ((regs)->hvmer.vmel) #define pt_set_elr(regs, val) ((regs)->hvmer.vmel = (val)) #define pt_cause(regs) ((regs)->hvmer.vmest & (HVM_VMEST_CAUSE_MSK)) #define user_mode(regs) \ (((regs)->hvmer.vmest & (HVM_VMEST_UM_MSK << HVM_VMEST_UM_SFT)) != 0) #define ints_enabled(regs) \ (((regs)->hvmer.vmest & (HVM_VMEST_IE_MSK << HVM_VMEST_IE_SFT)) != 0) #define pt_psp(regs) ((regs)->hvmer.vmpsp) #define pt_badva(regs) ((regs)->hvmer.vmbadva) #define pt_set_singlestep(regs) ((regs)->hvmer.vmest |= (1<<HVM_VMEST_SS_SFT)) #define pt_clr_singlestep(regs) ((regs)->hvmer.vmest &= ~(1<<HVM_VMEST_SS_SFT)) #define pt_set_rte_sp(regs, sp) do {\ pt_psp(regs) = (regs)->r29 = (sp);\ } while (0) #define pt_set_kmode(regs) \ (regs)->hvmer.vmest = (HVM_VMEST_IE_MSK << HVM_VMEST_IE_SFT) #define pt_set_usermode(regs) \ (regs)->hvmer.vmest = (HVM_VMEST_UM_MSK << HVM_VMEST_UM_SFT) \ | (HVM_VMEST_IE_MSK << HVM_VMEST_IE_SFT) #endif /* ifndef __ASSEMBLY */ #endif PK ! �]ˀ� � asm/swab.hnu �[��� /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ /* * Copyright (c) 2010-2011, The Linux Foundation. All rights reserved. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 and * only version 2 as published by the Free Software Foundation. * * 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., 51 Franklin Street, Fifth Floor, Boston, MA * 02110-1301, USA. */ #ifndef _ASM_SWAB_H #define _ASM_SWAB_H #define __SWAB_64_THRU_32__ #endif PK ! ��'#� � asm/unistd.hnu �[��� PK ! ���� asm/setup.hnu �[��� PK ! :� ; ; d asm/Kbuildnu �[��� PK ! �'}B� � � asm/user.hnu �[��� PK ! �u7u� � � asm/signal.hnu �[��� PK ! �}�� � asm/ptrace.hnu �[��� PK ! ��4� � asm/param.hnu �[��� PK ! M��u# # � asm/byteorder.hnu �[��� PK ! �nf� � F# asm/sigcontext.hnu �[��� PK ! �lu� ( asm/registers.hnu �[��� PK ! �]ˀ� � T: asm/swab.hnu �[��� PK F >