2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
6 * Copyright (C) 1992 - 1997, 2000-2003 Silicon Graphics, Inc. All rights reserved.
9 #ifndef _ASM_IA64_SN_GEO_H
10 #define _ASM_IA64_SN_GEO_H
12 /* Include a platform-specific geo.h. It must define at least:
13 * geoid_t: Geographic identifier data type
14 * geo_type_t: Data type for the kind of geoid this is
15 * GEO_TYPE_xxx: Values for geo_type_t vars, eg. GEO_TYPE_NODE
16 * GEO_MAX_LEN: The maximum length of a geoid, formatted for printing
19 #include <asm/sn/sn2/geo.h>
21 /* Declarations applicable to all platforms */
23 /* parameter for hwcfg_format_geoid() */
24 #define GEO_FORMAT_HWGRAPH 1
25 #define GEO_FORMAT_BRIEF 2
27 /* (the parameter for hwcfg_format_geoid_compt() is defined in the
28 * platform-specific geo.h file) */
30 /* Routines for manipulating geoid_t values */
32 extern moduleid_t
geo_module(geoid_t g
);
33 extern slabid_t
geo_slab(geoid_t g
);
34 extern geo_type_t
geo_type(geoid_t g
);
35 extern int geo_valid(geoid_t g
);
36 extern int geo_cmp(geoid_t g0
, geoid_t g1
);
37 extern geoid_t
geo_new(geo_type_t type
, ...);
39 extern geoid_t
hwcfg_parse_geoid(char *buffer
);
40 extern void hwcfg_format_geoid(char *buffer
, geoid_t m
, int fmt
);
41 extern void hwcfg_format_geoid_compt(char *buffer
, geoid_t m
, int compt
);
42 extern geoid_t
hwcfg_geo_get_self(geo_type_t type
);
43 extern geoid_t
hwcfg_geo_get_by_nasid(geo_type_t type
, nasid_t nasid
);
45 #endif /* _ASM_IA64_SN_GEO_H */