404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.14.15.62: ~ $
/*
 * Copyright (C) 2013 Altera Corporation
 * Copyright (C) 2010 Tobias Klauser <tklauser@distanz.ch>
 * Copyright (C) 2004 Microtronix Datacom Ltd
 * Copyright (C) 2001 Ken Hill (khill@microtronix.com)
 *                    Vic Phillips (vic@microtronix.com)
 *
 * based on SPARC asm/processor_32.h which is:
 *
 * Copyright (C) 1994 David S. Miller
 *
 * 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_NIOS2_PROCESSOR_H
#define _ASM_NIOS2_PROCESSOR_H

#include <asm/ptrace.h>
#include <asm/registers.h>
#include <asm/page.h>

#define NIOS2_FLAG_KTHREAD	0x00000001	/* task is a kernel thread */

#define NIOS2_OP_NOP		0x1883a
#define NIOS2_OP_BREAK		0x3da03a

#ifdef __KERNEL__

#define STACK_TOP	TASK_SIZE
#define STACK_TOP_MAX	STACK_TOP

#endif /* __KERNEL__ */

/* Kuser helpers is mapped to this user space address */
#define KUSER_BASE		0x1000
#define KUSER_SIZE		(PAGE_SIZE)
#ifndef __ASSEMBLY__

/*
 * Default implementation of macro that returns current
 * instruction pointer ("program counter").
 */
#define current_text_addr() ({ __label__ _l; _l: &&_l; })

# define TASK_SIZE		0x7FFF0000UL
# define TASK_UNMAPPED_BASE	(PAGE_ALIGN(TASK_SIZE / 3))

/* The Nios processor specific thread struct. */
struct thread_struct {
	struct pt_regs *kregs;

	/* Context switch saved kernel state. */
	unsigned long ksp;
	unsigned long kpsr;
};

#define INIT_MMAP \
	{ &init_mm, (0), (0), __pgprot(0x0), VM_READ | VM_WRITE | VM_EXEC }

# define INIT_THREAD {			\
	.kregs	= NULL,			\
	.ksp	= 0,			\
	.kpsr	= 0,			\
}

extern void start_thread(struct pt_regs *regs, unsigned long pc,
			unsigned long sp);

struct task_struct;

/* Free all resources held by a thread. */
static inline void release_thread(struct task_struct *dead_task)
{
}

extern unsigned long get_wchan(struct task_struct *p);

#define task_pt_regs(p) \
	((struct pt_regs *)(THREAD_SIZE + task_stack_page(p)) - 1)

/* Used by procfs */
#define KSTK_EIP(tsk)	((tsk)->thread.kregs->ea)
#define KSTK_ESP(tsk)	((tsk)->thread.kregs->sp)

#define cpu_relax()	barrier()

#endif /* __ASSEMBLY__ */

#endif /* _ASM_NIOS2_PROCESSOR_H */

Filemanager

Name Type Size Permission Actions
Kbuild File 958 B 0644
asm-macros.h File 6.71 KB 0644
asm-offsets.h File 813 B 0644
cache.h File 1.14 KB 0644
cacheflush.h File 1.91 KB 0644
checksum.h File 2.03 KB 0644
cpuinfo.h File 1.42 KB 0644
delay.h File 547 B 0644
dma-mapping.h File 547 B 0644
elf.h File 3.2 KB 0644
entry.h File 2.6 KB 0644
io.h File 1.72 KB 0644
irq.h File 907 B 0644
irqflags.h File 1.75 KB 0644
kgdb.h File 1.88 KB 0644
linkage.h File 809 B 0644
mmu.h File 445 B 0644
mmu_context.h File 1.69 KB 0644
page.h File 3.08 KB 0644
pgalloc.h File 1.86 KB 0644
pgtable-bits.h File 1.05 KB 0644
pgtable.h File 7.99 KB 0644
processor.h File 2.18 KB 0644
ptrace.h File 2.29 KB 0644
registers.h File 2.15 KB 0644
setup.h File 1.04 KB 0644
shmparam.h File 804 B 0644
string.h File 618 B 0644
switch_to.h File 866 B 0644
syscall.h File 2.6 KB 0644
syscalls.h File 883 B 0644
thread_info.h File 3.37 KB 0644
timex.h File 912 B 0644
tlb.h File 963 B 0644
tlbflush.h File 1.56 KB 0644
traps.h File 514 B 0644
uaccess.h File 5.18 KB 0644