1 /*
2  *  include/asm-s390/setup.h
3  *
4  *  S390 version
5  *    Copyright (C) 1999 IBM Deutschland Entwicklung GmbH, IBM Corporation
6  */
7 
8 #ifndef _ASM_S390_SETUP_H
9 #define _ASM_S390_SETUP_H
10 
11 #define PARMAREA		0x10400
12 #define COMMAND_LINE_SIZE 	896
13 #define RAMDISK_ORIGIN		0x800000
14 #define RAMDISK_SIZE		0x800000
15 
16 #ifndef __ASSEMBLY__
17 
18 #define IPL_DEVICE        (*(unsigned long *)  (0x10404))
19 #define INITRD_START      (*(unsigned long *)  (0x1040C))
20 #define INITRD_SIZE       (*(unsigned long *)  (0x10414))
21 #define COMMAND_LINE      ((char *)            (0x10480))
22 
23 /*
24  * Machine features detected in head.S
25  */
26 extern unsigned long machine_flags;
27 
28 #define MACHINE_IS_VM    (machine_flags & 1)
29 #define MACHINE_HAS_IEEE (machine_flags & 2)
30 #define MACHINE_IS_P390  (machine_flags & 4)
31 #define MACHINE_HAS_CSP  (machine_flags & 8)
32 #define MACHINE_HAS_MVPG (machine_flags & 16)
33 #define MACHINE_NEW_STIDP	(machine_flags & 64)
34 #define MACHINE_HAS_PFIX (machine_flags & 128)
35 
36 #define MACHINE_HAS_HWC  (!MACHINE_IS_P390)
37 
38 /*
39  * Console mode. Override with conmode=
40  */
41 extern unsigned int console_mode;
42 extern unsigned int console_device;
43 
44 #define CONSOLE_IS_UNDEFINED	(console_mode == 0)
45 #define CONSOLE_IS_HWC		(console_mode == 1)
46 #define CONSOLE_IS_3215		(console_mode == 2)
47 #define CONSOLE_IS_3270		(console_mode == 3)
48 #define SET_CONSOLE_HWC		do { console_mode = 1; } while (0)
49 #define SET_CONSOLE_3215	do { console_mode = 2; } while (0)
50 #define SET_CONSOLE_3270	do { console_mode = 3; } while (0)
51 
52 #else
53 
54 #define IPL_DEVICE        0x10404
55 #define INITRD_START      0x1040C
56 #define INITRD_SIZE       0x10414
57 #define COMMAND_LINE      0x10480
58 
59 #endif
60 
61 #endif
62