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 *)  (0x10400))
19#define INITRD_START      (*(unsigned long *)  (0x10408))
20#define INITRD_SIZE       (*(unsigned long *)  (0x10410))
21#define COMMAND_LINE      ((char *)            (0x10480))
22
23/*
24 * Machine features detected in head.S
25 */
26extern unsigned long machine_flags;
27
28#define MACHINE_IS_VM		(machine_flags & 1)
29#define MACHINE_IS_P390		(machine_flags & 4)
30#define MACHINE_HAS_MVPG	(machine_flags & 16)
31#define MACHINE_HAS_DIAG44	(machine_flags & 32)
32
33#define MACHINE_HAS_HWC		(!MACHINE_IS_P390)
34
35/*
36 * Console mode. Override with conmode=
37 */
38extern unsigned int console_mode;
39extern unsigned int console_device;
40
41#define CONSOLE_IS_UNDEFINED	(console_mode == 0)
42#define CONSOLE_IS_HWC		(console_mode == 1)
43#define CONSOLE_IS_3215		(console_mode == 2)
44#define CONSOLE_IS_3270		(console_mode == 3)
45#define SET_CONSOLE_HWC		do { console_mode = 1; } while (0)
46#define SET_CONSOLE_3215	do { console_mode = 2; } while (0)
47#define SET_CONSOLE_3270	do { console_mode = 3; } while (0)
48
49#else
50
51#define IPL_DEVICE        0x10400
52#define INITRD_START      0x10408
53#define INITRD_SIZE       0x10410
54#define COMMAND_LINE      0x10480
55
56#endif
57
58#endif
59