Lines Matching refs:fecp
84 volatile fecdma_t *fecp = (fecdma_t *)info->iobase; in fec_halt() local
88 fecp->tcr |= FEC_TCR_GTS; in fec_halt()
91 while ((counter--) && (!(fecp->eir & FEC_EIR_GRA))) in fec_halt()
99 fecp->ecr &= ~FEC_ECR_ETHER_EN; in fec_halt()
102 fecp->rfsr &= FIFO_ERRSTAT; in fec_halt()
103 fecp->tfsr &= FIFO_ERRSTAT; in fec_halt()
105 fecp->frst = 0x01000000; in fec_halt()
108 fecp->ecr |= FEC_ECR_RESET; in fec_halt()
122 volatile fecdma_t *fecp = (fecdma_t *)info->iobase; in dbg_fec_regs() local
125 printf("ievent %x - %x\n", (int)&fecp->eir, fecp->eir); in dbg_fec_regs()
126 printf("imask %x - %x\n", (int)&fecp->eimr, fecp->eimr); in dbg_fec_regs()
127 printf("ecntrl %x - %x\n", (int)&fecp->ecr, fecp->ecr); in dbg_fec_regs()
128 printf("mii_mframe %x - %x\n", (int)&fecp->mmfr, fecp->mmfr); in dbg_fec_regs()
129 printf("mii_speed %x - %x\n", (int)&fecp->mscr, fecp->mscr); in dbg_fec_regs()
130 printf("mii_ctrlstat %x - %x\n", (int)&fecp->mibc, fecp->mibc); in dbg_fec_regs()
131 printf("r_cntrl %x - %x\n", (int)&fecp->rcr, fecp->rcr); in dbg_fec_regs()
132 printf("r hash %x - %x\n", (int)&fecp->rhr, fecp->rhr); in dbg_fec_regs()
133 printf("x_cntrl %x - %x\n", (int)&fecp->tcr, fecp->tcr); in dbg_fec_regs()
134 printf("padr_l %x - %x\n", (int)&fecp->palr, fecp->palr); in dbg_fec_regs()
135 printf("padr_u %x - %x\n", (int)&fecp->paur, fecp->paur); in dbg_fec_regs()
136 printf("op_pause %x - %x\n", (int)&fecp->opd, fecp->opd); in dbg_fec_regs()
137 printf("iadr_u %x - %x\n", (int)&fecp->iaur, fecp->iaur); in dbg_fec_regs()
138 printf("iadr_l %x - %x\n", (int)&fecp->ialr, fecp->ialr); in dbg_fec_regs()
139 printf("gadr_u %x - %x\n", (int)&fecp->gaur, fecp->gaur); in dbg_fec_regs()
140 printf("gadr_l %x - %x\n", (int)&fecp->galr, fecp->galr); in dbg_fec_regs()
141 printf("x_wmrk %x - %x\n", (int)&fecp->tfwr, fecp->tfwr); in dbg_fec_regs()
142 printf("r_fdata %x - %x\n", (int)&fecp->rfdr, fecp->rfdr); in dbg_fec_regs()
143 printf("r_fstat %x - %x\n", (int)&fecp->rfsr, fecp->rfsr); in dbg_fec_regs()
144 printf("r_fctrl %x - %x\n", (int)&fecp->rfcr, fecp->rfcr); in dbg_fec_regs()
145 printf("r_flrfp %x - %x\n", (int)&fecp->rlrfp, fecp->rlrfp); in dbg_fec_regs()
146 printf("r_flwfp %x - %x\n", (int)&fecp->rlwfp, fecp->rlwfp); in dbg_fec_regs()
147 printf("r_frfar %x - %x\n", (int)&fecp->rfar, fecp->rfar); in dbg_fec_regs()
148 printf("r_frfrp %x - %x\n", (int)&fecp->rfrp, fecp->rfrp); in dbg_fec_regs()
149 printf("r_frfwp %x - %x\n", (int)&fecp->rfwp, fecp->rfwp); in dbg_fec_regs()
150 printf("t_fdata %x - %x\n", (int)&fecp->tfdr, fecp->tfdr); in dbg_fec_regs()
151 printf("t_fstat %x - %x\n", (int)&fecp->tfsr, fecp->tfsr); in dbg_fec_regs()
152 printf("t_fctrl %x - %x\n", (int)&fecp->tfcr, fecp->tfcr); in dbg_fec_regs()
153 printf("t_flrfp %x - %x\n", (int)&fecp->tlrfp, fecp->tlrfp); in dbg_fec_regs()
154 printf("t_flwfp %x - %x\n", (int)&fecp->tlwfp, fecp->tlwfp); in dbg_fec_regs()
155 printf("t_ftfar %x - %x\n", (int)&fecp->tfar, fecp->tfar); in dbg_fec_regs()
156 printf("t_ftfrp %x - %x\n", (int)&fecp->tfrp, fecp->tfrp); in dbg_fec_regs()
157 printf("t_ftfwp %x - %x\n", (int)&fecp->tfwp, fecp->tfwp); in dbg_fec_regs()
158 printf("frst %x - %x\n", (int)&fecp->frst, fecp->frst); in dbg_fec_regs()
159 printf("ctcwr %x - %x\n", (int)&fecp->ctcwr, fecp->ctcwr); in dbg_fec_regs()
163 static void set_fec_duplex_speed(volatile fecdma_t *fecp, int dup_spd) in set_fec_duplex_speed() argument
169 fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) | FEC_RCR_MII_MODE | in set_fec_duplex_speed()
171 fecp->tcr = FEC_TCR_FDEN; in set_fec_duplex_speed()
174 fecp->rcr = FEC_RCR_MAX_FL(PKT_MAXBUF_SIZE) | in set_fec_duplex_speed()
176 fecp->tcr &= ~FEC_TCR_FDEN; in set_fec_duplex_speed()
192 static void fec_set_hwaddr(volatile fecdma_t *fecp, u8 *mac) in fec_set_hwaddr() argument
216 fecp->ialr = (1 << (crc - 32)); in fec_set_hwaddr()
217 fecp->iaur = 0; in fec_set_hwaddr()
219 fecp->ialr = 0; in fec_set_hwaddr()
220 fecp->iaur = (1 << crc); in fec_set_hwaddr()
224 fecp->palr = (mac[0] << 24) + (mac[1] << 16) + (mac[2] << 8) + mac[3]; in fec_set_hwaddr()
225 fecp->paur = (mac[4] << 24) + (mac[5] << 16) + 0x8808; in fec_set_hwaddr()
228 fecp->gaur = 0; in fec_set_hwaddr()
229 fecp->galr = 0; in fec_set_hwaddr()
235 volatile fecdma_t *fecp = (fecdma_t *)info->iobase; in fec_init() local
250 set_fec_duplex_speed(fecp, info->dup_spd); in fec_init()
253 set_fec_duplex_speed(fecp, (FECDUPLEX << 16) | FECSPEED); in fec_init()
258 fecp->eimr = 0; in fec_init()
261 fecp->eir = 0xffffffff; in fec_init()
274 fec_set_hwaddr(fecp, enetaddr); in fec_init()
277 fecp->opd = 0x00010020; in fec_init()
305 fecp->rfcr = 0x0c000000; in fec_init()
306 fecp->rfar = 0x0000030c; in fec_init()
309 fecp->tfcr = FIFO_CTRL_FRAME | FIFO_CTRL_GR(6) | 0x00040000; in fec_init()
310 fecp->tfar = 0x00000080; in fec_init()
312 fecp->tfwr = 0x2; in fec_init()
313 fecp->ctcwr = 0x03000000; in fec_init()
319 (s8 *)&fecp->rfdr, in fec_init()
333 (s8 *)&fecp->tfdr, in fec_init()
344 fecp->ecr |= FEC_ECR_ETHER_EN; in fec_init()
417 volatile fecdma_t *fecp = (fecdma_t *)info->iobase; in mcdmafec_recv() local
424 ievent = fecp->eir; in mcdmafec_recv()
426 fecp->eir = ievent; in mcdmafec_recv()
437 fecp->tcr |= FEC_TCR_GTS; in mcdmafec_recv()
442 if (fecp->tcr & FEC_TCR_GTS) { in mcdmafec_recv()
445 fecp->tcr &= ~FEC_TCR_GTS; in mcdmafec_recv()