Added missing or changed/removed outdated PPC headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3133 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
2b70a18961
commit
62af4ffa5e
18
headers/private/kernel/arch/ppc/arch_cpu.h
Normal file
18
headers/private/kernel/arch/ppc/arch_cpu.h
Normal file
@ -0,0 +1,18 @@
|
||||
/*
|
||||
** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
||||
** Distributed under the terms of the OpenBeOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ARCH_PPC_CPU_H
|
||||
#define _KERNEL_ARCH_PPC_CPU_H
|
||||
|
||||
#include <arch/ppc/thread_struct.h>
|
||||
|
||||
#define PAGE_SIZE 4096
|
||||
|
||||
#define _BIG_ENDIAN 1
|
||||
#define _LITTLE_ENDIAN 0
|
||||
|
||||
struct iframe {
|
||||
};
|
||||
|
||||
#endif /* _KERNEL_ARCH_PPC_CPU_H */
|
48
headers/private/kernel/arch/ppc/arch_elf.h
Normal file
48
headers/private/kernel/arch/ppc/arch_elf.h
Normal file
@ -0,0 +1,48 @@
|
||||
/*
|
||||
** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
||||
** Distributed under the terms of the OpenBeOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ARCH_PPC_ELF_H
|
||||
#define _KERNEL_ARCH_PPC_ELF_H
|
||||
|
||||
/* relocation types */
|
||||
|
||||
#define R_PPC_NONE 0
|
||||
#define R_PPC_ADDR32 1
|
||||
#define R_PPC_ADDR24 2
|
||||
#define R_PPC_ADDR16 3
|
||||
#define R_PPC_ADDR16_LO 4
|
||||
#define R_PPC_ADDR16_HI 5
|
||||
#define R_PPC_ADDR16_HA 6
|
||||
#define R_PPC_ADDR14 7
|
||||
#define R_PPC_ADDR14_BRTAKEN 8
|
||||
#define R_PPC_ADDR14_BRNTAKEN 9
|
||||
#define R_PPC_REL24 10
|
||||
#define R_PPC_REL14 11
|
||||
#define R_PPC_REL14_BRTAKEN 12
|
||||
#define R_PPC_REL14_BRNTAKEN 13
|
||||
#define R_PPC_GOT16 14
|
||||
#define R_PPC_GOT16_LO 15
|
||||
#define R_PPC_GOT16_HI 16
|
||||
#define R_PPC_GOT16_HA 17
|
||||
#define R_PPC_PLTREL24 18
|
||||
#define R_PPC_COPY 19
|
||||
#define R_PPC_GLOB_DAT 20
|
||||
#define R_PPC_JMP_SLOT 21
|
||||
#define R_PPC_RELATIVE 22
|
||||
#define R_PPC_LOCAL24PC 23
|
||||
#define R_PPC_UADDR32 24
|
||||
#define R_PPC_UADDR16 25
|
||||
#define R_PPC_REL32 26
|
||||
#define R_PPC_PLT32 27
|
||||
#define R_PPC_PLTREL32 28
|
||||
#define R_PPC_PLT16_LO 29
|
||||
#define R_PPC_PLT16_HI 30
|
||||
#define R_PPC_PLT16_HA 31
|
||||
#define R_PPC_SDAREL16 32
|
||||
#define R_PPC_SECTOFF 33
|
||||
#define R_PPC_SECTOFF_LO 34
|
||||
#define R_PPC_SECTOFF_HI 35
|
||||
#define R_PPC_SECTOFF_HA 36
|
||||
|
||||
#endif /* _KERNEL_ARCH_PPC_ELF_H */
|
30
headers/private/kernel/arch/ppc/arch_kernel.h
Normal file
30
headers/private/kernel/arch/ppc/arch_kernel.h
Normal file
@ -0,0 +1,30 @@
|
||||
/*
|
||||
** Copyright 2001-2002, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ARCH_PPC_KERNEL_H
|
||||
#define _KERNEL_ARCH_PPC_KERNEL_H
|
||||
|
||||
#include <arch/cpu.h>
|
||||
|
||||
// memory layout
|
||||
#define KERNEL_BASE 0x80000000
|
||||
#define KERNEL_SIZE 0x80000000
|
||||
#define KERNEL_TOP (KERNEL_BASE + (KERNEL_SIZE - 1))
|
||||
|
||||
/*
|
||||
** User space layout is a little special:
|
||||
** The user space does not completely cover the space not covered by the kernel.
|
||||
** This is accomplished by starting user space at 1Mb and running to 64kb short of kernel space.
|
||||
** The lower 1Mb reserved spot makes it easy to find null pointer references and guarantees a
|
||||
** region wont be placed there. The 64kb region assures a user space thread cannot pass
|
||||
** a buffer into the kernel as part of a syscall that would cross into kernel space.
|
||||
*/
|
||||
#define USER_BASE 0x100000
|
||||
#define USER_SIZE (0x80000000 - (0x10000 + 0x100000))
|
||||
#define USER_TOP (USER_BASE + USER_SIZE)
|
||||
|
||||
#define USER_STACK_REGION 0x70000000
|
||||
#define USER_STACK_REGION_SIZE (USER_BASE + (USER_SIZE - USER_STACK_REGION))
|
||||
|
||||
#endif /* _KERNEL_ARCH_PPC_KERNEL_H */
|
18
headers/private/kernel/arch/ppc/arch_stage2.h
Normal file
18
headers/private/kernel/arch/ppc/arch_stage2.h
Normal file
@ -0,0 +1,18 @@
|
||||
/*
|
||||
** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
||||
** Distributed under the terms of the OpenBeOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ARCH_PPC_STAGE2_H
|
||||
#define _KERNEL_ARCH_PPC_STAGE2_H
|
||||
|
||||
#define _PACKED __attribute__((packed))
|
||||
|
||||
// kernel args
|
||||
typedef struct {
|
||||
// architecture specific
|
||||
addr_range page_table; // maps where the page table is located, in physical memory
|
||||
addr_range framebuffer; // maps where the framebuffer is located, in physical memory
|
||||
int screen_x, screen_y, screen_depth;
|
||||
} arch_kernel_args;
|
||||
|
||||
#endif /* _KERNEL_ARCH_PPC_STAGE2_H */
|
8
headers/private/kernel/arch/ppc/arch_thread.h
Normal file
8
headers/private/kernel/arch/ppc/arch_thread.h
Normal file
@ -0,0 +1,8 @@
|
||||
/*
|
||||
** Copyright 2003, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
|
||||
** Distributed under the terms of the OpenBeOS License.
|
||||
*/
|
||||
#ifndef _KERNEL_ARCH_PPC_THREAD_H
|
||||
#define _KERNEL_ARCH_PPC_THREAD_H
|
||||
|
||||
#endif /* _KERNEL_ARCH_PPC_THREAD_H */
|
@ -1,19 +0,0 @@
|
||||
/*
|
||||
** Copyright 2001, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
#ifndef _PPC_STAGE2_H
|
||||
#define _PPC_STAGE2_H
|
||||
|
||||
#include <boot/stage2_struct.h>
|
||||
|
||||
// kernel args
|
||||
typedef struct {
|
||||
// architecture specific
|
||||
addr_range page_table; // maps where the page table is located, in physical memory
|
||||
addr_range framebuffer; // maps where the framebuffer is located, in physical memory
|
||||
int screen_x, screen_y, screen_depth;
|
||||
} arch_kernel_args;
|
||||
|
||||
#endif
|
||||
|
@ -2,17 +2,16 @@
|
||||
** Copyright 2001, Travis Geiselbrecht. All rights reserved.
|
||||
** Distributed under the terms of the NewOS License.
|
||||
*/
|
||||
#ifndef _PPC_THREAD_STRUCT_H
|
||||
#define _PPC_THREAD_STRUCT_H
|
||||
#ifndef KERNEL_ARCH_PPC_THREAD_STRUCT_H
|
||||
#define KERNEL_ARCH_PPC_THREAD_STRUCT_H
|
||||
|
||||
// architecture specific thread info
|
||||
struct arch_thread {
|
||||
// stack pointer
|
||||
};
|
||||
|
||||
struct arch_proc {
|
||||
struct arch_team {
|
||||
// nothing here
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* KERNEL_ARCH_PPC_THREAD_STRUCT_H */
|
||||
|
Loading…
Reference in New Issue
Block a user