File indexing completed on 2025-05-11 08:23:53
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #ifndef LIBBSP_POWERPC_SHARED_MOTOROLA_MOTOROLA_H
0014 #define LIBBSP_POWERPC_SHARED_MOTOROLA_MOTOROLA_H
0015
0016 #include <bsp/residual.h>
0017 #include <bsp/pci.h>
0018
0019 typedef enum {
0020 PREP_IBM = 0,
0021 PREP_Radstone = 1,
0022 PREP_Motorola = 2
0023 } prep_t;
0024
0025 typedef enum {
0026 MVME_2400 = 0,
0027 MVME_2400_750 = 1,
0028 GENESIS = 2,
0029 POWERSTACK_E = 3,
0030 BLACKAWK = 4,
0031 OMAHA = 5,
0032 UTAH = 6,
0033 POWERSTACK_EX = 7,
0034 MESQUITE = 8,
0035 SITKA = 9,
0036 MESQUITE_W_HAC = 10,
0037 MTX_PLUS = 11,
0038 MTX_WO_PP = 12,
0039 MTX_W_PP = 13,
0040 MVME_2300 = 14,
0041 MVME_2300SC_2600 = 15,
0042 MVME_2600_W_MVME712M = 16,
0043 MVME_2600_2700_W_MVME761 = 17,
0044 MVME_3600_W_MVME712M = 18,
0045 MVME_3600_W_MVME761 = 19,
0046 MVME_1600 = 20,
0047
0048 MVME_2100 = 22,
0049 MOTOROLA_UNKNOWN = 255
0050 } motorolaBoard;
0051
0052 typedef enum {
0053 HOST_BRIDGE_RAVEN = 0,
0054 HOST_BRIDGE_HAWK = 1,
0055 HOST_BRIDGE_UNKNOWN = 255
0056 } motorolaHostBridge;
0057
0058 #define MOTOROLA_CPUTYPE_REG 0x800
0059 #define MOTOROLA_BASETYPE_REG 0x803
0060
0061 extern prep_t checkPrepBoardType(RESIDUAL *res);
0062 extern prep_t currentPrepType;
0063 extern motorolaBoard getMotorolaBoard(void);
0064 extern motorolaBoard currentBoard;
0065 extern const char* motorolaBoardToString(motorolaBoard);
0066 extern const struct _int_map *motorolaIntMap(motorolaBoard board);
0067 extern const void *motorolaIntSwizzle(motorolaBoard board);
0068
0069 #endif