Merge git://git.infradead.org/battery-2.6
[linux-2.6] / arch / powerpc / platforms / iseries / ipl_parms.h
1 /*
2  * Copyright (C) 2001  Mike Corrigan IBM Corporation
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17  */
18 #ifndef _ISERIES_IPL_PARMS_H
19 #define _ISERIES_IPL_PARMS_H
20
21 /*
22  *      This struct maps the IPL Parameters DMA'd from the SP.
23  *
24  * Warning:
25  *      This data must map in exactly 64 bytes and match the architecture for
26  *      the IPL parms
27  */
28
29 #include <asm/types.h>
30
31 struct ItIplParmsReal {
32         u8      xFormat;                // Defines format of IplParms   x00-x00
33         u8      xRsvd01:6;              // Reserved                     x01-x01
34         u8      xAlternateSearch:1;     // Alternate search indicator   ...
35         u8      xUaSupplied:1;          // UA Supplied on programmed IPL...
36         u8      xLsUaFormat;            // Format byte for UA           x02-x02
37         u8      xRsvd02;                // Reserved                     x03-x03
38         u32     xLsUa;                  // LS UA                        x04-x07
39         u32     xUnusedLsLid;           // First OS LID to load         x08-x0B
40         u16     xLsBusNumber;           // LS Bus Number                x0C-x0D
41         u8      xLsCardAdr;             // LS Card Address              x0E-x0E
42         u8      xLsBoardAdr;            // LS Board Address             x0F-x0F
43         u32     xRsvd03;                // Reserved                     x10-x13
44         u8      xSpcnPresent:1;         // SPCN present                 x14-x14
45         u8      xCpmPresent:1;          // CPM present                  ...
46         u8      xRsvd04:6;              // Reserved                     ...
47         u8      xRsvd05:4;              // Reserved                     x15-x15
48         u8      xKeyLock:4;             // Keylock setting              ...
49         u8      xRsvd06:6;              // Reserved                     x16-x16
50         u8      xIplMode:2;             // Ipl mode (A|B|C|D)           ...
51         u8      xHwIplType;             // Fast v slow v slow EC HW IPL x17-x17
52         u16     xCpmEnabledIpl:1;       // CPM in effect when IPL initiatedx18-x19
53         u16     xPowerOnResetIpl:1;     // Indicate POR condition       ...
54         u16     xMainStorePreserved:1;  // Main Storage is preserved    ...
55         u16     xRsvd07:13;             // Reserved                     ...
56         u16     xIplSource:16;          // Ipl source                   x1A-x1B
57         u8      xIplReason:8;           // Reason for this IPL          x1C-x1C
58         u8      xRsvd08;                // Reserved                     x1D-x1D
59         u16     xRsvd09;                // Reserved                     x1E-x1F
60         u16     xSysBoxType;            // System Box Type              x20-x21
61         u16     xSysProcType;           // System Processor Type        x22-x23
62         u32     xRsvd10;                // Reserved                     x24-x27
63         u64     xRsvd11;                // Reserved                     x28-x2F
64         u64     xRsvd12;                // Reserved                     x30-x37
65         u64     xRsvd13;                // Reserved                     x38-x3F
66 };
67
68 extern struct ItIplParmsReal    xItIplParmsReal;
69
70 #endif /* _ISERIES_IPL_PARMS_H */