Changeset 496 for soft/giet_vm/giet_drivers/mmc_driver.h
- Timestamp:
- Feb 8, 2015, 1:12:23 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
soft/giet_vm/giet_drivers/mmc_driver.h
r483 r496 10 10 11 11 #include <hard_config.h> 12 #include < locks.h>12 #include <kernel_locks.h> 13 13 14 14 /////////////////////////////////////////////////////////////////////////////////// 15 15 // TSAR Memory Cache configuration registers offsets and commands 16 16 /////////////////////////////////////////////////////////////////////////////////// 17 18 enum SoclibMemCacheFunc 19 { 20 MEMC_CONFIG = 0, 21 MEMC_INSTRM = 1, 22 MEMC_RERROR = 2, 23 24 MEMC_FUNC_SPAN = 0x200 25 }; 17 26 18 27 enum SoclibMemCacheConfigRegs … … 31 40 }; 32 41 42 enum SoclibMemCacheInstrRegs { 43 44 // NUMBER OF LOCAL TRANSACTIONS ON DIRECT NETWORK 45 46 MEMC_LOCAL_READ_LO = 0x00, 47 MEMC_LOCAL_READ_HI = 0x01, 48 MEMC_LOCAL_WRITE_LO = 0x02, 49 MEMC_LOCAL_WRITE_HI = 0x03, 50 MEMC_LOCAL_LL_LO = 0x04, 51 MEMC_LOCAL_LL_HI = 0x05, 52 MEMC_LOCAL_SC_LO = 0x06, 53 MEMC_LOCAL_SC_HI = 0x07, 54 MEMC_LOCAL_CAS_LO = 0x08, 55 MEMC_LOCAL_CAS_HI = 0x09, 56 57 // NUMBER OF REMOTE TRANSACTIONS ON DIRECT NETWORK 58 59 MEMC_REMOTE_READ_LO = 0x10, 60 MEMC_REMOTE_READ_HI = 0x11, 61 MEMC_REMOTE_WRITE_LO = 0x12, 62 MEMC_REMOTE_WRITE_HI = 0x13, 63 MEMC_REMOTE_LL_LO = 0x14, 64 MEMC_REMOTE_LL_HI = 0x15, 65 MEMC_REMOTE_SC_LO = 0x16, 66 MEMC_REMOTE_SC_HI = 0x17, 67 MEMC_REMOTE_CAS_LO = 0x18, 68 MEMC_REMOTE_CAS_HI = 0x19, 69 70 // COST OF TRANSACTIONS ON DIRECT NETWORK 71 72 MEMC_COST_READ_LO = 0x20, 73 MEMC_COST_READ_HI = 0x21, 74 MEMC_COST_WRITE_LO = 0x22, 75 MEMC_COST_WRITE_HI = 0x23, 76 MEMC_COST_LL_LO = 0x24, 77 MEMC_COST_LL_HI = 0x25, 78 MEMC_COST_SC_LO = 0x26, 79 MEMC_COST_SC_HI = 0x27, 80 MEMC_COST_CAS_LO = 0x28, 81 MEMC_COST_CAS_HI = 0x29, 82 83 // NUMBER OF LOCAL TRANSACTIONS ON CC NETWORK 84 85 MEMC_LOCAL_MUPDATE_LO = 0x40, 86 MEMC_LOCAL_MUPDATE_HI = 0x41, 87 MEMC_LOCAL_MINVAL_LO = 0x42, 88 MEMC_LOCAL_MINVAL_HI = 0x43, 89 MEMC_LOCAL_CLEANUP_LO = 0x44, 90 MEMC_LOCAL_CLEANUP_HI = 0x45, 91 92 // NUMBER OF REMOTE TRANSACTIONS ON CC NETWORK 93 94 MEMC_REMOTE_MUPDATE_LO = 0x50, 95 MEMC_REMOTE_MUPDATE_HI = 0x51, 96 MEMC_REMOTE_MINVAL_LO = 0x52, 97 MEMC_REMOTE_MINVAL_HI = 0x53, 98 MEMC_REMOTE_CLEANUP_LO = 0x54, 99 MEMC_REMOTE_CLEANUP_HI = 0x55, 100 101 // COST OF TRANSACTIONS ON CC NETWORK 102 103 MEMC_COST_MUPDATE_LO = 0x60, 104 MEMC_COST_MUPDATE_HI = 0x61, 105 MEMC_COST_MINVAL_LO = 0x62, 106 MEMC_COST_MINVAL_HI = 0x63, 107 MEMC_COST_CLEANUP_LO = 0x64, 108 MEMC_COST_CLEANUP_HI = 0x65, 109 110 // TOTAL 111 112 MEMC_TOTAL_MUPDATE_LO = 0x68, 113 MEMC_TOTAL_MUPDATE_HI = 0x69, 114 MEMC_TOTAL_MINVAL_LO = 0x6A, 115 MEMC_TOTAL_MINVAL_HI = 0x6B, 116 MEMC_TOTAL_BINVAL_LO = 0x6C, 117 MEMC_TOTAL_BINVAL_HI = 0x6D, 118 }; 119 33 120 #define MMC_REG(func,idx) ((func<<7)|idx) 34 35 ///////////////////////////////////////////////////////////////////////////////36 // Distributed locks protecting MMC components (one per cluster)37 ///////////////////////////////////////////////////////////////////////////////38 39 spin_lock_t _mmc_lock[X_SIZE][Y_SIZE] __attribute__((aligned(64)));40 121 41 122 /////////////////////////////////////////////////////////////////////////////////// 42 123 // MEMC access functions (for TSAR architecture) 43 124 /////////////////////////////////////////////////////////////////////////////////// 125 126 extern unsigned int _mmc_instrument( unsigned int x, 127 unsigned int y, 128 unsigned int reg ); 44 129 45 130 extern void _mmc_inval( unsigned long long buf_paddr,
Note: See TracChangeset
for help on using the changeset viewer.