Symbol: mc7
sys/dev/cxgb/common/cxgb_common.h
468
static inline unsigned int t3_mc7_size(const struct mc7 *p)
sys/dev/cxgb/common/cxgb_common.h
749
int t3_mc7_bd_read(struct mc7 *mc7, unsigned int start, unsigned int n,
sys/dev/cxgb/common/cxgb_t3_hw.c
141
int t3_mc7_bd_read(struct mc7 *mc7, unsigned int start, unsigned int n,
sys/dev/cxgb/common/cxgb_t3_hw.c
147
unsigned int size64 = mc7->size / 8; /* # of 64-bit words */
sys/dev/cxgb/common/cxgb_t3_hw.c
148
adapter_t *adap = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
153
start *= (8 << mc7->width);
sys/dev/cxgb/common/cxgb_t3_hw.c
158
for (i = (1 << mc7->width) - 1; i >= 0; --i) {
sys/dev/cxgb/common/cxgb_t3_hw.c
162
t3_write_reg(adap, mc7->offset + A_MC7_BD_ADDR,
sys/dev/cxgb/common/cxgb_t3_hw.c
164
t3_write_reg(adap, mc7->offset + A_MC7_BD_OP, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
165
val = t3_read_reg(adap, mc7->offset + A_MC7_BD_OP);
sys/dev/cxgb/common/cxgb_t3_hw.c
168
mc7->offset + A_MC7_BD_OP);
sys/dev/cxgb/common/cxgb_t3_hw.c
172
val = t3_read_reg(adap, mc7->offset + A_MC7_BD_DATA1);
sys/dev/cxgb/common/cxgb_t3_hw.c
173
if (mc7->width == 0) {
sys/dev/cxgb/common/cxgb_t3_hw.c
175
mc7->offset + A_MC7_BD_DATA0);
sys/dev/cxgb/common/cxgb_t3_hw.c
178
if (mc7->width > 1)
sys/dev/cxgb/common/cxgb_t3_hw.c
179
val >>= shift[mc7->width];
sys/dev/cxgb/common/cxgb_t3_hw.c
180
val64 |= (u64)val << (step[mc7->width] * i);
sys/dev/cxgb/common/cxgb_t3_hw.c
2098
static void mc7_intr_handler(struct mc7 *mc7)
sys/dev/cxgb/common/cxgb_t3_hw.c
2100
adapter_t *adapter = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
2101
u32 cause = t3_read_reg(adapter, mc7->offset + A_MC7_INT_CAUSE);
sys/dev/cxgb/common/cxgb_t3_hw.c
2104
mc7->stats.corr_err++;
sys/dev/cxgb/common/cxgb_t3_hw.c
2106
"data 0x%x 0x%x 0x%x\n", mc7->name,
sys/dev/cxgb/common/cxgb_t3_hw.c
2107
t3_read_reg(adapter, mc7->offset + A_MC7_CE_ADDR),
sys/dev/cxgb/common/cxgb_t3_hw.c
2108
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA0),
sys/dev/cxgb/common/cxgb_t3_hw.c
2109
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA1),
sys/dev/cxgb/common/cxgb_t3_hw.c
2110
t3_read_reg(adapter, mc7->offset + A_MC7_CE_DATA2));
sys/dev/cxgb/common/cxgb_t3_hw.c
2114
mc7->stats.uncorr_err++;
sys/dev/cxgb/common/cxgb_t3_hw.c
2116
"data 0x%x 0x%x 0x%x\n", mc7->name,
sys/dev/cxgb/common/cxgb_t3_hw.c
2117
t3_read_reg(adapter, mc7->offset + A_MC7_UE_ADDR),
sys/dev/cxgb/common/cxgb_t3_hw.c
2118
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA0),
sys/dev/cxgb/common/cxgb_t3_hw.c
2119
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA1),
sys/dev/cxgb/common/cxgb_t3_hw.c
2120
t3_read_reg(adapter, mc7->offset + A_MC7_UE_DATA2));
sys/dev/cxgb/common/cxgb_t3_hw.c
2124
mc7->stats.parity_err++;
sys/dev/cxgb/common/cxgb_t3_hw.c
2126
mc7->name, G_PE(cause));
sys/dev/cxgb/common/cxgb_t3_hw.c
2134
mc7->offset + A_MC7_ERR_ADDR);
sys/dev/cxgb/common/cxgb_t3_hw.c
2135
mc7->stats.addr_err++;
sys/dev/cxgb/common/cxgb_t3_hw.c
2137
mc7->name, addr);
sys/dev/cxgb/common/cxgb_t3_hw.c
2143
t3_write_reg(adapter, mc7->offset + A_MC7_INT_CAUSE, cause);
sys/dev/cxgb/common/cxgb_t3_hw.c
3950
static int mc7_init(struct mc7 *mc7, unsigned int mc7_clock, int mem_type)
sys/dev/cxgb/common/cxgb_t3_hw.c
3965
adapter_t *adapter = mc7->adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
3968
if (!mc7->size)
sys/dev/cxgb/common/cxgb_t3_hw.c
3971
val = t3_read_reg(adapter, mc7->offset + A_MC7_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
3976
t3_write_reg(adapter, mc7->offset + A_MC7_CFG, val | F_IFEN);
sys/dev/cxgb/common/cxgb_t3_hw.c
3977
val = t3_read_reg(adapter, mc7->offset + A_MC7_CFG); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
3981
t3_write_reg(adapter, mc7->offset + A_MC7_CAL, F_SGL_CAL_EN);
sys/dev/cxgb/common/cxgb_t3_hw.c
3982
(void) t3_read_reg(adapter, mc7->offset + A_MC7_CAL);
sys/dev/cxgb/common/cxgb_t3_hw.c
3984
if (t3_read_reg(adapter, mc7->offset + A_MC7_CAL) &
sys/dev/cxgb/common/cxgb_t3_hw.c
3987
mc7->name);
sys/dev/cxgb/common/cxgb_t3_hw.c
3992
t3_write_reg(adapter, mc7->offset + A_MC7_PARM,
sys/dev/cxgb/common/cxgb_t3_hw.c
3998
t3_write_reg(adapter, mc7->offset + A_MC7_CFG,
sys/dev/cxgb/common/cxgb_t3_hw.c
4000
(void) t3_read_reg(adapter, mc7->offset + A_MC7_CFG); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4003
t3_set_reg_field(adapter, mc7->offset + A_MC7_DLL, F_DLLENB,
sys/dev/cxgb/common/cxgb_t3_hw.c
4008
if (wrreg_wait(adapter, mc7->offset + A_MC7_PRE, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4009
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE2, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4010
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE3, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4011
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val))
sys/dev/cxgb/common/cxgb_t3_hw.c
4015
t3_write_reg(adapter, mc7->offset + A_MC7_MODE, 0x100);
sys/dev/cxgb/common/cxgb_t3_hw.c
4016
t3_set_reg_field(adapter, mc7->offset + A_MC7_DLL,
sys/dev/cxgb/common/cxgb_t3_hw.c
4021
if (wrreg_wait(adapter, mc7->offset + A_MC7_PRE, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4022
wrreg_wait(adapter, mc7->offset + A_MC7_REF, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4023
wrreg_wait(adapter, mc7->offset + A_MC7_REF, 0) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4024
wrreg_wait(adapter, mc7->offset + A_MC7_MODE,
sys/dev/cxgb/common/cxgb_t3_hw.c
4026
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val | 0x380) ||
sys/dev/cxgb/common/cxgb_t3_hw.c
4027
wrreg_wait(adapter, mc7->offset + A_MC7_EXT_MODE1, val))
sys/dev/cxgb/common/cxgb_t3_hw.c
4034
t3_write_reg(adapter, mc7->offset + A_MC7_REF,
sys/dev/cxgb/common/cxgb_t3_hw.c
4036
(void) t3_read_reg(adapter, mc7->offset + A_MC7_REF); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4038
t3_write_reg(adapter, mc7->offset + A_MC7_ECC,
sys/dev/cxgb/common/cxgb_t3_hw.c
4040
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_DATA, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4041
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_ADDR_BEG, 0);
sys/dev/cxgb/common/cxgb_t3_hw.c
4042
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_ADDR_END,
sys/dev/cxgb/common/cxgb_t3_hw.c
4043
(mc7->size << width) - 1);
sys/dev/cxgb/common/cxgb_t3_hw.c
4044
t3_write_reg(adapter, mc7->offset + A_MC7_BIST_OP, V_OP(1));
sys/dev/cxgb/common/cxgb_t3_hw.c
4045
(void) t3_read_reg(adapter, mc7->offset + A_MC7_BIST_OP); /* flush */
sys/dev/cxgb/common/cxgb_t3_hw.c
4050
val = t3_read_reg(adapter, mc7->offset + A_MC7_BIST_OP);
sys/dev/cxgb/common/cxgb_t3_hw.c
4053
CH_ERR(adapter, "%s MC7 BIST timed out\n", mc7->name);
sys/dev/cxgb/common/cxgb_t3_hw.c
4058
t3_set_reg_field(adapter, mc7->offset + A_MC7_CFG, 0, F_RDY);
sys/dev/cxgb/common/cxgb_t3_hw.c
4303
static void __devinit mc7_prep(adapter_t *adapter, struct mc7 *mc7,
sys/dev/cxgb/common/cxgb_t3_hw.c
4308
mc7->adapter = adapter;
sys/dev/cxgb/common/cxgb_t3_hw.c
4309
mc7->name = name;
sys/dev/cxgb/common/cxgb_t3_hw.c
4310
mc7->offset = base_addr - MC7_PMRX_BASE_ADDR;
sys/dev/cxgb/common/cxgb_t3_hw.c
4311
cfg = t3_read_reg(adapter, mc7->offset + A_MC7_CFG);
sys/dev/cxgb/common/cxgb_t3_hw.c
4312
mc7->size = G_DEN(cfg) == M_DEN ? 0 : mc7_calc_size(cfg);
sys/dev/cxgb/common/cxgb_t3_hw.c
4313
mc7->width = G_WIDTH(cfg);
sys/dev/cxgb/cxgb_adapter.h
366
struct mc7 pmrx;
sys/dev/cxgb/cxgb_adapter.h
367
struct mc7 pmtx;
sys/dev/cxgb/cxgb_adapter.h
368
struct mc7 cm;
sys/dev/cxgb/cxgb_main.c
2775
struct mc7 *mem;