diff options
Diffstat (limited to 'arch/m68k/include')
42 files changed, 715 insertions, 653 deletions
diff --git a/arch/m68k/include/asm/Kbuild b/arch/m68k/include/asm/Kbuild index 09d77a862da..c67c94a2d67 100644 --- a/arch/m68k/include/asm/Kbuild +++ b/arch/m68k/include/asm/Kbuild @@ -1,4 +1,4 @@ - +generic-y += barrier.h  generic-y += bitsperlong.h  generic-y += clkdev.h  generic-y += cputime.h @@ -6,6 +6,7 @@ generic-y += device.h  generic-y += emergency-restart.h  generic-y += errno.h  generic-y += exec.h +generic-y += hash.h  generic-y += hw_irq.h  generic-y += ioctl.h  generic-y += ipcbuf.h @@ -13,11 +14,13 @@ generic-y += irq_regs.h  generic-y += kdebug.h  generic-y += kmap_types.h  generic-y += kvm_para.h -generic-y += local64.h  generic-y += local.h +generic-y += local64.h +generic-y += mcs_spinlock.h  generic-y += mman.h  generic-y += mutex.h  generic-y += percpu.h +generic-y += preempt.h  generic-y += resource.h  generic-y += scatterlist.h  generic-y += sections.h diff --git a/arch/m68k/include/asm/amigahw.h b/arch/m68k/include/asm/amigahw.h index 7a19b5686a4..5ad568110f1 100644 --- a/arch/m68k/include/asm/amigahw.h +++ b/arch/m68k/include/asm/amigahw.h @@ -18,26 +18,7 @@  #include <linux/ioport.h> -    /* -     *  Different Amiga models -     */ - -#define AMI_UNKNOWN	(0) -#define AMI_500		(1) -#define AMI_500PLUS	(2) -#define AMI_600		(3) -#define AMI_1000	(4) -#define AMI_1200	(5) -#define AMI_2000	(6) -#define AMI_2500	(7) -#define AMI_3000	(8) -#define AMI_3000T	(9) -#define AMI_3000PLUS	(10) -#define AMI_4000	(11) -#define AMI_4000T	(12) -#define AMI_CDTV	(13) -#define AMI_CD32	(14) -#define AMI_DRACO	(15) +#include <asm/bootinfo-amiga.h>      /* @@ -46,11 +27,6 @@  extern unsigned long amiga_chipset; -#define CS_STONEAGE	(0) -#define CS_OCS		(1) -#define CS_ECS		(2) -#define CS_AGA		(3) -      /*       *  Miscellaneous @@ -266,7 +242,7 @@ struct CIA {  #define zTwoBase (0x80000000)  #define ZTWO_PADDR(x) (((unsigned long)(x))-zTwoBase) -#define ZTWO_VADDR(x) (((unsigned long)(x))+zTwoBase) +#define ZTWO_VADDR(x) ((void __iomem *)(((unsigned long)(x))+zTwoBase))  #define CUSTOM_PHYSADDR     (0xdff000)  #define amiga_custom ((*(volatile struct CUSTOM *)(zTwoBase+CUSTOM_PHYSADDR))) diff --git a/arch/m68k/include/asm/apollohw.h b/arch/m68k/include/asm/apollohw.h index 6c19e0c2241..87fc899d32e 100644 --- a/arch/m68k/include/asm/apollohw.h +++ b/arch/m68k/include/asm/apollohw.h @@ -5,18 +5,11 @@  #include <linux/types.h> -/* -   apollo models -*/ +#include <asm/bootinfo-apollo.h> +  extern u_long apollo_model; -#define APOLLO_UNKNOWN (0) -#define APOLLO_DN3000 (1) -#define APOLLO_DN3010 (2) -#define APOLLO_DN3500 (3) -#define APOLLO_DN4000 (4) -#define APOLLO_DN4500 (5)  /*     see scn2681 data sheet for more info. diff --git a/arch/m68k/include/asm/atari_stram.h b/arch/m68k/include/asm/atari_stram.h index 62e27598af9..4e771c22d6a 100644 --- a/arch/m68k/include/asm/atari_stram.h +++ b/arch/m68k/include/asm/atari_stram.h @@ -8,6 +8,8 @@  /* public interface */  void *atari_stram_alloc(unsigned long size, const char *owner);  void atari_stram_free(void *); +void *atari_stram_to_virt(unsigned long phys); +unsigned long atari_stram_to_phys(void *);  /* functions called internally by other parts of the kernel */  void atari_stram_init(void); diff --git a/arch/m68k/include/asm/atarihw.h b/arch/m68k/include/asm/atarihw.h index d887050e6da..972c8f33f05 100644 --- a/arch/m68k/include/asm/atarihw.h +++ b/arch/m68k/include/asm/atarihw.h @@ -21,7 +21,7 @@  #define _LINUX_ATARIHW_H_  #include <linux/types.h> -#include <asm/bootinfo.h> +#include <asm/bootinfo-atari.h>  #include <asm/raw_io.h>  extern u_long atari_mch_cookie; diff --git a/arch/m68k/include/asm/atomic.h b/arch/m68k/include/asm/atomic.h index f4e32de263a..55695212a2a 100644 --- a/arch/m68k/include/asm/atomic.h +++ b/arch/m68k/include/asm/atomic.h @@ -4,6 +4,7 @@  #include <linux/types.h>  #include <linux/irqflags.h>  #include <asm/cmpxchg.h> +#include <asm/barrier.h>  /*   * Atomic operations that C can't guarantee us.  Useful for @@ -209,11 +210,4 @@ static __inline__ int __atomic_add_unless(atomic_t *v, int a, int u)  	return c;  } - -/* Atomic operations are already serializing */ -#define smp_mb__before_atomic_dec()	barrier() -#define smp_mb__after_atomic_dec()	barrier() -#define smp_mb__before_atomic_inc()	barrier() -#define smp_mb__after_atomic_inc()	barrier() -  #endif /* __ARCH_M68K_ATOMIC __ */ diff --git a/arch/m68k/include/asm/barrier.h b/arch/m68k/include/asm/barrier.h deleted file mode 100644 index 445ce22c23c..00000000000 --- a/arch/m68k/include/asm/barrier.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef _M68K_BARRIER_H -#define _M68K_BARRIER_H - -/* - * Force strict CPU ordering. - * Not really required on m68k... - */ -#define nop()		do { asm volatile ("nop"); barrier(); } while (0) -#define mb()		barrier() -#define rmb()		barrier() -#define wmb()		barrier() -#define read_barrier_depends()	((void)0) -#define set_mb(var, value)	({ (var) = (value); wmb(); }) - -#define smp_mb()	barrier() -#define smp_rmb()	barrier() -#define smp_wmb()	barrier() -#define smp_read_barrier_depends()	((void)0) - -#endif /* _M68K_BARRIER_H */ diff --git a/arch/m68k/include/asm/bitops.h b/arch/m68k/include/asm/bitops.h index c6baa913592..b4a9b0d5928 100644 --- a/arch/m68k/include/asm/bitops.h +++ b/arch/m68k/include/asm/bitops.h @@ -13,6 +13,7 @@  #endif  #include <linux/compiler.h> +#include <asm/barrier.h>  /*   *	Bit access functions vary across the ColdFire and 68k families. @@ -67,12 +68,6 @@ static inline void bfset_mem_set_bit(int nr, volatile unsigned long *vaddr)  #define __set_bit(nr, vaddr)	set_bit(nr, vaddr) -/* - * clear_bit() doesn't provide any barrier for the compiler. - */ -#define smp_mb__before_clear_bit()	barrier() -#define smp_mb__after_clear_bit()	barrier() -  static inline void bclr_reg_clear_bit(int nr, volatile unsigned long *vaddr)  {  	char *p = (char *)vaddr + (nr ^ 31) / 8; diff --git a/arch/m68k/include/asm/bootinfo.h b/arch/m68k/include/asm/bootinfo.h index 67e7a78ad96..8e213267f8e 100644 --- a/arch/m68k/include/asm/bootinfo.h +++ b/arch/m68k/include/asm/bootinfo.h @@ -6,373 +6,23 @@  ** 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. -** -** Created 09/29/92 by Greg Harp -** -** 5/2/94 Roman Hodek: -**   Added bi_atari part of the machine dependent union bi_un; for now it -**   contains just a model field to distinguish between TT and Falcon. -** 26/7/96 Roman Zippel: -**   Renamed to setup.h; added some useful macros to allow gcc some -**   optimizations if possible. -** 5/10/96 Geert Uytterhoeven: -**   Redesign of the boot information structure; renamed to bootinfo.h again -** 27/11/96 Geert Uytterhoeven: -**   Backwards compatibility with bootinfo interface version 1.0  */  #ifndef _M68K_BOOTINFO_H  #define _M68K_BOOTINFO_H +#include <uapi/asm/bootinfo.h> -    /* -     *  Bootinfo definitions -     * -     *  This is an easily parsable and extendable structure containing all -     *  information to be passed from the bootstrap to the kernel. -     * -     *  This way I hope to keep all future changes back/forewards compatible. -     *  Thus, keep your fingers crossed... -     * -     *  This structure is copied right after the kernel bss by the bootstrap -     *  routine. -     */  #ifndef __ASSEMBLY__ -struct bi_record { -    unsigned short tag;			/* tag ID */ -    unsigned short size;		/* size of record (in bytes) */ -    unsigned long data[0];		/* data */ -}; - -#endif /* __ASSEMBLY__ */ - - -    /* -     *  Tag Definitions -     * -     *  Machine independent tags start counting from 0x0000 -     *  Machine dependent tags start counting from 0x8000 -     */ - -#define BI_LAST			0x0000	/* last record (sentinel) */ -#define BI_MACHTYPE		0x0001	/* machine type (u_long) */ -#define BI_CPUTYPE		0x0002	/* cpu type (u_long) */ -#define BI_FPUTYPE		0x0003	/* fpu type (u_long) */ -#define BI_MMUTYPE		0x0004	/* mmu type (u_long) */ -#define BI_MEMCHUNK		0x0005	/* memory chunk address and size */ -					/* (struct mem_info) */ -#define BI_RAMDISK		0x0006	/* ramdisk address and size */ -					/* (struct mem_info) */ -#define BI_COMMAND_LINE		0x0007	/* kernel command line parameters */ -					/* (string) */ - -    /* -     *  Amiga-specific tags -     */ - -#define BI_AMIGA_MODEL		0x8000	/* model (u_long) */ -#define BI_AMIGA_AUTOCON	0x8001	/* AutoConfig device */ -					/* (struct ConfigDev) */ -#define BI_AMIGA_CHIP_SIZE	0x8002	/* size of Chip RAM (u_long) */ -#define BI_AMIGA_VBLANK		0x8003	/* VBLANK frequency (u_char) */ -#define BI_AMIGA_PSFREQ		0x8004	/* power supply frequency (u_char) */ -#define BI_AMIGA_ECLOCK		0x8005	/* EClock frequency (u_long) */ -#define BI_AMIGA_CHIPSET	0x8006	/* native chipset present (u_long) */ -#define BI_AMIGA_SERPER		0x8007	/* serial port period (u_short) */ - -    /* -     *  Atari-specific tags -     */ - -#define BI_ATARI_MCH_COOKIE	0x8000	/* _MCH cookie from TOS (u_long) */ -#define BI_ATARI_MCH_TYPE	0x8001	/* special machine type (u_long) */ -					/* (values are ATARI_MACH_* defines */ - -/* mch_cookie values (upper word) */ -#define ATARI_MCH_ST		0 -#define ATARI_MCH_STE		1 -#define ATARI_MCH_TT		2 -#define ATARI_MCH_FALCON	3 - -/* mch_type values */ -#define ATARI_MACH_NORMAL	0	/* no special machine type */ -#define ATARI_MACH_MEDUSA	1	/* Medusa 040 */ -#define ATARI_MACH_HADES	2	/* Hades 040 or 060 */ -#define ATARI_MACH_AB40		3	/* Afterburner040 on Falcon */ - -    /* -     *  VME-specific tags -     */ - -#define BI_VME_TYPE		0x8000	/* VME sub-architecture (u_long) */ -#define BI_VME_BRDINFO		0x8001	/* VME board information (struct) */ - -/* BI_VME_TYPE codes */ -#define	VME_TYPE_TP34V		0x0034	/* Tadpole TP34V */ -#define VME_TYPE_MVME147	0x0147	/* Motorola MVME147 */ -#define VME_TYPE_MVME162	0x0162	/* Motorola MVME162 */ -#define VME_TYPE_MVME166	0x0166	/* Motorola MVME166 */ -#define VME_TYPE_MVME167	0x0167	/* Motorola MVME167 */ -#define VME_TYPE_MVME172	0x0172	/* Motorola MVME172 */ -#define VME_TYPE_MVME177	0x0177	/* Motorola MVME177 */ -#define VME_TYPE_BVME4000	0x4000	/* BVM Ltd. BVME4000 */ -#define VME_TYPE_BVME6000	0x6000	/* BVM Ltd. BVME6000 */ - -/* BI_VME_BRDINFO is a 32 byte struct as returned by the Bug code on - * Motorola VME boards.  Contains board number, Bug version, board - * configuration options, etc.  See include/asm/mvme16xhw.h for details. - */ - - -    /* -     *  Macintosh-specific tags (all u_long) -     */ - -#define BI_MAC_MODEL		0x8000	/* Mac Gestalt ID (model type) */ -#define BI_MAC_VADDR		0x8001	/* Mac video base address */ -#define BI_MAC_VDEPTH		0x8002	/* Mac video depth */ -#define BI_MAC_VROW		0x8003	/* Mac video rowbytes */ -#define BI_MAC_VDIM		0x8004	/* Mac video dimensions */ -#define BI_MAC_VLOGICAL		0x8005	/* Mac video logical base */ -#define BI_MAC_SCCBASE		0x8006	/* Mac SCC base address */ -#define BI_MAC_BTIME		0x8007	/* Mac boot time */ -#define BI_MAC_GMTBIAS		0x8008	/* Mac GMT timezone offset */ -#define BI_MAC_MEMSIZE		0x8009	/* Mac RAM size (sanity check) */ -#define BI_MAC_CPUID		0x800a	/* Mac CPU type (sanity check) */ -#define BI_MAC_ROMBASE		0x800b	/* Mac system ROM base address */ - -    /* -     *  Macintosh hardware profile data - unused, see macintosh.h for -     *  reasonable type values -     */ - -#define BI_MAC_VIA1BASE		0x8010	/* Mac VIA1 base address (always present) */ -#define BI_MAC_VIA2BASE		0x8011	/* Mac VIA2 base address (type varies) */ -#define BI_MAC_VIA2TYPE		0x8012	/* Mac VIA2 type (VIA, RBV, OSS) */ -#define BI_MAC_ADBTYPE		0x8013	/* Mac ADB interface type */ -#define BI_MAC_ASCBASE		0x8014	/* Mac Apple Sound Chip base address */ -#define BI_MAC_SCSI5380		0x8015	/* Mac NCR 5380 SCSI (base address, multi) */ -#define BI_MAC_SCSIDMA		0x8016	/* Mac SCSI DMA (base address) */ -#define BI_MAC_SCSI5396		0x8017	/* Mac NCR 53C96 SCSI (base address, multi) */ -#define BI_MAC_IDETYPE		0x8018	/* Mac IDE interface type */ -#define BI_MAC_IDEBASE		0x8019	/* Mac IDE interface base address */ -#define BI_MAC_NUBUS		0x801a	/* Mac Nubus type (none, regular, pseudo) */ -#define BI_MAC_SLOTMASK		0x801b	/* Mac Nubus slots present */ -#define BI_MAC_SCCTYPE		0x801c	/* Mac SCC serial type (normal, IOP) */ -#define BI_MAC_ETHTYPE		0x801d	/* Mac builtin ethernet type (Sonic, MACE */ -#define BI_MAC_ETHBASE		0x801e	/* Mac builtin ethernet base address */ -#define BI_MAC_PMU		0x801f	/* Mac power management / poweroff hardware */ -#define BI_MAC_IOP_SWIM		0x8020	/* Mac SWIM floppy IOP */ -#define BI_MAC_IOP_ADB		0x8021	/* Mac ADB IOP */ - -    /* -     * Mac: compatibility with old booter data format (temporarily) -     * Fields unused with the new bootinfo can be deleted now; instead of -     * adding new fields the struct might be splitted into a hardware address -     * part and a hardware type part -     */ - -#ifndef __ASSEMBLY__ - -struct mac_booter_data -{ -	unsigned long videoaddr; -	unsigned long videorow; -	unsigned long videodepth; -	unsigned long dimensions; -	unsigned long args; -	unsigned long boottime; -	unsigned long gmtbias; -	unsigned long bootver; -	unsigned long videological; -	unsigned long sccbase; -	unsigned long id; -	unsigned long memsize; -	unsigned long serialmf; -	unsigned long serialhsk; -	unsigned long serialgpi; -	unsigned long printmf; -	unsigned long printhsk; -	unsigned long printgpi; -	unsigned long cpuid; -	unsigned long rombase; -	unsigned long adbdelay; -	unsigned long timedbra; -}; - -extern struct mac_booter_data -	mac_bi_data; - +#ifdef CONFIG_BOOTINFO_PROC +extern void save_bootinfo(const struct bi_record *bi); +#else +static inline void save_bootinfo(const struct bi_record *bi) {}  #endif -    /* -     *  Apollo-specific tags -     */ - -#define BI_APOLLO_MODEL         0x8000  /* model (u_long) */ - -    /* -     *  HP300-specific tags -     */ - -#define BI_HP300_MODEL		0x8000	/* model (u_long) */ -#define BI_HP300_UART_SCODE	0x8001	/* UART select code (u_long) */ -#define BI_HP300_UART_ADDR	0x8002	/* phys. addr of UART (u_long) */ - -    /* -     * Stuff for bootinfo interface versioning -     * -     * At the start of kernel code, a 'struct bootversion' is located. -     * bootstrap checks for a matching version of the interface before booting -     * a kernel, to avoid user confusion if kernel and bootstrap don't work -     * together :-) -     * -     * If incompatible changes are made to the bootinfo interface, the major -     * number below should be stepped (and the minor reset to 0) for the -     * appropriate machine. If a change is backward-compatible, the minor -     * should be stepped. "Backwards-compatible" means that booting will work, -     * but certain features may not. -     */ - -#define BOOTINFOV_MAGIC			0x4249561A	/* 'BIV^Z' */ -#define MK_BI_VERSION(major,minor)	(((major)<<16)+(minor)) -#define BI_VERSION_MAJOR(v)		(((v) >> 16) & 0xffff) -#define BI_VERSION_MINOR(v)		((v) & 0xffff) - -#ifndef __ASSEMBLY__ - -struct bootversion { -    unsigned short branch; -    unsigned long magic; -    struct { -	unsigned long machtype; -	unsigned long version; -    } machversions[0]; -}; -  #endif /* __ASSEMBLY__ */ -#define AMIGA_BOOTI_VERSION    MK_BI_VERSION( 2, 0 ) -#define ATARI_BOOTI_VERSION    MK_BI_VERSION( 2, 1 ) -#define MAC_BOOTI_VERSION      MK_BI_VERSION( 2, 0 ) -#define MVME147_BOOTI_VERSION  MK_BI_VERSION( 2, 0 ) -#define MVME16x_BOOTI_VERSION  MK_BI_VERSION( 2, 0 ) -#define BVME6000_BOOTI_VERSION MK_BI_VERSION( 2, 0 ) -#define Q40_BOOTI_VERSION      MK_BI_VERSION( 2, 0 ) -#define HP300_BOOTI_VERSION    MK_BI_VERSION( 2, 0 ) - -#ifdef BOOTINFO_COMPAT_1_0 - -    /* -     *  Backwards compatibility with bootinfo interface version 1.0 -     */ - -#define COMPAT_AMIGA_BOOTI_VERSION    MK_BI_VERSION( 1, 0 ) -#define COMPAT_ATARI_BOOTI_VERSION    MK_BI_VERSION( 1, 0 ) -#define COMPAT_MAC_BOOTI_VERSION      MK_BI_VERSION( 1, 0 ) - -#include <linux/zorro.h> - -#define COMPAT_NUM_AUTO    16 - -struct compat_bi_Amiga { -    int model; -    int num_autocon; -    struct ConfigDev autocon[COMPAT_NUM_AUTO]; -    unsigned long chip_size; -    unsigned char vblank; -    unsigned char psfreq; -    unsigned long eclock; -    unsigned long chipset; -    unsigned long hw_present; -}; - -struct compat_bi_Atari { -    unsigned long hw_present; -    unsigned long mch_cookie; -}; - -#ifndef __ASSEMBLY__ - -struct compat_bi_Macintosh -{ -	unsigned long videoaddr; -	unsigned long videorow; -	unsigned long videodepth; -	unsigned long dimensions; -	unsigned long args; -	unsigned long boottime; -	unsigned long gmtbias; -	unsigned long bootver; -	unsigned long videological; -	unsigned long sccbase; -	unsigned long id; -	unsigned long memsize; -	unsigned long serialmf; -	unsigned long serialhsk; -	unsigned long serialgpi; -	unsigned long printmf; -	unsigned long printhsk; -	unsigned long printgpi; -	unsigned long cpuid; -	unsigned long rombase; -	unsigned long adbdelay; -	unsigned long timedbra; -}; - -#endif - -struct compat_mem_info { -    unsigned long addr; -    unsigned long size; -}; - -#define COMPAT_NUM_MEMINFO  4 - -#define COMPAT_CPUB_68020 0 -#define COMPAT_CPUB_68030 1 -#define COMPAT_CPUB_68040 2 -#define COMPAT_CPUB_68060 3 -#define COMPAT_FPUB_68881 5 -#define COMPAT_FPUB_68882 6 -#define COMPAT_FPUB_68040 7 -#define COMPAT_FPUB_68060 8 - -#define COMPAT_CPU_68020    (1<<COMPAT_CPUB_68020) -#define COMPAT_CPU_68030    (1<<COMPAT_CPUB_68030) -#define COMPAT_CPU_68040    (1<<COMPAT_CPUB_68040) -#define COMPAT_CPU_68060    (1<<COMPAT_CPUB_68060) -#define COMPAT_CPU_MASK     (31) -#define COMPAT_FPU_68881    (1<<COMPAT_FPUB_68881) -#define COMPAT_FPU_68882    (1<<COMPAT_FPUB_68882) -#define COMPAT_FPU_68040    (1<<COMPAT_FPUB_68040) -#define COMPAT_FPU_68060    (1<<COMPAT_FPUB_68060) -#define COMPAT_FPU_MASK     (0xfe0) - -#define COMPAT_CL_SIZE      (256) - -struct compat_bootinfo { -    unsigned long machtype; -    unsigned long cputype; -    struct compat_mem_info memory[COMPAT_NUM_MEMINFO]; -    int num_memory; -    unsigned long ramdisk_size; -    unsigned long ramdisk_addr; -    char command_line[COMPAT_CL_SIZE]; -    union { -	struct compat_bi_Amiga     bi_ami; -	struct compat_bi_Atari     bi_ata; -	struct compat_bi_Macintosh bi_mac; -    } bi_un; -}; - -#define bi_amiga	bi_un.bi_ami -#define bi_atari	bi_un.bi_ata -#define bi_mac		bi_un.bi_mac - -#endif /* BOOTINFO_COMPAT_1_0 */ -  #endif /* _M68K_BOOTINFO_H */ diff --git a/arch/m68k/include/asm/floppy.h b/arch/m68k/include/asm/floppy.h index 697d50393dd..47365b1ccbe 100644 --- a/arch/m68k/include/asm/floppy.h +++ b/arch/m68k/include/asm/floppy.h @@ -85,7 +85,7 @@ static int fd_request_irq(void)  {  	if(MACH_IS_Q40)  		return request_irq(FLOPPY_IRQ, floppy_hardint, -				   IRQF_DISABLED, "floppy", floppy_hardint); +				   0, "floppy", floppy_hardint);  	else if(MACH_IS_SUN3X)  		return sun3xflop_request_irq();  	return -ENXIO; diff --git a/arch/m68k/include/asm/hardirq.h b/arch/m68k/include/asm/hardirq.h index db30ed27687..6c618529d9b 100644 --- a/arch/m68k/include/asm/hardirq.h +++ b/arch/m68k/include/asm/hardirq.h @@ -5,17 +5,6 @@  #include <linux/cache.h>  #include <asm/irq.h> -#define HARDIRQ_BITS	8 - -/* - * The hardirq mask has to be large enough to have - * space for potentially all IRQ sources in the system - * nesting on a single CPU: - */ -#if (1 << HARDIRQ_BITS) < NR_IRQS -# error HARDIRQ_BITS is too low! -#endif -  #ifdef CONFIG_MMU  static inline void ack_bad_irq(unsigned int irq) diff --git a/arch/m68k/include/asm/hp300hw.h b/arch/m68k/include/asm/hp300hw.h index d998ea67c19..64f5271dd7b 100644 --- a/arch/m68k/include/asm/hp300hw.h +++ b/arch/m68k/include/asm/hp300hw.h @@ -1,25 +1,9 @@  #ifndef _M68K_HP300HW_H  #define _M68K_HP300HW_H -extern unsigned long hp300_model; +#include <asm/bootinfo-hp300.h> -/* This information was taken from NetBSD */ -#define	HP_320		(0)	/* 16MHz 68020+HP MMU+16K external cache */ -#define	HP_330		(1)	/* 16MHz 68020+68851 MMU */ -#define	HP_340		(2)	/* 16MHz 68030 */ -#define	HP_345		(3)	/* 50MHz 68030+32K external cache */ -#define	HP_350		(4)	/* 25MHz 68020+HP MMU+32K external cache */ -#define	HP_360		(5)	/* 25MHz 68030 */ -#define	HP_370		(6)	/* 33MHz 68030+64K external cache */ -#define	HP_375		(7)	/* 50MHz 68030+32K external cache */ -#define	HP_380		(8)	/* 25MHz 68040 */ -#define	HP_385		(9)	/* 33MHz 68040 */ -#define	HP_400		(10)	/* 50MHz 68030+32K external cache */ -#define	HP_425T		(11)	/* 25MHz 68040 - model 425t */ -#define	HP_425S		(12)	/* 25MHz 68040 - model 425s */ -#define HP_425E		(13)	/* 25MHz 68040 - model 425e */ -#define HP_433T		(14)	/* 33MHz 68040 - model 433t */ -#define HP_433S		(15)	/* 33MHz 68040 - model 433s */ +extern unsigned long hp300_model;  #endif /* _M68K_HP300HW_H */ diff --git a/arch/m68k/include/asm/io_no.h b/arch/m68k/include/asm/io_no.h index e1534783e94..52f7e849917 100644 --- a/arch/m68k/include/asm/io_no.h +++ b/arch/m68k/include/asm/io_no.h @@ -55,7 +55,7 @@ static inline unsigned int _swapl(volatile unsigned long v)  #define __raw_writew writew  #define __raw_writel writel -static inline void io_outsb(unsigned int addr, void *buf, int len) +static inline void io_outsb(unsigned int addr, const void *buf, int len)  {  	volatile unsigned char *ap = (volatile unsigned char *) addr;  	unsigned char *bp = (unsigned char *) buf; @@ -63,7 +63,7 @@ static inline void io_outsb(unsigned int addr, void *buf, int len)  		*ap = *bp++;  } -static inline void io_outsw(unsigned int addr, void *buf, int len) +static inline void io_outsw(unsigned int addr, const void *buf, int len)  {  	volatile unsigned short *ap = (volatile unsigned short *) addr;  	unsigned short *bp = (unsigned short *) buf; @@ -71,7 +71,7 @@ static inline void io_outsw(unsigned int addr, void *buf, int len)  		*ap = _swapw(*bp++);  } -static inline void io_outsl(unsigned int addr, void *buf, int len) +static inline void io_outsl(unsigned int addr, const void *buf, int len)  {  	volatile unsigned int *ap = (volatile unsigned int *) addr;  	unsigned int *bp = (unsigned int *) buf; diff --git a/arch/m68k/include/asm/kexec.h b/arch/m68k/include/asm/kexec.h new file mode 100644 index 00000000000..3df97abac14 --- /dev/null +++ b/arch/m68k/include/asm/kexec.h @@ -0,0 +1,29 @@ +#ifndef _ASM_M68K_KEXEC_H +#define _ASM_M68K_KEXEC_H + +#ifdef CONFIG_KEXEC + +/* Maximum physical address we can use pages from */ +#define KEXEC_SOURCE_MEMORY_LIMIT (-1UL) +/* Maximum address we can reach in physical address mode */ +#define KEXEC_DESTINATION_MEMORY_LIMIT (-1UL) +/* Maximum address we can use for the control code buffer */ +#define KEXEC_CONTROL_MEMORY_LIMIT (-1UL) + +#define KEXEC_CONTROL_PAGE_SIZE	4096 + +#define KEXEC_ARCH KEXEC_ARCH_68K + +#ifndef __ASSEMBLY__ + +static inline void crash_setup_regs(struct pt_regs *newregs, +				    struct pt_regs *oldregs) +{ +	/* Dummy implementation for now */ +} + +#endif /* __ASSEMBLY__ */ + +#endif /* CONFIG_KEXEC */ + +#endif /* _ASM_M68K_KEXEC_H */ diff --git a/arch/m68k/include/asm/m525xsim.h b/arch/m68k/include/asm/m525xsim.h index e33f5bb6aca..f186459072e 100644 --- a/arch/m68k/include/asm/m525xsim.h +++ b/arch/m68k/include/asm/m525xsim.h @@ -105,7 +105,7 @@  /*   *	QSPI module.   */ -#define MCFQSPI_BASE		(MCF_MBAR + 0x300)	/* Base address QSPI */ +#define MCFQSPI_BASE		(MCF_MBAR + 0x400)	/* Base address QSPI */  #define MCFQSPI_SIZE		0x40			/* Register set size */  #ifdef CONFIG_M5249 diff --git a/arch/m68k/include/asm/m54xxsim.h b/arch/m68k/include/asm/m54xxsim.h index d3bd8388742..a5fbd17ab0a 100644 --- a/arch/m68k/include/asm/m54xxsim.h +++ b/arch/m68k/include/asm/m54xxsim.h @@ -55,9 +55,15 @@  /*   *	Generic GPIO support   */ -#define MCFGPIO_PIN_MAX		0	/* I am too lazy to count */ -#define MCFGPIO_IRQ_MAX		-1 -#define MCFGPIO_IRQ_VECBASE	-1 +#define MCFGPIO_PODR		(MCF_MBAR + 0xA00) +#define MCFGPIO_PDDR		(MCF_MBAR + 0xA10) +#define MCFGPIO_PPDR		(MCF_MBAR + 0xA20) +#define MCFGPIO_SETR		(MCF_MBAR + 0xA20) +#define MCFGPIO_CLRR		(MCF_MBAR + 0xA30) + +#define MCFGPIO_PIN_MAX		136	/* 128 gpio + 8 eport */ +#define MCFGPIO_IRQ_MAX		8 +#define MCFGPIO_IRQ_VECBASE	MCFINT_VECBASE  /*   *	EDGE Port support. diff --git a/arch/m68k/include/asm/mac_via.h b/arch/m68k/include/asm/mac_via.h index aeeedf8b2d2..fe3fc9ae1b6 100644 --- a/arch/m68k/include/asm/mac_via.h +++ b/arch/m68k/include/asm/mac_via.h @@ -254,6 +254,8 @@  extern volatile __u8 *via1,*via2;  extern int rbv_present,via_alt_mapping; +struct irq_desc; +  extern void via_register_interrupts(void);  extern void via_irq_enable(int);  extern void via_irq_disable(int); diff --git a/arch/m68k/include/asm/macintosh.h b/arch/m68k/include/asm/macintosh.h index 682a1a2ff55..d323b2c2d07 100644 --- a/arch/m68k/include/asm/macintosh.h +++ b/arch/m68k/include/asm/macintosh.h @@ -4,6 +4,9 @@  #include <linux/seq_file.h>  #include <linux/interrupt.h> +#include <asm/bootinfo-mac.h> + +  /*   *	Apple Macintoshisms   */ @@ -74,65 +77,29 @@ struct mac_model  #define MAC_FLOPPY_SWIM_IOP	3  #define MAC_FLOPPY_AV		4 -/* - *	Gestalt numbers - */ +extern struct mac_model *macintosh_config; -#define MAC_MODEL_II		6 -#define MAC_MODEL_IIX		7 -#define MAC_MODEL_IICX		8 -#define MAC_MODEL_SE30		9 -#define MAC_MODEL_IICI		11 -#define MAC_MODEL_IIFX		13	/* And well numbered it is too */ -#define MAC_MODEL_IISI		18 -#define MAC_MODEL_LC		19 -#define MAC_MODEL_Q900		20 -#define MAC_MODEL_PB170		21 -#define MAC_MODEL_Q700		22 -#define MAC_MODEL_CLII		23	/* aka: P200 */ -#define MAC_MODEL_PB140		25 -#define MAC_MODEL_Q950		26	/* aka: WGS95 */ -#define MAC_MODEL_LCIII		27	/* aka: P450 */ -#define MAC_MODEL_PB210		29 -#define MAC_MODEL_C650		30 -#define MAC_MODEL_PB230		32 -#define MAC_MODEL_PB180		33 -#define MAC_MODEL_PB160		34 -#define MAC_MODEL_Q800		35	/* aka: WGS80 */ -#define MAC_MODEL_Q650		36 -#define MAC_MODEL_LCII		37	/* aka: P400/405/410/430 */ -#define MAC_MODEL_PB250		38 -#define MAC_MODEL_IIVI		44 -#define MAC_MODEL_P600		45	/* aka: P600CD */ -#define MAC_MODEL_IIVX		48 -#define MAC_MODEL_CCL		49	/* aka: P250 */ -#define MAC_MODEL_PB165C	50 -#define MAC_MODEL_C610		52	/* aka: WGS60 */ -#define MAC_MODEL_Q610		53 -#define MAC_MODEL_PB145		54	/* aka: PB145B */ -#define MAC_MODEL_P520		56	/* aka: LC520 */ -#define MAC_MODEL_C660		60 -#define MAC_MODEL_P460		62	/* aka: LCIII+, P466/P467 */ -#define MAC_MODEL_PB180C	71 -#define MAC_MODEL_PB520		72	/* aka: PB520C, PB540, PB540C, PB550C */ -#define MAC_MODEL_PB270C	77 -#define MAC_MODEL_Q840		78 -#define MAC_MODEL_P550		80	/* aka: LC550, P560 */ -#define MAC_MODEL_CCLII		83	/* aka: P275 */ -#define MAC_MODEL_PB165		84 -#define MAC_MODEL_PB190		85	/* aka: PB190CS */ -#define MAC_MODEL_TV		88 -#define MAC_MODEL_P475		89	/* aka: LC475, P476 */ -#define MAC_MODEL_P475F		90	/* aka: P475 w/ FPU (no LC040) */ -#define MAC_MODEL_P575		92	/* aka: LC575, P577/P578 */ -#define MAC_MODEL_Q605		94 -#define MAC_MODEL_Q605_ACC	95	/* Q605 accelerated to 33 MHz */ -#define MAC_MODEL_Q630		98	/* aka: LC630, P630/631/635/636/637/638/640 */ -#define MAC_MODEL_P588		99	/* aka: LC580, P580 */ -#define MAC_MODEL_PB280		102 -#define MAC_MODEL_PB280C	103 -#define MAC_MODEL_PB150		115 -extern struct mac_model *macintosh_config; +    /* +     * Internal representation of the Mac hardware, filled in from bootinfo +     */ + +struct mac_booter_data +{ +	unsigned long videoaddr; +	unsigned long videorow; +	unsigned long videodepth; +	unsigned long dimensions; +	unsigned long boottime; +	unsigned long gmtbias; +	unsigned long videological; +	unsigned long sccbase; +	unsigned long id; +	unsigned long memsize; +	unsigned long cpuid; +	unsigned long rombase; +}; + +extern struct mac_booter_data mac_bi_data;  #endif diff --git a/arch/m68k/include/asm/mc146818rtc.h b/arch/m68k/include/asm/mc146818rtc.h index 9f70a01f73d..05b43bf5cdf 100644 --- a/arch/m68k/include/asm/mc146818rtc.h +++ b/arch/m68k/include/asm/mc146818rtc.h @@ -10,16 +10,16 @@  #include <asm/atarihw.h> -#define RTC_PORT(x)	(TT_RTC_BAS + 2*(x)) +#define ATARI_RTC_PORT(x)	(TT_RTC_BAS + 2*(x))  #define RTC_ALWAYS_BCD	0  #define CMOS_READ(addr) ({ \ -atari_outb_p((addr),RTC_PORT(0)); \ -atari_inb_p(RTC_PORT(1)); \ +atari_outb_p((addr), ATARI_RTC_PORT(0)); \ +atari_inb_p(ATARI_RTC_PORT(1)); \  })  #define CMOS_WRITE(val, addr) ({ \ -atari_outb_p((addr),RTC_PORT(0)); \ -atari_outb_p((val),RTC_PORT(1)); \ +atari_outb_p((addr), ATARI_RTC_PORT(0)); \ +atari_outb_p((val), ATARI_RTC_PORT(1)); \  })  #endif /* CONFIG_ATARI */ diff --git a/arch/m68k/include/asm/mcf_pgalloc.h b/arch/m68k/include/asm/mcf_pgalloc.h index 313f3dd23cd..f9924fbcfe4 100644 --- a/arch/m68k/include/asm/mcf_pgalloc.h +++ b/arch/m68k/include/asm/mcf_pgalloc.h @@ -56,6 +56,10 @@ static inline struct page *pte_alloc_one(struct mm_struct *mm,  	if (!page)  		return NULL; +	if (!pgtable_page_ctor(page)) { +		__free_page(page); +		return NULL; +	}  	pte = kmap(page);  	if (pte) { diff --git a/arch/m68k/include/asm/mcfgpio.h b/arch/m68k/include/asm/mcfgpio.h index c41ebf45f1d..66203c334c6 100644 --- a/arch/m68k/include/asm/mcfgpio.h +++ b/arch/m68k/include/asm/mcfgpio.h @@ -139,7 +139,8 @@ static inline void gpio_free(unsigned gpio)  #if defined(CONFIG_M520x) || defined(CONFIG_M523x) || \      defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ -    defined(CONFIG_M53xx) || defined(CONFIG_M5441x) +    defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ +    defined(CONFIG_M5441x)  /*   * These parts have an 'Edge' Port module (external interrupt/GPIO) which uses   * read-modify-write to change an output and a GPIO module which has separate @@ -195,7 +196,8 @@ static inline u32 __mcfgpio_ppdr(unsigned gpio)  		return MCFSIM2_GPIO1READ;  #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \        defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ -      defined(CONFIG_M53xx) || defined(CONFIG_M5441x) +      defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ +      defined(CONFIG_M5441x)  #if !defined(CONFIG_M5441x)  	if (gpio < 8)  		return MCFEPORT_EPPDR; @@ -237,7 +239,8 @@ static inline u32 __mcfgpio_podr(unsigned gpio)  		return MCFSIM2_GPIO1WRITE;  #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \        defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ -      defined(CONFIG_M53xx) || defined(CONFIG_M5441x) +      defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ +      defined(CONFIG_M5441x)  #if !defined(CONFIG_M5441x)  	if (gpio < 8)  		return MCFEPORT_EPDR; @@ -279,7 +282,8 @@ static inline u32 __mcfgpio_pddr(unsigned gpio)  		return MCFSIM2_GPIO1ENABLE;  #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \        defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ -      defined(CONFIG_M53xx) || defined(CONFIG_M5441x) +      defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ +      defined(CONFIG_M5441x)  #if !defined(CONFIG_M5441x)  	if (gpio < 8)  		return MCFEPORT_EPDDR; diff --git a/arch/m68k/include/asm/motorola_pgalloc.h b/arch/m68k/include/asm/motorola_pgalloc.h index 2f02f264e69..24bcba496c7 100644 --- a/arch/m68k/include/asm/motorola_pgalloc.h +++ b/arch/m68k/include/asm/motorola_pgalloc.h @@ -29,18 +29,22 @@ static inline void pte_free_kernel(struct mm_struct *mm, pte_t *pte)  static inline pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long address)  { -	struct page *page = alloc_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, 0); +	struct page *page;  	pte_t *pte; +	page = alloc_pages(GFP_KERNEL|__GFP_REPEAT|__GFP_ZERO, 0);  	if(!page)  		return NULL; +	if (!pgtable_page_ctor(page)) { +		__free_page(page); +		return NULL; +	}  	pte = kmap(page);  	__flush_page_to_ram(pte);  	flush_tlb_kernel_page(pte);  	nocache_page(pte);  	kunmap(page); -	pgtable_page_ctor(page);  	return page;  } diff --git a/arch/m68k/include/asm/mvme16xhw.h b/arch/m68k/include/asm/mvme16xhw.h index 6117f56653d..1eb89de631e 100644 --- a/arch/m68k/include/asm/mvme16xhw.h +++ b/arch/m68k/include/asm/mvme16xhw.h @@ -3,23 +3,6 @@  #include <asm/irq.h> -/* Board ID data structure - pointer to this retrieved from Bug by head.S */ - -/* Note, bytes 12 and 13 are board no in BCD (0162,0166,0167,0177,etc) */ - -extern long mvme_bdid_ptr; - -typedef struct { -	char	bdid[4]; -	u_char	rev, mth, day, yr; -	u_short	size, reserved; -	u_short	brdno; -	char brdsuffix[2]; -	u_long	options; -	u_short	clun, dlun, ctype, dnum; -	u_long	option2; -} t_bdid, *p_bdid; -  typedef struct {  	u_char	ack_icr, diff --git a/arch/m68k/include/asm/setup.h b/arch/m68k/include/asm/setup.h index 65e78a2dad6..8f2023f8c1c 100644 --- a/arch/m68k/include/asm/setup.h +++ b/arch/m68k/include/asm/setup.h @@ -22,6 +22,7 @@  #ifndef _M68K_SETUP_H  #define _M68K_SETUP_H +#include <uapi/asm/bootinfo.h>  #include <uapi/asm/setup.h> @@ -297,14 +298,14 @@ extern int m68k_is040or060;  #define NUM_MEMINFO	4  #ifndef __ASSEMBLY__ -struct mem_info { +struct m68k_mem_info {  	unsigned long addr;		/* physical address of memory chunk */  	unsigned long size;		/* length of memory chunk (in bytes) */  };  extern int m68k_num_memory;		/* # of memory blocks found (and used) */  extern int m68k_realnum_memory;		/* real # of memory blocks found */ -extern struct mem_info m68k_memory[NUM_MEMINFO];/* memory description */ +extern struct m68k_mem_info m68k_memory[NUM_MEMINFO];/* memory description */  #endif  #endif /* _M68K_SETUP_H */ diff --git a/arch/m68k/include/asm/signal.h b/arch/m68k/include/asm/signal.h index 214320b5038..8c8ce5e1ee0 100644 --- a/arch/m68k/include/asm/signal.h +++ b/arch/m68k/include/asm/signal.h @@ -60,15 +60,6 @@ static inline int __gen_sigismember(sigset_t *set, int _sig)  	 __const_sigismember(set,sig) :		\  	 __gen_sigismember(set,sig)) -static inline int sigfindinword(unsigned long word) -{ -	asm ("bfffo %1{#0,#0},%0" -		: "=d" (word) -		: "d" (word & -word) -		: "cc"); -	return word ^ 31; -} -  #endif /* !CONFIG_CPU_HAS_NO_BITFIELDS */  #ifndef __uClinux__ diff --git a/arch/m68k/include/asm/sun3_pgalloc.h b/arch/m68k/include/asm/sun3_pgalloc.h index 48d80d5a666..f868506e335 100644 --- a/arch/m68k/include/asm/sun3_pgalloc.h +++ b/arch/m68k/include/asm/sun3_pgalloc.h @@ -59,7 +59,10 @@ static inline pgtable_t pte_alloc_one(struct mm_struct *mm,  		return NULL;  	clear_highpage(page); -	pgtable_page_ctor(page); +	if (!pgtable_page_ctor(page)) { +		__free_page(page); +		return NULL; +	}  	return page;  } diff --git a/arch/m68k/include/asm/sun3xflop.h b/arch/m68k/include/asm/sun3xflop.h index 95231e2f9d6..a02ea3a7bb2 100644 --- a/arch/m68k/include/asm/sun3xflop.h +++ b/arch/m68k/include/asm/sun3xflop.h @@ -207,7 +207,7 @@ static int sun3xflop_request_irq(void)  	if(!once) {  		once = 1;  		error = request_irq(FLOPPY_IRQ, sun3xflop_hardint, -				    IRQF_DISABLED, "floppy", NULL); +				    0, "floppy", NULL);  		return ((error == 0) ? 0 : -1);  	} else return 0;  } diff --git a/arch/m68k/include/asm/thread_info.h b/arch/m68k/include/asm/thread_info.h index 126131f94a2..21a4784ca5a 100644 --- a/arch/m68k/include/asm/thread_info.h +++ b/arch/m68k/include/asm/thread_info.h @@ -35,8 +35,6 @@ struct thread_info {  };  #endif /* __ASSEMBLY__ */ -#define PREEMPT_ACTIVE		0x4000000 -  #define INIT_THREAD_INFO(tsk)			\  {						\  	.task		= &tsk,			\ diff --git a/arch/m68k/include/asm/timex.h b/arch/m68k/include/asm/timex.h index 6759dad954f..efc1f489235 100644 --- a/arch/m68k/include/asm/timex.h +++ b/arch/m68k/include/asm/timex.h @@ -28,4 +28,14 @@ static inline cycles_t get_cycles(void)  	return 0;  } +extern unsigned long (*mach_random_get_entropy)(void); + +static inline unsigned long random_get_entropy(void) +{ +	if (mach_random_get_entropy) +		return mach_random_get_entropy(); +	return 0; +} +#define random_get_entropy	random_get_entropy +  #endif diff --git a/arch/m68k/include/asm/uaccess.h b/arch/m68k/include/asm/uaccess.h index 639c731568b..3fadc4a93d9 100644 --- a/arch/m68k/include/asm/uaccess.h +++ b/arch/m68k/include/asm/uaccess.h @@ -3,3 +3,10 @@  #else  #include <asm/uaccess_mm.h>  #endif + +#ifdef CONFIG_CPU_HAS_NO_UNALIGNED +#include <asm-generic/uaccess-unaligned.h> +#else +#define __get_user_unaligned(x, ptr)	__get_user((x), (ptr)) +#define __put_user_unaligned(x, ptr)	__put_user((x), (ptr)) +#endif diff --git a/arch/m68k/include/asm/unistd.h b/arch/m68k/include/asm/unistd.h index 014f288fc81..1fcdd344c7a 100644 --- a/arch/m68k/include/asm/unistd.h +++ b/arch/m68k/include/asm/unistd.h @@ -4,7 +4,7 @@  #include <uapi/asm/unistd.h> -#define NR_syscalls		349 +#define NR_syscalls		352  #define __ARCH_WANT_OLD_READDIR  #define __ARCH_WANT_OLD_STAT @@ -13,7 +13,6 @@  #define __ARCH_WANT_SYS_GETHOSTNAME  #define __ARCH_WANT_SYS_IPC  #define __ARCH_WANT_SYS_PAUSE -#define __ARCH_WANT_SYS_SGETMASK  #define __ARCH_WANT_SYS_SIGNAL  #define __ARCH_WANT_SYS_TIME  #define __ARCH_WANT_SYS_UTIME diff --git a/arch/m68k/include/uapi/asm/Kbuild b/arch/m68k/include/uapi/asm/Kbuild index 1fef45ada09..6a2d257bdfb 100644 --- a/arch/m68k/include/uapi/asm/Kbuild +++ b/arch/m68k/include/uapi/asm/Kbuild @@ -11,6 +11,14 @@ generic-y += termbits.h  generic-y += termios.h  header-y += a.out.h +header-y += bootinfo.h +header-y += bootinfo-amiga.h +header-y += bootinfo-apollo.h +header-y += bootinfo-atari.h +header-y += bootinfo-hp300.h +header-y += bootinfo-mac.h +header-y += bootinfo-q40.h +header-y += bootinfo-vme.h  header-y += byteorder.h  header-y += cachectl.h  header-y += fcntl.h diff --git a/arch/m68k/include/uapi/asm/bootinfo-amiga.h b/arch/m68k/include/uapi/asm/bootinfo-amiga.h new file mode 100644 index 00000000000..daad3c58d2d --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-amiga.h @@ -0,0 +1,63 @@ +/* +** asm/bootinfo-amiga.h -- Amiga-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_AMIGA_H +#define _UAPI_ASM_M68K_BOOTINFO_AMIGA_H + + +    /* +     *  Amiga-specific tags +     */ + +#define BI_AMIGA_MODEL		0x8000	/* model (__be32) */ +#define BI_AMIGA_AUTOCON	0x8001	/* AutoConfig device */ +					/* (AmigaOS struct ConfigDev) */ +#define BI_AMIGA_CHIP_SIZE	0x8002	/* size of Chip RAM (__be32) */ +#define BI_AMIGA_VBLANK		0x8003	/* VBLANK frequency (__u8) */ +#define BI_AMIGA_PSFREQ		0x8004	/* power supply frequency (__u8) */ +#define BI_AMIGA_ECLOCK		0x8005	/* EClock frequency (__be32) */ +#define BI_AMIGA_CHIPSET	0x8006	/* native chipset present (__be32) */ +#define BI_AMIGA_SERPER		0x8007	/* serial port period (__be16) */ + + +    /* +     *  Amiga models (BI_AMIGA_MODEL) +     */ + +#define AMI_UNKNOWN		0 +#define AMI_500			1 +#define AMI_500PLUS		2 +#define AMI_600			3 +#define AMI_1000		4 +#define AMI_1200		5 +#define AMI_2000		6 +#define AMI_2500		7 +#define AMI_3000		8 +#define AMI_3000T		9 +#define AMI_3000PLUS		10 +#define AMI_4000		11 +#define AMI_4000T		12 +#define AMI_CDTV		13 +#define AMI_CD32		14 +#define AMI_DRACO		15 + + +    /* +     *  Amiga chipsets (BI_AMIGA_CHIPSET) +     */ + +#define CS_STONEAGE		0 +#define CS_OCS			1 +#define CS_ECS			2 +#define CS_AGA			3 + + +    /* +     *  Latest Amiga bootinfo version +     */ + +#define AMIGA_BOOTI_VERSION	MK_BI_VERSION(2, 0) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_AMIGA_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-apollo.h b/arch/m68k/include/uapi/asm/bootinfo-apollo.h new file mode 100644 index 00000000000..a93e0af1c6f --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-apollo.h @@ -0,0 +1,28 @@ +/* +** asm/bootinfo-apollo.h -- Apollo-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_APOLLO_H +#define _UAPI_ASM_M68K_BOOTINFO_APOLLO_H + + +    /* +     *  Apollo-specific tags +     */ + +#define BI_APOLLO_MODEL		0x8000	/* model (__be32) */ + + +    /* +     *  Apollo models (BI_APOLLO_MODEL) +     */ + +#define APOLLO_UNKNOWN		0 +#define APOLLO_DN3000		1 +#define APOLLO_DN3010		2 +#define APOLLO_DN3500		3 +#define APOLLO_DN4000		4 +#define APOLLO_DN4500		5 + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_APOLLO_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-atari.h b/arch/m68k/include/uapi/asm/bootinfo-atari.h new file mode 100644 index 00000000000..a817854049b --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-atari.h @@ -0,0 +1,44 @@ +/* +** asm/bootinfo-atari.h -- Atari-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_ATARI_H +#define _UAPI_ASM_M68K_BOOTINFO_ATARI_H + + +    /* +     *  Atari-specific tags +     */ + +#define BI_ATARI_MCH_COOKIE	0x8000	/* _MCH cookie from TOS (__be32) */ +#define BI_ATARI_MCH_TYPE	0x8001	/* special machine type (__be32) */ + + +    /* +     *  mch_cookie values (upper word of BI_ATARI_MCH_COOKIE) +     */ + +#define ATARI_MCH_ST		0 +#define ATARI_MCH_STE		1 +#define ATARI_MCH_TT		2 +#define ATARI_MCH_FALCON	3 + + +    /* +     *  Atari machine types (BI_ATARI_MCH_TYPE) +     */ + +#define ATARI_MACH_NORMAL	0	/* no special machine type */ +#define ATARI_MACH_MEDUSA	1	/* Medusa 040 */ +#define ATARI_MACH_HADES	2	/* Hades 040 or 060 */ +#define ATARI_MACH_AB40		3	/* Afterburner040 on Falcon */ + + +    /* +     *  Latest Atari bootinfo version +     */ + +#define ATARI_BOOTI_VERSION	MK_BI_VERSION(2, 1) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_ATARI_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-hp300.h b/arch/m68k/include/uapi/asm/bootinfo-hp300.h new file mode 100644 index 00000000000..c90cb71ed89 --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-hp300.h @@ -0,0 +1,50 @@ +/* +** asm/bootinfo-hp300.h -- HP9000/300-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_HP300_H +#define _UAPI_ASM_M68K_BOOTINFO_HP300_H + + +    /* +     *  HP9000/300-specific tags +     */ + +#define BI_HP300_MODEL		0x8000	/* model (__be32) */ +#define BI_HP300_UART_SCODE	0x8001	/* UART select code (__be32) */ +#define BI_HP300_UART_ADDR	0x8002	/* phys. addr of UART (__be32) */ + + +    /* +     *  HP9000/300 and /400 models (BI_HP300_MODEL) +     * +     * This information was taken from NetBSD +     */ + +#define HP_320		0	/* 16MHz 68020+HP MMU+16K external cache */ +#define HP_330		1	/* 16MHz 68020+68851 MMU */ +#define HP_340		2	/* 16MHz 68030 */ +#define HP_345		3	/* 50MHz 68030+32K external cache */ +#define HP_350		4	/* 25MHz 68020+HP MMU+32K external cache */ +#define HP_360		5	/* 25MHz 68030 */ +#define HP_370		6	/* 33MHz 68030+64K external cache */ +#define HP_375		7	/* 50MHz 68030+32K external cache */ +#define HP_380		8	/* 25MHz 68040 */ +#define HP_385		9	/* 33MHz 68040 */ + +#define HP_400		10	/* 50MHz 68030+32K external cache */ +#define HP_425T		11	/* 25MHz 68040 - model 425t */ +#define HP_425S		12	/* 25MHz 68040 - model 425s */ +#define HP_425E		13	/* 25MHz 68040 - model 425e */ +#define HP_433T		14	/* 33MHz 68040 - model 433t */ +#define HP_433S		15	/* 33MHz 68040 - model 433s */ + + +    /* +     *  Latest HP9000/300 bootinfo version +     */ + +#define HP300_BOOTI_VERSION	MK_BI_VERSION(2, 0) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_HP300_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-mac.h b/arch/m68k/include/uapi/asm/bootinfo-mac.h new file mode 100644 index 00000000000..b44ff73898a --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-mac.h @@ -0,0 +1,119 @@ +/* +** asm/bootinfo-mac.h -- Macintosh-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_MAC_H +#define _UAPI_ASM_M68K_BOOTINFO_MAC_H + + +    /* +     *  Macintosh-specific tags (all __be32) +     */ + +#define BI_MAC_MODEL		0x8000	/* Mac Gestalt ID (model type) */ +#define BI_MAC_VADDR		0x8001	/* Mac video base address */ +#define BI_MAC_VDEPTH		0x8002	/* Mac video depth */ +#define BI_MAC_VROW		0x8003	/* Mac video rowbytes */ +#define BI_MAC_VDIM		0x8004	/* Mac video dimensions */ +#define BI_MAC_VLOGICAL		0x8005	/* Mac video logical base */ +#define BI_MAC_SCCBASE		0x8006	/* Mac SCC base address */ +#define BI_MAC_BTIME		0x8007	/* Mac boot time */ +#define BI_MAC_GMTBIAS		0x8008	/* Mac GMT timezone offset */ +#define BI_MAC_MEMSIZE		0x8009	/* Mac RAM size (sanity check) */ +#define BI_MAC_CPUID		0x800a	/* Mac CPU type (sanity check) */ +#define BI_MAC_ROMBASE		0x800b	/* Mac system ROM base address */ + + +    /* +     *  Macintosh hardware profile data - unused, see macintosh.h for +     *  reasonable type values +     */ + +#define BI_MAC_VIA1BASE		0x8010	/* Mac VIA1 base address (always present) */ +#define BI_MAC_VIA2BASE		0x8011	/* Mac VIA2 base address (type varies) */ +#define BI_MAC_VIA2TYPE		0x8012	/* Mac VIA2 type (VIA, RBV, OSS) */ +#define BI_MAC_ADBTYPE		0x8013	/* Mac ADB interface type */ +#define BI_MAC_ASCBASE		0x8014	/* Mac Apple Sound Chip base address */ +#define BI_MAC_SCSI5380		0x8015	/* Mac NCR 5380 SCSI (base address, multi) */ +#define BI_MAC_SCSIDMA		0x8016	/* Mac SCSI DMA (base address) */ +#define BI_MAC_SCSI5396		0x8017	/* Mac NCR 53C96 SCSI (base address, multi) */ +#define BI_MAC_IDETYPE		0x8018	/* Mac IDE interface type */ +#define BI_MAC_IDEBASE		0x8019	/* Mac IDE interface base address */ +#define BI_MAC_NUBUS		0x801a	/* Mac Nubus type (none, regular, pseudo) */ +#define BI_MAC_SLOTMASK		0x801b	/* Mac Nubus slots present */ +#define BI_MAC_SCCTYPE		0x801c	/* Mac SCC serial type (normal, IOP) */ +#define BI_MAC_ETHTYPE		0x801d	/* Mac builtin ethernet type (Sonic, MACE */ +#define BI_MAC_ETHBASE		0x801e	/* Mac builtin ethernet base address */ +#define BI_MAC_PMU		0x801f	/* Mac power management / poweroff hardware */ +#define BI_MAC_IOP_SWIM		0x8020	/* Mac SWIM floppy IOP */ +#define BI_MAC_IOP_ADB		0x8021	/* Mac ADB IOP */ + + +    /* +     * Macintosh Gestalt numbers (BI_MAC_MODEL) +     */ + +#define MAC_MODEL_II		6 +#define MAC_MODEL_IIX		7 +#define MAC_MODEL_IICX		8 +#define MAC_MODEL_SE30		9 +#define MAC_MODEL_IICI		11 +#define MAC_MODEL_IIFX		13	/* And well numbered it is too */ +#define MAC_MODEL_IISI		18 +#define MAC_MODEL_LC		19 +#define MAC_MODEL_Q900		20 +#define MAC_MODEL_PB170		21 +#define MAC_MODEL_Q700		22 +#define MAC_MODEL_CLII		23	/* aka: P200 */ +#define MAC_MODEL_PB140		25 +#define MAC_MODEL_Q950		26	/* aka: WGS95 */ +#define MAC_MODEL_LCIII		27	/* aka: P450 */ +#define MAC_MODEL_PB210		29 +#define MAC_MODEL_C650		30 +#define MAC_MODEL_PB230		32 +#define MAC_MODEL_PB180		33 +#define MAC_MODEL_PB160		34 +#define MAC_MODEL_Q800		35	/* aka: WGS80 */ +#define MAC_MODEL_Q650		36 +#define MAC_MODEL_LCII		37	/* aka: P400/405/410/430 */ +#define MAC_MODEL_PB250		38 +#define MAC_MODEL_IIVI		44 +#define MAC_MODEL_P600		45	/* aka: P600CD */ +#define MAC_MODEL_IIVX		48 +#define MAC_MODEL_CCL		49	/* aka: P250 */ +#define MAC_MODEL_PB165C	50 +#define MAC_MODEL_C610		52	/* aka: WGS60 */ +#define MAC_MODEL_Q610		53 +#define MAC_MODEL_PB145		54	/* aka: PB145B */ +#define MAC_MODEL_P520		56	/* aka: LC520 */ +#define MAC_MODEL_C660		60 +#define MAC_MODEL_P460		62	/* aka: LCIII+, P466/P467 */ +#define MAC_MODEL_PB180C	71 +#define MAC_MODEL_PB520		72	/* aka: PB520C, PB540, PB540C, PB550C */ +#define MAC_MODEL_PB270C	77 +#define MAC_MODEL_Q840		78 +#define MAC_MODEL_P550		80	/* aka: LC550, P560 */ +#define MAC_MODEL_CCLII		83	/* aka: P275 */ +#define MAC_MODEL_PB165		84 +#define MAC_MODEL_PB190		85	/* aka: PB190CS */ +#define MAC_MODEL_TV		88 +#define MAC_MODEL_P475		89	/* aka: LC475, P476 */ +#define MAC_MODEL_P475F		90	/* aka: P475 w/ FPU (no LC040) */ +#define MAC_MODEL_P575		92	/* aka: LC575, P577/P578 */ +#define MAC_MODEL_Q605		94 +#define MAC_MODEL_Q605_ACC	95	/* Q605 accelerated to 33 MHz */ +#define MAC_MODEL_Q630		98	/* aka: LC630, P630/631/635/636/637/638/640 */ +#define MAC_MODEL_P588		99	/* aka: LC580, P580 */ +#define MAC_MODEL_PB280		102 +#define MAC_MODEL_PB280C	103 +#define MAC_MODEL_PB150		115 + + +    /* +     *  Latest Macintosh bootinfo version +     */ + +#define MAC_BOOTI_VERSION	MK_BI_VERSION(2, 0) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_MAC_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-q40.h b/arch/m68k/include/uapi/asm/bootinfo-q40.h new file mode 100644 index 00000000000..c79fea7e555 --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-q40.h @@ -0,0 +1,16 @@ +/* +** asm/bootinfo-q40.h -- Q40-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_Q40_H +#define _UAPI_ASM_M68K_BOOTINFO_Q40_H + + +    /* +     *  Latest Q40 bootinfo version +     */ + +#define Q40_BOOTI_VERSION	MK_BI_VERSION(2, 0) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_Q40_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo-vme.h b/arch/m68k/include/uapi/asm/bootinfo-vme.h new file mode 100644 index 00000000000..a135eb41d67 --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo-vme.h @@ -0,0 +1,70 @@ +/* +** asm/bootinfo-vme.h -- VME-specific boot information definitions +*/ + +#ifndef _UAPI_ASM_M68K_BOOTINFO_VME_H +#define _UAPI_ASM_M68K_BOOTINFO_VME_H + + +#include <linux/types.h> + + +    /* +     *  VME-specific tags +     */ + +#define BI_VME_TYPE		0x8000	/* VME sub-architecture (__be32) */ +#define BI_VME_BRDINFO		0x8001	/* VME board information (struct) */ + + +    /* +     *  VME models (BI_VME_TYPE) +     */ + +#define VME_TYPE_TP34V		0x0034	/* Tadpole TP34V */ +#define VME_TYPE_MVME147	0x0147	/* Motorola MVME147 */ +#define VME_TYPE_MVME162	0x0162	/* Motorola MVME162 */ +#define VME_TYPE_MVME166	0x0166	/* Motorola MVME166 */ +#define VME_TYPE_MVME167	0x0167	/* Motorola MVME167 */ +#define VME_TYPE_MVME172	0x0172	/* Motorola MVME172 */ +#define VME_TYPE_MVME177	0x0177	/* Motorola MVME177 */ +#define VME_TYPE_BVME4000	0x4000	/* BVM Ltd. BVME4000 */ +#define VME_TYPE_BVME6000	0x6000	/* BVM Ltd. BVME6000 */ + + +#ifndef __ASSEMBLY__ + +/* + * Board ID data structure - pointer to this retrieved from Bug by head.S + * + * BI_VME_BRDINFO is a 32 byte struct as returned by the Bug code on + * Motorola VME boards.  Contains board number, Bug version, board + * configuration options, etc. + * + * Note, bytes 12 and 13 are board no in BCD (0162,0166,0167,0177,etc) + */ + +typedef struct { +	char	bdid[4]; +	__u8	rev, mth, day, yr; +	__be16	size, reserved; +	__be16	brdno; +	char	brdsuffix[2]; +	__be32	options; +	__be16	clun, dlun, ctype, dnum; +	__be32	option2; +} t_bdid, *p_bdid; + +#endif /* __ASSEMBLY__ */ + + +    /* +     *  Latest VME bootinfo versions +     */ + +#define MVME147_BOOTI_VERSION	MK_BI_VERSION(2, 0) +#define MVME16x_BOOTI_VERSION	MK_BI_VERSION(2, 0) +#define BVME6000_BOOTI_VERSION	MK_BI_VERSION(2, 0) + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_VME_H */ diff --git a/arch/m68k/include/uapi/asm/bootinfo.h b/arch/m68k/include/uapi/asm/bootinfo.h new file mode 100644 index 00000000000..cdeb26a015b --- /dev/null +++ b/arch/m68k/include/uapi/asm/bootinfo.h @@ -0,0 +1,174 @@ +/* + * asm/bootinfo.h -- Definition of the Linux/m68k boot information structure + * + * Copyright 1992 by Greg Harp + * + * 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 _UAPI_ASM_M68K_BOOTINFO_H +#define _UAPI_ASM_M68K_BOOTINFO_H + + +#include <linux/types.h> + + +#ifndef __ASSEMBLY__ + +    /* +     *  Bootinfo definitions +     * +     *  This is an easily parsable and extendable structure containing all +     *  information to be passed from the bootstrap to the kernel. +     * +     *  This way I hope to keep all future changes back/forewards compatible. +     *  Thus, keep your fingers crossed... +     * +     *  This structure is copied right after the kernel by the bootstrap +     *  routine. +     */ + +struct bi_record { +	__be16 tag;			/* tag ID */ +	__be16 size;			/* size of record (in bytes) */ +	__be32 data[0];			/* data */ +}; + + +struct mem_info { +	__be32 addr;			/* physical address of memory chunk */ +	__be32 size;			/* length of memory chunk (in bytes) */ +}; + +#endif /* __ASSEMBLY__ */ + + +    /* +     *  Tag Definitions +     * +     *  Machine independent tags start counting from 0x0000 +     *  Machine dependent tags start counting from 0x8000 +     */ + +#define BI_LAST			0x0000	/* last record (sentinel) */ +#define BI_MACHTYPE		0x0001	/* machine type (__be32) */ +#define BI_CPUTYPE		0x0002	/* cpu type (__be32) */ +#define BI_FPUTYPE		0x0003	/* fpu type (__be32) */ +#define BI_MMUTYPE		0x0004	/* mmu type (__be32) */ +#define BI_MEMCHUNK		0x0005	/* memory chunk address and size */ +					/* (struct mem_info) */ +#define BI_RAMDISK		0x0006	/* ramdisk address and size */ +					/* (struct mem_info) */ +#define BI_COMMAND_LINE		0x0007	/* kernel command line parameters */ +					/* (string) */ + + +    /* +     *  Linux/m68k Architectures (BI_MACHTYPE) +     */ + +#define MACH_AMIGA		1 +#define MACH_ATARI		2 +#define MACH_MAC		3 +#define MACH_APOLLO		4 +#define MACH_SUN3		5 +#define MACH_MVME147		6 +#define MACH_MVME16x		7 +#define MACH_BVME6000		8 +#define MACH_HP300		9 +#define MACH_Q40		10 +#define MACH_SUN3X		11 +#define MACH_M54XX		12 + + +    /* +     *  CPU, FPU and MMU types (BI_CPUTYPE, BI_FPUTYPE, BI_MMUTYPE) +     * +     *  Note: we may rely on the following equalities: +     * +     *      CPU_68020 == MMU_68851 +     *      CPU_68030 == MMU_68030 +     *      CPU_68040 == FPU_68040 == MMU_68040 +     *      CPU_68060 == FPU_68060 == MMU_68060 +     */ + +#define CPUB_68020		0 +#define CPUB_68030		1 +#define CPUB_68040		2 +#define CPUB_68060		3 +#define CPUB_COLDFIRE		4 + +#define CPU_68020		(1 << CPUB_68020) +#define CPU_68030		(1 << CPUB_68030) +#define CPU_68040		(1 << CPUB_68040) +#define CPU_68060		(1 << CPUB_68060) +#define CPU_COLDFIRE		(1 << CPUB_COLDFIRE) + +#define FPUB_68881		0 +#define FPUB_68882		1 +#define FPUB_68040		2	/* Internal FPU */ +#define FPUB_68060		3	/* Internal FPU */ +#define FPUB_SUNFPA		4	/* Sun-3 FPA */ +#define FPUB_COLDFIRE		5	/* ColdFire FPU */ + +#define FPU_68881		(1 << FPUB_68881) +#define FPU_68882		(1 << FPUB_68882) +#define FPU_68040		(1 << FPUB_68040) +#define FPU_68060		(1 << FPUB_68060) +#define FPU_SUNFPA		(1 << FPUB_SUNFPA) +#define FPU_COLDFIRE		(1 << FPUB_COLDFIRE) + +#define MMUB_68851		0 +#define MMUB_68030		1	/* Internal MMU */ +#define MMUB_68040		2	/* Internal MMU */ +#define MMUB_68060		3	/* Internal MMU */ +#define MMUB_APOLLO		4	/* Custom Apollo */ +#define MMUB_SUN3		5	/* Custom Sun-3 */ +#define MMUB_COLDFIRE		6	/* Internal MMU */ + +#define MMU_68851		(1 << MMUB_68851) +#define MMU_68030		(1 << MMUB_68030) +#define MMU_68040		(1 << MMUB_68040) +#define MMU_68060		(1 << MMUB_68060) +#define MMU_SUN3		(1 << MMUB_SUN3) +#define MMU_APOLLO		(1 << MMUB_APOLLO) +#define MMU_COLDFIRE		(1 << MMUB_COLDFIRE) + + +    /* +     * Stuff for bootinfo interface versioning +     * +     * At the start of kernel code, a 'struct bootversion' is located. +     * bootstrap checks for a matching version of the interface before booting +     * a kernel, to avoid user confusion if kernel and bootstrap don't work +     * together :-) +     * +     * If incompatible changes are made to the bootinfo interface, the major +     * number below should be stepped (and the minor reset to 0) for the +     * appropriate machine. If a change is backward-compatible, the minor +     * should be stepped. "Backwards-compatible" means that booting will work, +     * but certain features may not. +     */ + +#define BOOTINFOV_MAGIC			0x4249561A	/* 'BIV^Z' */ +#define MK_BI_VERSION(major, minor)	(((major) << 16) + (minor)) +#define BI_VERSION_MAJOR(v)		(((v) >> 16) & 0xffff) +#define BI_VERSION_MINOR(v)		((v) & 0xffff) + +#ifndef __ASSEMBLY__ + +struct bootversion { +	__be16 branch; +	__be32 magic; +	struct { +		__be32 machtype; +		__be32 version; +	} machversions[0]; +} __packed; + +#endif /* __ASSEMBLY__ */ + + +#endif /* _UAPI_ASM_M68K_BOOTINFO_H */ diff --git a/arch/m68k/include/uapi/asm/setup.h b/arch/m68k/include/uapi/asm/setup.h index 85579bff455..6a6dc636761 100644 --- a/arch/m68k/include/uapi/asm/setup.h +++ b/arch/m68k/include/uapi/asm/setup.h @@ -6,98 +6,11 @@  ** 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. -** -** Created 09/29/92 by Greg Harp -** -** 5/2/94 Roman Hodek: -**   Added bi_atari part of the machine dependent union bi_un; for now it -**   contains just a model field to distinguish between TT and Falcon. -** 26/7/96 Roman Zippel: -**   Renamed to setup.h; added some useful macros to allow gcc some -**   optimizations if possible. -** 5/10/96 Geert Uytterhoeven: -**   Redesign of the boot information structure; moved boot information -**   structure to bootinfo.h  */  #ifndef _UAPI_M68K_SETUP_H  #define _UAPI_M68K_SETUP_H - - -    /* -     *  Linux/m68k Architectures -     */ - -#define MACH_AMIGA    1 -#define MACH_ATARI    2 -#define MACH_MAC      3 -#define MACH_APOLLO   4 -#define MACH_SUN3     5 -#define MACH_MVME147  6 -#define MACH_MVME16x  7 -#define MACH_BVME6000 8 -#define MACH_HP300    9 -#define MACH_Q40     10 -#define MACH_SUN3X   11 -#define MACH_M54XX   12 -  #define COMMAND_LINE_SIZE 256 - - -    /* -     *  CPU, FPU and MMU types -     * -     *  Note: we may rely on the following equalities: -     * -     *      CPU_68020 == MMU_68851 -     *      CPU_68030 == MMU_68030 -     *      CPU_68040 == FPU_68040 == MMU_68040 -     *      CPU_68060 == FPU_68060 == MMU_68060 -     */ - -#define CPUB_68020     0 -#define CPUB_68030     1 -#define CPUB_68040     2 -#define CPUB_68060     3 -#define CPUB_COLDFIRE  4 - -#define CPU_68020      (1<<CPUB_68020) -#define CPU_68030      (1<<CPUB_68030) -#define CPU_68040      (1<<CPUB_68040) -#define CPU_68060      (1<<CPUB_68060) -#define CPU_COLDFIRE   (1<<CPUB_COLDFIRE) - -#define FPUB_68881     0 -#define FPUB_68882     1 -#define FPUB_68040     2                       /* Internal FPU */ -#define FPUB_68060     3                       /* Internal FPU */ -#define FPUB_SUNFPA    4                       /* Sun-3 FPA */ -#define FPUB_COLDFIRE  5                       /* ColdFire FPU */ - -#define FPU_68881      (1<<FPUB_68881) -#define FPU_68882      (1<<FPUB_68882) -#define FPU_68040      (1<<FPUB_68040) -#define FPU_68060      (1<<FPUB_68060) -#define FPU_SUNFPA     (1<<FPUB_SUNFPA) -#define FPU_COLDFIRE   (1<<FPUB_COLDFIRE) - -#define MMUB_68851     0 -#define MMUB_68030     1                       /* Internal MMU */ -#define MMUB_68040     2                       /* Internal MMU */ -#define MMUB_68060     3                       /* Internal MMU */ -#define MMUB_APOLLO    4                       /* Custom Apollo */ -#define MMUB_SUN3      5                       /* Custom Sun-3 */ -#define MMUB_COLDFIRE  6                       /* Internal MMU */ - -#define MMU_68851      (1<<MMUB_68851) -#define MMU_68030      (1<<MMUB_68030) -#define MMU_68040      (1<<MMUB_68040) -#define MMU_68060      (1<<MMUB_68060) -#define MMU_SUN3       (1<<MMUB_SUN3) -#define MMU_APOLLO     (1<<MMUB_APOLLO) -#define MMU_COLDFIRE   (1<<MMUB_COLDFIRE) - -  #endif /* _UAPI_M68K_SETUP_H */ diff --git a/arch/m68k/include/uapi/asm/unistd.h b/arch/m68k/include/uapi/asm/unistd.h index 625f321001d..9cd82fbc781 100644 --- a/arch/m68k/include/uapi/asm/unistd.h +++ b/arch/m68k/include/uapi/asm/unistd.h @@ -354,5 +354,8 @@  #define __NR_process_vm_writev	346  #define __NR_kcmp		347  #define __NR_finit_module	348 +#define __NR_sched_setattr	349 +#define __NR_sched_getattr	350 +#define __NR_renameat2		351  #endif /* _UAPI_ASM_M68K_UNISTD_H_ */  | 
