microblaze_v8: headers files entry.h current.h mman.h registers.h sembuf.h
Reviewed-by: Ingo Molnar <mingo@elte.hu> Acked-by: John Linn <john.linn@xilinx.com> Acked-by: Stephen Neuendorffer <stephen.neuendorffer@xilinx.com> Acked-by: John Williams <john.williams@petalogix.com> Signed-off-by: Michal Simek <monstr@monstr.eu>
This commit is contained in:
Родитель
aa683ff145
Коммит
4115ac8381
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Atmark Techno, Inc.
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*/
|
||||
|
||||
#ifndef _ASM_MICROBLAZE_CURRENT_H
|
||||
#define _ASM_MICROBLAZE_CURRENT_H
|
||||
|
||||
# ifndef __ASSEMBLY__
|
||||
/*
|
||||
* Dedicate r31 to keeping the current task pointer
|
||||
*/
|
||||
register struct task_struct *current asm("r31");
|
||||
|
||||
# define get_current() current
|
||||
# endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_CURRENT_H */
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* Definitions used by low-level trap handlers
|
||||
*
|
||||
* Copyright (C) 2008 Michal Simek
|
||||
* Copyright (C) 2007 - 2008 PetaLogix
|
||||
* Copyright (C) 2007 John Williams <john.williams@petalogix.com>
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General
|
||||
* Public License. See the file COPYING in the main directory of this
|
||||
* archive for more details.
|
||||
*/
|
||||
|
||||
#ifndef _ASM_MICROBLAZE_ENTRY_H
|
||||
#define _ASM_MICROBLAZE_ENTRY_H
|
||||
|
||||
#include <asm/percpu.h>
|
||||
#include <asm/ptrace.h>
|
||||
|
||||
/*
|
||||
* These are per-cpu variables required in entry.S, among other
|
||||
* places
|
||||
*/
|
||||
|
||||
#define PER_CPU(var) per_cpu__##var
|
||||
|
||||
# ifndef __ASSEMBLY__
|
||||
DECLARE_PER_CPU(unsigned int, KSP); /* Saved kernel stack pointer */
|
||||
DECLARE_PER_CPU(unsigned int, KM); /* Kernel/user mode */
|
||||
DECLARE_PER_CPU(unsigned int, ENTRY_SP); /* Saved SP on kernel entry */
|
||||
DECLARE_PER_CPU(unsigned int, R11_SAVE); /* Temp variable for entry */
|
||||
DECLARE_PER_CPU(unsigned int, CURRENT_SAVE); /* Saved current pointer */
|
||||
DECLARE_PER_CPU(unsigned int, SYSCALL_SAVE); /* Saved syscall number */
|
||||
# endif /* __ASSEMBLY__ */
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_ENTRY_H */
|
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Atmark Techno, Inc.
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*/
|
||||
|
||||
#ifndef _ASM_MICROBLAZE_MMAN_H
|
||||
#define _ASM_MICROBLAZE_MMAN_H
|
||||
|
||||
#include <asm-generic/mman.h>
|
||||
|
||||
#define MAP_GROWSDOWN 0x0100 /* stack-like segment */
|
||||
#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_POPULATE 0x8000 /* populate (prefault) pagetables */
|
||||
#define MAP_NONBLOCK 0x10000 /* do not block on IO */
|
||||
|
||||
#define MCL_CURRENT 1 /* lock all current mappings */
|
||||
#define MCL_FUTURE 2 /* lock all future mappings */
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_MMAN_H */
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
* Copyright (C) 2008 Michal Simek
|
||||
* Copyright (C) 2008 PetaLogix
|
||||
* Copyright (C) 2006 Atmark Techno, Inc.
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*/
|
||||
|
||||
#ifndef _ASM_MICROBLAZE_REGISTERS_H
|
||||
#define _ASM_MICROBLAZE_REGISTERS_H
|
||||
|
||||
#define MSR_BE (1<<0) /* 0x001 */
|
||||
#define MSR_IE (1<<1) /* 0x002 */
|
||||
#define MSR_C (1<<2) /* 0x004 */
|
||||
#define MSR_BIP (1<<3) /* 0x008 */
|
||||
#define MSR_FSL (1<<4) /* 0x010 */
|
||||
#define MSR_ICE (1<<5) /* 0x020 */
|
||||
#define MSR_DZ (1<<6) /* 0x040 */
|
||||
#define MSR_DCE (1<<7) /* 0x080 */
|
||||
#define MSR_EE (1<<8) /* 0x100 */
|
||||
#define MSR_EIP (1<<9) /* 0x200 */
|
||||
#define MSR_CC (1<<31)
|
||||
|
||||
/* Floating Point Status Register (FSR) Bits */
|
||||
#define FSR_IO (1<<4) /* Invalid operation */
|
||||
#define FSR_DZ (1<<3) /* Divide-by-zero */
|
||||
#define FSR_OF (1<<2) /* Overflow */
|
||||
#define FSR_UF (1<<1) /* Underflow */
|
||||
#define FSR_DO (1<<0) /* Denormalized operand error */
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_REGISTERS_H */
|
|
@ -0,0 +1,34 @@
|
|||
/*
|
||||
* Copyright (C) 2006 Atmark Techno, Inc.
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*/
|
||||
|
||||
#ifndef _ASM_MICROBLAZE_SEMBUF_H
|
||||
#define _ASM_MICROBLAZE_SEMBUF_H
|
||||
|
||||
/*
|
||||
* The semid64_ds structure for microblaze architecture.
|
||||
* Note extra padding because this structure is passed back and forth
|
||||
* between kernel and user space.
|
||||
*
|
||||
* Pad space is left for:
|
||||
* - 64-bit time_t to solve y2038 problem
|
||||
* - 2 miscellaneous 32-bit values
|
||||
*/
|
||||
|
||||
struct semid64_ds {
|
||||
struct ipc64_perm sem_perm; /* permissions .. see ipc.h */
|
||||
__kernel_time_t sem_otime; /* last semop time */
|
||||
unsigned long __unused1;
|
||||
__kernel_time_t sem_ctime; /* last change time */
|
||||
unsigned long __unused2;
|
||||
unsigned long sem_nsems; /* no. of semaphores in array */
|
||||
unsigned long __unused3;
|
||||
unsigned long __unused4;
|
||||
};
|
||||
|
||||
|
||||
#endif /* _ASM_MICROBLAZE_SEMBUF_H */
|
Загрузка…
Ссылка в новой задаче