1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Copyright (C) 2002 Peter Bergner <bergner@vnet.ibm.com>, IBM 4 * Copyright (C) 2005 Benjamin Herrenschmidy <benh@kernel.crashing.org>, 5 * IBM Corp. 6 */ 7 #ifndef _ASM_POWERPC_VDSO_ARCH_DATA_H 8 #define _ASM_POWERPC_VDSO_ARCH_DATA_H 9 10 #include <linux/unistd.h> 11 #include <linux/types.h> 12 13 #define SYSCALL_MAP_SIZE ((NR_syscalls + 31) / 32) 14 15 #ifdef CONFIG_PPC64 16 17 struct vdso_arch_data { 18 __u64 tb_ticks_per_sec; /* Timebase tics / sec */ 19 __u32 dcache_block_size; /* L1 d-cache block size */ 20 __u32 icache_block_size; /* L1 i-cache block size */ 21 __u32 dcache_log_block_size; /* L1 d-cache log block size */ 22 __u32 icache_log_block_size; /* L1 i-cache log block size */ 23 __u32 syscall_map[SYSCALL_MAP_SIZE]; /* Map of syscalls */ 24 __u32 compat_syscall_map[SYSCALL_MAP_SIZE]; /* Map of compat syscalls */ 25 }; 26 27 #else /* CONFIG_PPC64 */ 28 29 struct vdso_arch_data { 30 __u64 tb_ticks_per_sec; /* Timebase tics / sec */ 31 __u32 syscall_map[SYSCALL_MAP_SIZE]; /* Map of syscalls */ 32 __u32 compat_syscall_map[0]; /* No compat syscalls on PPC32 */ 33 }; 34 35 #endif /* CONFIG_PPC64 */ 36 37 #endif /* _ASM_POWERPC_VDSO_ARCH_DATA_H */ 38