Commit 7bee50d8 authored by David Mosberger's avatar David Mosberger

ia64: Split ia32-only definitions into separate ia32int.h header file.

      This avoids polluting ia64 code with definitions that are correct for
      ia32 only (for example, the ELF-related definitions would otherwise
      collide with ia64 ELF definitions).
parent 72006112
...@@ -15,7 +15,8 @@ ...@@ -15,7 +15,8 @@
#include <asm/param.h> #include <asm/param.h>
#include <asm/signal.h> #include <asm/signal.h>
#include <asm/ia32.h>
#include "ia32priv.h"
#define CONFIG_BINFMT_ELF32 #define CONFIG_BINFMT_ELF32
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include <linux/signal.h> /* argh, msdos_fs.h isn't self-contained... */ #include <linux/signal.h> /* argh, msdos_fs.h isn't self-contained... */
#include <linux/compat.h> #include <linux/compat.h>
#include <asm/ia32.h> #include "ia32priv.h"
#include <linux/config.h> #include <linux/config.h>
#include <linux/kernel.h> #include <linux/kernel.h>
......
...@@ -14,7 +14,8 @@ ...@@ -14,7 +14,8 @@
#include <linux/vmalloc.h> #include <linux/vmalloc.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/ia32.h>
#include "ia32priv.h"
#define P(p) ((void *) (unsigned long) (p)) #define P(p) ((void *) (unsigned long) (p))
......
...@@ -28,7 +28,8 @@ ...@@ -28,7 +28,8 @@
#include <asm/rse.h> #include <asm/rse.h>
#include <asm/sigcontext.h> #include <asm/sigcontext.h>
#include <asm/segment.h> #include <asm/segment.h>
#include <asm/ia32.h>
#include "ia32priv.h"
#include "../kernel/sigframe.h" #include "../kernel/sigframe.h"
......
...@@ -22,7 +22,8 @@ ...@@ -22,7 +22,8 @@
#include <asm/pgtable.h> #include <asm/pgtable.h>
#include <asm/system.h> #include <asm/system.h>
#include <asm/processor.h> #include <asm/processor.h>
#include <asm/ia32.h>
#include "ia32priv.h"
extern void die_if_kernel (char *str, struct pt_regs *regs, long err); extern void die_if_kernel (char *str, struct pt_regs *regs, long err);
...@@ -173,6 +174,13 @@ ia32_bad_interrupt (unsigned long int_num, struct pt_regs *regs) ...@@ -173,6 +174,13 @@ ia32_bad_interrupt (unsigned long int_num, struct pt_regs *regs)
force_sig_info(SIGTRAP, &siginfo, current); force_sig_info(SIGTRAP, &siginfo, current);
} }
void
ia32_cpu_init (void)
{
/* initialize global ia32 state - CR0 and CR4 */
asm volatile ("mov ar.cflg = %0" :: "r" (((ulong) IA32_CR4 << 32) | IA32_CR0));
}
static int __init static int __init
ia32_init (void) ia32_init (void)
{ {
......
...@@ -12,7 +12,8 @@ ...@@ -12,7 +12,8 @@
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <asm/ia32.h> #include "ia32priv.h"
#include <asm/ptrace.h> #include <asm/ptrace.h>
int int
......
This diff is collapsed.
...@@ -53,7 +53,8 @@ ...@@ -53,7 +53,8 @@
#include <asm/types.h> #include <asm/types.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/semaphore.h> #include <asm/semaphore.h>
#include <asm/ia32.h>
#include "ia32priv.h"
#include <net/scm.h> #include <net/scm.h>
#include <net/sock.h> #include <net/sock.h>
...@@ -1320,7 +1321,6 @@ static int ...@@ -1320,7 +1321,6 @@ static int
msgctl32 (int first, int second, void *uptr) msgctl32 (int first, int second, void *uptr)
{ {
int err = -EINVAL, err2; int err = -EINVAL, err2;
struct msqid_ds m;
struct msqid64_ds m64; struct msqid64_ds m64;
struct msqid_ds32 *up32 = (struct msqid_ds32 *)uptr; struct msqid_ds32 *up32 = (struct msqid_ds32 *)uptr;
struct msqid64_ds32 *up64 = (struct msqid64_ds32 *)uptr; struct msqid64_ds32 *up64 = (struct msqid64_ds32 *)uptr;
......
...@@ -818,8 +818,7 @@ cpu_init (void) ...@@ -818,8 +818,7 @@ cpu_init (void)
ia64_mmu_init(ia64_imva(cpu_data)); ia64_mmu_init(ia64_imva(cpu_data));
#ifdef CONFIG_IA32_SUPPORT #ifdef CONFIG_IA32_SUPPORT
/* initialize global ia32 state - CR0 and CR4 */ ia32_cpu_init();
asm volatile ("mov ar.cflg = %0" :: "r" (((ulong) IA32_CR4 << 32) | IA32_CR0));
#endif #endif
/* disable all local interrupt sources: */ /* disable all local interrupt sources: */
......
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment