blob: f9bb33a9798b0ff5962d4a6fa37edb6ab4e2b35e [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
Ben Cheng654325d2012-03-07 21:13:49 -080010 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080017 ****************************************************************************
18 ****************************************************************************/
19#ifndef __ASM_MPSPEC_DEF_H
20#define __ASM_MPSPEC_DEF_H
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080021#define SMP_MAGIC_IDENT (('_'<<24)|('P'<<16)|('M'<<8)|'_')
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080022#define MAX_MPC_ENTRY 1024
Ben Cheng654325d2012-03-07 21:13:49 -080023/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080024#define MAX_APICS 256
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080025struct intel_mp_floating
26{
27 char mpf_signature[4];
Ben Cheng654325d2012-03-07 21:13:49 -080028/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080029 unsigned long mpf_physptr;
30 unsigned char mpf_length;
31 unsigned char mpf_specification;
32 unsigned char mpf_checksum;
Ben Cheng654325d2012-03-07 21:13:49 -080033/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080034 unsigned char mpf_feature1;
35 unsigned char mpf_feature2;
36 unsigned char mpf_feature3;
37 unsigned char mpf_feature4;
Ben Cheng654325d2012-03-07 21:13:49 -080038/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080039 unsigned char mpf_feature5;
40};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080041struct mp_config_table
42{
Ben Cheng654325d2012-03-07 21:13:49 -080043/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080044 char mpc_signature[4];
45#define MPC_SIGNATURE "PCMP"
46 unsigned short mpc_length;
47 char mpc_spec;
Ben Cheng654325d2012-03-07 21:13:49 -080048/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080049 char mpc_checksum;
50 char mpc_oem[8];
51 char mpc_productid[12];
52 unsigned long mpc_oemptr;
Ben Cheng654325d2012-03-07 21:13:49 -080053/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080054 unsigned short mpc_oemsize;
55 unsigned short mpc_oemcount;
56 unsigned long mpc_lapic;
57 unsigned long reserved;
Ben Cheng654325d2012-03-07 21:13:49 -080058/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080059};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080060#define MP_PROCESSOR 0
61#define MP_BUS 1
62#define MP_IOAPIC 2
Ben Cheng654325d2012-03-07 21:13:49 -080063/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080064#define MP_INTSRC 3
65#define MP_LINTSRC 4
66#define MP_TRANSLATION 192
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080067struct mpc_config_processor
Ben Cheng654325d2012-03-07 21:13:49 -080068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080069{
70 unsigned char mpc_type;
71 unsigned char mpc_apicid;
72 unsigned char mpc_apicver;
Ben Cheng654325d2012-03-07 21:13:49 -080073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080074 unsigned char mpc_cpuflag;
75#define CPU_ENABLED 1
76#define CPU_BOOTPROCESSOR 2
77 unsigned long mpc_cpufeature;
Ben Cheng654325d2012-03-07 21:13:49 -080078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080079#define CPU_STEPPING_MASK 0x0F
80#define CPU_MODEL_MASK 0xF0
81#define CPU_FAMILY_MASK 0xF00
82 unsigned long mpc_featureflag;
Ben Cheng654325d2012-03-07 21:13:49 -080083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080084 unsigned long mpc_reserved[2];
85};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080086struct mpc_config_bus
87{
Ben Cheng654325d2012-03-07 21:13:49 -080088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080089 unsigned char mpc_type;
90 unsigned char mpc_busid;
91 unsigned char mpc_bustype[6];
92};
Ben Cheng654325d2012-03-07 21:13:49 -080093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080094#define BUSTYPE_EISA "EISA"
95#define BUSTYPE_ISA "ISA"
96#define BUSTYPE_INTERN "INTERN"
97#define BUSTYPE_MCA "MCA"
Ben Cheng654325d2012-03-07 21:13:49 -080098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080099#define BUSTYPE_VL "VL"
100#define BUSTYPE_PCI "PCI"
101#define BUSTYPE_PCMCIA "PCMCIA"
102#define BUSTYPE_CBUS "CBUS"
Ben Cheng654325d2012-03-07 21:13:49 -0800103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800104#define BUSTYPE_CBUSII "CBUSII"
105#define BUSTYPE_FUTURE "FUTURE"
106#define BUSTYPE_MBI "MBI"
107#define BUSTYPE_MBII "MBII"
Ben Cheng654325d2012-03-07 21:13:49 -0800108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800109#define BUSTYPE_MPI "MPI"
110#define BUSTYPE_MPSA "MPSA"
111#define BUSTYPE_NUBUS "NUBUS"
112#define BUSTYPE_TC "TC"
Ben Cheng654325d2012-03-07 21:13:49 -0800113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800114#define BUSTYPE_VME "VME"
115#define BUSTYPE_XPRESS "XPRESS"
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800116struct mpc_config_ioapic
117{
Ben Cheng654325d2012-03-07 21:13:49 -0800118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800119 unsigned char mpc_type;
120 unsigned char mpc_apicid;
121 unsigned char mpc_apicver;
122 unsigned char mpc_flags;
Ben Cheng654325d2012-03-07 21:13:49 -0800123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800124#define MPC_APIC_USABLE 0x01
125 unsigned long mpc_apicaddr;
126};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800127struct mpc_config_intsrc
Ben Cheng654325d2012-03-07 21:13:49 -0800128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800129{
130 unsigned char mpc_type;
131 unsigned char mpc_irqtype;
132 unsigned short mpc_irqflag;
Ben Cheng654325d2012-03-07 21:13:49 -0800133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800134 unsigned char mpc_srcbus;
135 unsigned char mpc_srcbusirq;
136 unsigned char mpc_dstapic;
137 unsigned char mpc_dstirq;
Ben Cheng654325d2012-03-07 21:13:49 -0800138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800139};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800140enum mp_irq_source_types {
141 mp_INT = 0,
142 mp_NMI = 1,
Ben Cheng654325d2012-03-07 21:13:49 -0800143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800144 mp_SMI = 2,
145 mp_ExtINT = 3
146};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800147#define MP_IRQDIR_DEFAULT 0
Ben Cheng654325d2012-03-07 21:13:49 -0800148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800149#define MP_IRQDIR_HIGH 1
150#define MP_IRQDIR_LOW 3
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800151struct mpc_config_lintsrc
152{
Ben Cheng654325d2012-03-07 21:13:49 -0800153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800154 unsigned char mpc_type;
155 unsigned char mpc_irqtype;
156 unsigned short mpc_irqflag;
157 unsigned char mpc_srcbusid;
Ben Cheng654325d2012-03-07 21:13:49 -0800158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800159 unsigned char mpc_srcbusirq;
160 unsigned char mpc_destapic;
161#define MP_APIC_ALL 0xFF
162 unsigned char mpc_destapiclint;
Ben Cheng654325d2012-03-07 21:13:49 -0800163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800164};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800165struct mp_config_oemtable
166{
167 char oem_signature[4];
Ben Cheng654325d2012-03-07 21:13:49 -0800168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800169#define MPC_OEM_SIGNATURE "_OEM"
170 unsigned short oem_length;
171 char oem_rev;
172 char oem_checksum;
Ben Cheng654325d2012-03-07 21:13:49 -0800173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800174 char mpc_oem[8];
175};
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800176struct mpc_config_translation
177{
Ben Cheng654325d2012-03-07 21:13:49 -0800178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800179 unsigned char mpc_type;
180 unsigned char trans_len;
181 unsigned char trans_type;
182 unsigned char trans_quad;
Ben Cheng654325d2012-03-07 21:13:49 -0800183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800184 unsigned char trans_global;
185 unsigned char trans_local;
186 unsigned short trans_reserved;
187};
Ben Cheng654325d2012-03-07 21:13:49 -0800188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800189enum mp_bustype {
190 MP_BUS_ISA = 1,
191 MP_BUS_EISA,
192 MP_BUS_PCI,
Ben Cheng654325d2012-03-07 21:13:49 -0800193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800194 MP_BUS_MCA,
195};
196#endif