uboot/drivers/cpu/mpc83xx_cpu.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0+ */
   2/*
   3 * (C) Copyright 2018
   4 * Mario Six, Guntermann & Drunck GmbH, mario.six@gdsys.cc
   5 */
   6
   7#ifndef _MPC83XX_CPU_H_
   8#define _MPC83XX_CPU_H_
   9
  10/**
  11 * enum e300_type - Identifiers for e300 cores
  12 * @E300C1:       Identifier for e300c1 cores
  13 * @E300C2:       Identifier for e300c2 cores
  14 * @E300C3:       Identifier for e300c3 cores
  15 * @E300C4:       Identifier for e300c4 cores
  16 * @E300_UNKNOWN: Identifier for unknown e300 cores
  17 */
  18enum e300_type {
  19        E300C1,
  20        E300C2,
  21        E300C3,
  22        E300C4,
  23        E300_UNKNOWN,
  24};
  25
  26/* Array mapping the e300 core types to their human-readable names */
  27static const char * const e300_names[] = {
  28        [E300C1] = "e300c1",
  29        [E300C2] = "e300c2",
  30        [E300C3] = "e300c3",
  31        [E300C4] = "e300c4",
  32        [E300_UNKNOWN] = "Unknown e300",
  33};
  34
  35/**
  36 * enum mpc83xx_cpu_family - Identifiers for MPC83xx CPU families
  37 * @FAMILY_830X:    Identifier for the MPC830x CPU family
  38 * @FAMILY_831X:    Identifier for the MPC831x CPU family
  39 * @FAMILY_832X:    Identifier for the MPC832x CPU family
  40 * @FAMILY_834X:    Identifier for the MPC834x CPU family
  41 * @FAMILY_836X:    Identifier for the MPC836x CPU family
  42 * @FAMILY_837X:    Identifier for the MPC837x CPU family
  43 * @FAMILY_UNKNOWN: Identifier for an unknown MPC83xx CPU family
  44 */
  45enum mpc83xx_cpu_family {
  46        FAMILY_830X,
  47        FAMILY_831X,
  48        FAMILY_832X,
  49        FAMILY_834X,
  50        FAMILY_836X,
  51        FAMILY_837X,
  52        FAMILY_UNKNOWN,
  53};
  54
  55/**
  56 * enum mpc83xx_cpu_type - Identifiers for MPC83xx CPU types
  57 * @TYPE_8308:      Identifier for the MPC8308 CPU type
  58 * @TYPE_8309:      Identifier for the MPC8309 CPU type
  59 * @TYPE_8311:      Identifier for the MPC8311 CPU type
  60 * @TYPE_8313:      Identifier for the MPC8313 CPU type
  61 * @TYPE_8314:      Identifier for the MPC8314 CPU type
  62 * @TYPE_8315:      Identifier for the MPC8315 CPU type
  63 * @TYPE_8321:      Identifier for the MPC8321 CPU type
  64 * @TYPE_8323:      Identifier for the MPC8323 CPU type
  65 * @TYPE_8343:      Identifier for the MPC8343 CPU type
  66 * @TYPE_8347_TBGA: Identifier for the MPC8347 CPU type (Tape Ball Grid Array
  67 *                  version)
  68 * @TYPE_8347_PBGA: Identifier for the MPC8347 CPU type (Plastic Ball Grid Array
  69 *                  version)
  70 * @TYPE_8349:      Identifier for the MPC8349 CPU type
  71 * @TYPE_8358_TBGA: Identifier for the MPC8358 CPU type (Tape Ball Grid Array
  72 *                  version)
  73 * @TYPE_8358_PBGA: Identifier for the MPC8358 CPU type (Plastic Ball Grid Array
  74 *                  version)
  75 * @TYPE_8360:      Identifier for the MPC8360 CPU type
  76 * @TYPE_8377:      Identifier for the MPC8377 CPU type
  77 * @TYPE_8378:      Identifier for the MPC8378 CPU type
  78 * @TYPE_8379:      Identifier for the MPC8379 CPU type
  79 * @TYPE_UNKNOWN:   Identifier for an unknown MPC83xx CPU type
  80 */
  81enum mpc83xx_cpu_type {
  82        TYPE_8308,
  83        TYPE_8309,
  84        TYPE_8311,
  85        TYPE_8313,
  86        TYPE_8314,
  87        TYPE_8315,
  88        TYPE_8321,
  89        TYPE_8323,
  90        TYPE_8343,
  91        TYPE_8347_TBGA,
  92        TYPE_8347_PBGA,
  93        TYPE_8349,
  94        TYPE_8358_TBGA,
  95        TYPE_8358_PBGA,
  96        TYPE_8360,
  97        TYPE_8377,
  98        TYPE_8378,
  99        TYPE_8379,
 100        TYPE_UNKNOWN,
 101};
 102
 103/* Array mapping the MCP83xx CPUs to their human-readable names */
 104static const char * const cpu_type_names[] = {
 105        [TYPE_8308] = "8308",
 106        [TYPE_8309] = "8309",
 107        [TYPE_8311] = "8311",
 108        [TYPE_8313] = "8313",
 109        [TYPE_8314] = "8314",
 110        [TYPE_8315] = "8315",
 111        [TYPE_8321] = "8321",
 112        [TYPE_8323] = "8323",
 113        [TYPE_8343] = "8343",
 114        [TYPE_8347_TBGA] = "8347_TBGA",
 115        [TYPE_8347_PBGA] = "8347_PBGA",
 116        [TYPE_8349] = "8349",
 117        [TYPE_8358_TBGA] = "8358_TBGA",
 118        [TYPE_8358_PBGA] = "8358_PBGA",
 119        [TYPE_8360] = "8360",
 120        [TYPE_8377] = "8377",
 121        [TYPE_8378] = "8378",
 122        [TYPE_8379] = "8379",
 123        [TYPE_UNKNOWN] = "Unknown CPU",
 124};
 125
 126#endif /* !_MPC83XX_CPU_H_ */
 127