furia_pkg_cfg.c (6283B)
1 /* 2 * 3 * 4 * 5 * This license is set out in https://raw.githubusercontent.com/Broadcom-Network-Switching-Software/OpenBCM/master/Legal/LICENSE file. 6 * 7 * Copyright 2007-2019 Broadcom Inc. All rights reserved. 8 */ 9 /* 10 Includes 11 */ 12 #include "furia_pkg_cfg.h" 13 #include "furia_types.h" 14 /* 15 * Defines 16 */ 17 18 /* 19 * Types 20 */ 21 22 /* 23 * Macros 24 */ 25 26 /* 27 * Global Variables 28 */ 29 30 /* No package configuration defined. */ 31 /* Using Plain Duplex with no pkg swap */ 32 33 /* chip_id, pkg_lane_num, lane_type, die_addr, die_lane_num, slice_rd_val, slice_wr_val, 34 * sideB(RX), sideA(TX), inv_in_data, inv_out_data 35 */ 36 37 const FURIA_PKG_LANE_CFG_t glb_lanes_82208[8] = { 38 {0x82208, 0, SIMPLEX_TX, 0, 2, 2, 1 << 2, SYS, LINE, 1, 1}, 39 {0x82208, 1, SIMPLEX_TX, 0, 3, 3, 1 << 3, SYS, LINE, 0, 0}, 40 {0x82208, 2, SIMPLEX_TX, 0, 3, 3, 1 << 3, LINE, SYS, 1, 1}, 41 {0x82208, 3, SIMPLEX_TX, 0, 2, 2, 1 << 2, LINE, SYS, 1, 1}, 42 {0x82208, 4, SIMPLEX_TX, 0, 1, 1, 1 << 1, LINE, SYS, 1, 1}, 43 {0x82208, 5, SIMPLEX_TX, 0, 0, 0, 1 << 0, LINE, SYS, 0, 0}, 44 {0x82208, 6, SIMPLEX_TX, 0, 0, 0, 1 << 0, SYS, LINE, 1, 1}, 45 {0x82208, 7, SIMPLEX_TX, 0, 1, 1, 1 << 1, SYS, LINE, 0, 0} 46 }; 47 48 const FURIA_PKG_LANE_CFG_t glb_lanes_82209[8] = { 49 {0x82209, 0, SIMPLEX_TX, 0, 1, 1, 1 << 1, SYS, LINE, 0, 0}, 50 {0x82209, 1, SIMPLEX_TX, 0, 0, 0, 1 << 0, SYS, LINE, 0, 0}, 51 {0x82209, 2, SIMPLEX_TX, 0, 0, 0, 1 << 0, LINE, SYS, 1, 1}, 52 {0x82209, 3, SIMPLEX_TX, 0, 1, 1, 1 << 1, LINE, SYS, 1, 1}, 53 {0x82209, 4, SIMPLEX_TX, 0, 2, 2, 1 << 2, LINE, SYS, 0, 0}, 54 {0x82209, 5, SIMPLEX_TX, 0, 3, 3, 1 << 3, LINE, SYS, 0, 0}, 55 {0x82209, 6, SIMPLEX_TX, 0, 3, 3, 1 << 3, SYS, LINE, 0, 0}, 56 {0x82209, 7, SIMPLEX_TX, 0, 2, 2, 1 << 2, SYS, LINE, 1, 1} 57 }; 58 59 const FURIA_PKG_LANE_CFG_t glb_lanes_82073[8] = { 60 {0x82073, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 61 {0x82073, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 62 {0x82073, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 63 {0x82073, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 64 {0x82073, 4, DUPLEX_XCVR, 1, 3, 3, 1<<3, SYS, LINE, 0, 0}, 65 {0x82073, 5, DUPLEX_XCVR, 1, 2, 2, 1<<2, SYS, LINE, 0, 0}, 66 {0x82073, 6, DUPLEX_XCVR, 1, 1, 1, 1<<1, SYS, LINE, 0, 0}, 67 {0x82073, 7, DUPLEX_XCVR, 1, 0, 0, 1<<0, SYS, LINE, 0, 0} 68 }; 69 70 const FURIA_PKG_LANE_CFG_t glb_lanes_82381[8] = { 71 {0x82381, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 72 {0x82381, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 73 {0x82381, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 74 {0x82381, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 75 {0x82381, 4, DUPLEX_XCVR, 1, 3, 3, 1<<3, SYS, LINE, 0, 0}, 76 {0x82381, 5, DUPLEX_XCVR, 1, 2, 2, 1<<2, SYS, LINE, 0, 0}, 77 {0x82381, 6, DUPLEX_XCVR, 1, 1, 1, 1<<1, SYS, LINE, 0, 0}, 78 {0x82381, 7, DUPLEX_XCVR, 1, 0, 0, 1<<0, SYS, LINE, 0, 0} 79 }; 80 const FURIA_PKG_LANE_CFG_t glb_lanes_82383[8] = { 81 {0x82383, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 82 {0x82383, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 83 {0x82383, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 84 {0x82383, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 85 {0x82383, 4, DUPLEX_XCVR, 1, 3, 3, 1<<3, SYS, LINE, 0, 0}, 86 {0x82383, 5, DUPLEX_XCVR, 1, 2, 2, 1<<2, SYS, LINE, 0, 0}, 87 {0x82383, 6, DUPLEX_XCVR, 1, 1, 1, 1<<1, SYS, LINE, 0, 0}, 88 {0x82383, 7, DUPLEX_XCVR, 1, 0, 0, 1<<0, SYS, LINE, 0, 0} 89 }; 90 91 const FURIA_PKG_LANE_CFG_t glb_lanes_82385[8] = { 92 {0x82385, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 93 {0x82385, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 94 {0x82385, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 95 {0x82385, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 96 {0x82385, 4, DUPLEX_XCVR, 1, 3, 3, 1<<3, SYS, LINE, 0, 0}, 97 {0x82385, 5, DUPLEX_XCVR, 1, 2, 2, 1<<2, SYS, LINE, 0, 0}, 98 {0x82385, 6, DUPLEX_XCVR, 1, 1, 1, 1<<1, SYS, LINE, 0, 0}, 99 {0x82385, 7, DUPLEX_XCVR, 1, 0, 0, 1<<0, SYS, LINE, 0, 0} 100 }; 101 const FURIA_PKG_LANE_CFG_t glb_lanes_82071[4] = { 102 {0x82071, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 103 {0x82071, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 104 {0x82071, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 105 {0x82071, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 106 }; 107 const FURIA_PKG_LANE_CFG_t glb_lanes_82380[4] = { 108 {0x82380, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 109 {0x82380, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 110 {0x82380, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 111 {0x82380, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 112 }; 113 const FURIA_PKG_LANE_CFG_t glb_lanes_82072[8] = { 114 {0x82072, 0, DUPLEX_XCVR, 0, 3, 3, 1<<3, SYS, LINE, 0, 0}, 115 {0x82072, 1, DUPLEX_XCVR, 0, 2, 2, 1<<2, SYS, LINE, 0, 0}, 116 {0x82072, 2, DUPLEX_XCVR, 0, 1, 1, 1<<1, SYS, LINE, 0, 0}, 117 {0x82072, 3, DUPLEX_XCVR, 0, 0, 0, 1<<0, SYS, LINE, 0, 0}, 118 {0x82072, 4, DUPLEX_XCVR, 1, 3, 3, 1<<3, SYS, LINE, 0, 0}, 119 {0x82072, 5, DUPLEX_XCVR, 1, 2, 2, 1<<2, SYS, LINE, 0, 0}, 120 {0x82072, 6, DUPLEX_XCVR, 1, 1, 1, 1<<1, SYS, LINE, 0, 0}, 121 {0x82072, 7, DUPLEX_XCVR, 1, 0, 0, 1<<0, SYS, LINE, 0, 0} 122 }; 123 const FURIA_PKG_LANE_CFG_t glb_lanes_82212[12] = { 124 {0x82212, 0, SIMPLEX_TX, 0, 0, 0, 1<<0, LINE, SYS, 0, 0 }, 125 {0x82212, 1, SIMPLEX_TX, 0, 1, 1, 1<<1, LINE, SYS, 0, 0 }, 126 {0x82212, 2, SIMPLEX_TX, 1, 0, 0, 1<<0, LINE, SYS, 1, 1 }, 127 {0x82212, 3, SIMPLEX_TX, 1, 1, 1, 1<<1, LINE, SYS, 0, 0 }, 128 {0x82212, 4, SIMPLEX_TX, 1, 2, 2, 1<<2, LINE, SYS, 1, 1 }, 129 {0x82212, 5, SIMPLEX_TX, 1, 3, 3, 1<<3, LINE, SYS, 0, 0 }, 130 {0x82212, 6, SIMPLEX_TX, 0, 1, 1, 1<<1, SYS, LINE,1, 1 }, 131 {0x82212, 7, SIMPLEX_TX, 0, 0, 0, 1<<0, SYS, LINE,0, 0 }, 132 {0x82212, 8, SIMPLEX_TX, 0, 2, 2, 1<<2, LINE, SYS, 1, 1 }, 133 {0x82212, 9, SIMPLEX_TX, 0, 3, 3, 1<<3, LINE, SYS, 0, 0 }, 134 {0x82212, 10, SIMPLEX_TX, 1, 3, 3, 1<<3, SYS, LINE,1, 1 }, 135 {0x82212, 11, SIMPLEX_TX, 1, 2, 2, 1<<2, SYS, LINE,0, 0 } 136 }; 137 138 139 const FURIA_PKG_LANE_CFG_t* const glb_package_array[MAX_NUM_PACKAGES] = { 140 glb_lanes_82208, 141 glb_lanes_82209, 142 glb_lanes_82073, 143 glb_lanes_82381, 144 glb_lanes_82385, 145 glb_lanes_82071, 146 glb_lanes_82380, 147 glb_lanes_82072, 148 glb_lanes_82212, 149 glb_lanes_82383, 150 NULL 151 }; 152 153 FURIA_PHY_LIST_t glb_phy_list[MAX_NUM_PHYS]; 154 155