linux/arch/sparc/include/asm/machines.h
<<
>>
Prefs
   1/*
   2 * machines.h:  Defines for taking apart the machine type value in the
   3 *              idprom and determining the kind of machine we are on.
   4 *
   5 * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
   6 */
   7#ifndef _SPARC_MACHINES_H
   8#define _SPARC_MACHINES_H
   9
  10struct Sun_Machine_Models {
  11        char *name;
  12        unsigned char id_machtype;
  13};
  14
  15/* The machine type in the idprom area looks like this:
  16 *
  17 * ---------------
  18 * | ARCH | MACH |
  19 * ---------------
  20 *  7    4 3    0
  21 *
  22 * The ARCH field determines the architecture line (sun4m, etc).
  23 * The MACH field determines the machine make within that architecture.
  24 */
  25
  26#define SM_ARCH_MASK  0xf0
  27#define  M_LEON       0x30
  28#define SM_SUN4M      0x70
  29#define SM_SUN4M_OBP  0x80
  30
  31#define SM_TYP_MASK   0x0f
  32
  33/* Leon machines */
  34#define M_LEON3_SOC   0x02    /* Leon3 SoC */
  35
  36/* Sun4m machines, these predate the OpenBoot.  These values only mean
  37 * something if the value in the ARCH field is SM_SUN4M, if it is
  38 * SM_SUN4M_OBP then you have the following situation:
  39 * 1) You either have a sun4d, a sun4e, or a recently made sun4m.
  40 * 2) You have to consult OpenBoot to determine which machine this is.
  41 */
  42#define SM_4M_SS60    0x01    /* Sun4m SparcSystem 600                  */
  43#define SM_4M_SS50    0x02    /* Sun4m SparcStation 10                  */
  44#define SM_4M_SS40    0x03    /* Sun4m SparcStation 5                   */
  45
  46/* Sun4d machines -- N/A */
  47/* Sun4e machines -- N/A */
  48/* Sun4u machines -- N/A */
  49
  50#endif /* !(_SPARC_MACHINES_H) */
  51