-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[PATCH] ppc/ppc64: Merge more include files
This patch merges several include files from asm-ppc and asm-ppc64 into the new asm-powerpc. Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
- Loading branch information
Jon Loeliger
authored and
Paul Mackerras
committed
Sep 6, 2005
1 parent
ad6571a
commit 6b9269a
Showing
18 changed files
with
167 additions
and
307 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
#ifndef _POWERPC_BUGS_H | ||
#define _POWERPC_BUGS_H | ||
|
||
/* | ||
* This program is free software; you can redistribute it and/or | ||
* modify it under the terms of the GNU General Public License | ||
* as published by the Free Software Foundation; either version | ||
* 2 of the License, or (at your option) any later version. | ||
*/ | ||
|
||
/* | ||
* This file is included by 'init/main.c' to check for | ||
* architecture-dependent bugs. | ||
*/ | ||
|
||
extern void check_bugs(void); | ||
|
||
#endif /* _POWERPC_BUGS_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
#ifndef _POWERPC_MODULE_H | ||
#define _POWERPC_MODULE_H | ||
|
||
/* | ||
* This program is free software; you can redistribute it and/or | ||
* modify it under the terms of the GNU General Public License | ||
* as published by the Free Software Foundation; either version | ||
* 2 of the License, or (at your option) any later version. | ||
*/ | ||
|
||
#include <linux/list.h> | ||
#include <asm/bug.h> | ||
|
||
|
||
#ifndef __powerpc64__ | ||
/* | ||
* Thanks to Paul M for explaining this. | ||
* | ||
* PPC can only do rel jumps += 32MB, and often the kernel and other | ||
* modules are furthur away than this. So, we jump to a table of | ||
* trampolines attached to the module (the Procedure Linkage Table) | ||
* whenever that happens. | ||
*/ | ||
|
||
struct ppc_plt_entry { | ||
/* 16 byte jump instruction sequence (4 instructions) */ | ||
unsigned int jump[4]; | ||
}; | ||
#endif /* __powerpc64__ */ | ||
|
||
|
||
struct mod_arch_specific { | ||
#ifdef __powerpc64__ | ||
unsigned int stubs_section; /* Index of stubs section in module */ | ||
unsigned int toc_section; /* What section is the TOC? */ | ||
#else | ||
/* Indices of PLT sections within module. */ | ||
unsigned int core_plt_section; | ||
unsigned int init_plt_section; | ||
#endif | ||
|
||
/* List of BUG addresses, source line numbers and filenames */ | ||
struct list_head bug_list; | ||
struct bug_entry *bug_table; | ||
unsigned int num_bugs; | ||
}; | ||
|
||
extern struct bug_entry *module_find_bug(unsigned long bugaddr); | ||
|
||
/* | ||
* Select ELF headers. | ||
* Make empty section for module_frob_arch_sections to expand. | ||
*/ | ||
|
||
#ifdef __powerpc64__ | ||
# define Elf_Shdr Elf64_Shdr | ||
# define Elf_Sym Elf64_Sym | ||
# define Elf_Ehdr Elf64_Ehdr | ||
# ifdef MODULE | ||
asm(".section .stubs,\"ax\",@nobits; .align 3; .previous"); | ||
# endif | ||
#else | ||
# define Elf_Shdr Elf32_Shdr | ||
# define Elf_Sym Elf32_Sym | ||
# define Elf_Ehdr Elf32_Ehdr | ||
# ifdef MODULE | ||
asm(".section .plt,\"ax\",@nobits; .align 3; .previous"); | ||
asm(".section .init.plt,\"ax\",@nobits; .align 3; .previous"); | ||
# endif /* MODULE */ | ||
#endif | ||
|
||
|
||
struct exception_table_entry; | ||
void sort_ex_table(struct exception_table_entry *start, | ||
struct exception_table_entry *finish); | ||
|
||
#endif /* _POWERPC_MODULE_H */ |
31 changes: 20 additions & 11 deletions
31
include/asm-ppc64/sembuf.h → include/asm-powerpc/sembuf.h
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,36 @@ | ||
#ifndef _PPC64_SEMBUF_H | ||
#define _PPC64_SEMBUF_H | ||
#ifndef _POWERPC_SEMBUF_H | ||
#define _POWERPC_SEMBUF_H | ||
|
||
/* | ||
* The semid64_ds structure for PPC architecture. | ||
* | ||
* | ||
/* | ||
* This program is free software; you can redistribute it and/or | ||
* modify it under the terms of the GNU General Public License | ||
* as published by the Free Software Foundation; either version | ||
* 2 of the License, or (at your option) any later version. | ||
*/ | ||
|
||
/* | ||
* The semid64_ds structure for PPC architecture. | ||
* Note extra padding because this structure is passed back and forth | ||
* between kernel and user space. | ||
* | ||
* Pad space is left for: | ||
* - 2 miscellaneous 64-bit values | ||
* - 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 */ | ||
#ifndef __powerpc64__ | ||
unsigned long __unused1; | ||
#endif | ||
__kernel_time_t sem_otime; /* last semop time */ | ||
#ifndef __powerpc64__ | ||
unsigned long __unused2; | ||
#endif | ||
__kernel_time_t sem_ctime; /* last change time */ | ||
unsigned long sem_nsems; /* no. of semaphores in array */ | ||
|
||
unsigned long __unused1; | ||
unsigned long __unused2; | ||
unsigned long __unused3; | ||
unsigned long __unused4; | ||
}; | ||
|
||
#endif /* _PPC64_SEMBUF_H */ | ||
#endif /* _POWERPC_SEMBUF_H */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.