109 static uint8_t _DNS_[4];
114 if(!cris_en || !cris_ex)
128 if(!cs_sel || !cs_desel)
144 if(!bus_rb || !bus_wb)
160 if(!spi_rb || !spi_wb)
175 uint8_t* ptmp[2] = {0,0};
184 ptmp[0] = (uint8_t*)arg;
202 setINTLEVEL(*(uint16_t*)arg);
205 *(uint16_t*)arg = getINTLEVEL();
209 ((uint8_t*)arg)[0] = WIZCHIP.
id[0];
210 ((uint8_t*)arg)[1] = WIZCHIP.
id[1];
211 ((uint8_t*)arg)[2] = WIZCHIP.
id[2];
212 ((uint8_t*)arg)[3] = WIZCHIP.
id[3];
213 ((uint8_t*)arg)[4] = WIZCHIP.
id[4];
214 ((uint8_t*)arg)[5] = 0;
216 #if _WIZCHIP_ == 5500
233 if((int8_t)tmp == -1)
return -1;
234 *(uint8_t*)arg = tmp;
238 if((int8_t)tmp == -1)
return -1;
239 *(uint8_t*)arg = tmp;
278 uint8_t gw[4], sn[4], sip[4];
281 getGAR(gw); getSUBR(sn); getSIPR(sip);
300 if(tmp > 16)
return -1;
302 setSn_TXBUF_SIZE(i, txsize[i]);
309 if(tmp > 16)
return -1;
311 setSn_RXBUF_SIZE(i, rxsize[i]);
318 uint8_t ir = (uint8_t)intr;
319 uint8_t sir = (uint8_t)((uint16_t)intr >> 8);
323 #if _WIZCHIP_ == 5200
331 #if _WIZCHIP_ == 5100
345 #if _WIZCHIP_ == 5100
356 #if _WIZCHIP_ == 5200
360 ret = (ret << 8) + ir;
366 uint8_t imr = (uint8_t)intr;
367 uint8_t simr = (uint8_t)((uint16_t)intr >> 8);
371 #if _WIZCHIP_ == 5200
379 #if _WIZCHIP_ == 5100
393 #if _WIZCHIP_ == 5100
404 #if _WIZCHIP_ == 5200
408 ret = (ret << 8) + imr;
415 #if _WIZCHIP_ == 5200
416 if(getPHYSTATUS() & PHYSTATUS_LINK)
420 #elif _WIZCHIP_ == 5500
421 if(getPHYCFGR() & PHYCFGR_LNK_ON)
436 #if _WIZCHIP_ == 5200
437 if(getPHYSTATUS() & PHYSTATUS_POWERDOWN)
441 #elif _WIZCHIP_ == 5500
442 if(getPHYCFGR() & PHYCFGR_OPMDC_PDOWN)
453 #if _WIZCHIP_ == 5500
456 uint8_t tmp = getPHYCFGR();
470 tmp &= ~PHYCFGR_OPMD;
472 tmp |= PHYCFGR_OPMDC_ALLA;
478 tmp |= PHYCFGR_OPMDC_100F;
480 tmp |= PHYCFGR_OPMDC_10F;
485 tmp |= PHYCFGR_OPMDC_100H;
487 tmp |= PHYCFGR_OPMDC_10H;
499 switch(tmp & PHYCFGR_OPMDC_ALLA)
501 case PHYCFGR_OPMDC_ALLA:
502 case PHYCFGR_OPMDC_100FA:
509 switch(tmp & PHYCFGR_OPMDC_ALLA)
511 case PHYCFGR_OPMDC_100FA:
512 case PHYCFGR_OPMDC_100F:
513 case PHYCFGR_OPMDC_100H:
520 switch(tmp & PHYCFGR_OPMDC_ALLA)
522 case PHYCFGR_OPMDC_100FA:
523 case PHYCFGR_OPMDC_100F:
524 case PHYCFGR_OPMDC_10F:
535 uint8_t tmp = getPHYCFGR();
544 if((tmp & PHYCFGR_OPMD)== 0)
return -1;
545 tmp &= ~PHYCFGR_OPMDC_ALLA;
547 tmp |= PHYCFGR_OPMDC_PDOWN;
549 tmp |= PHYCFGR_OPMDC_ALLA;
555 if(tmp & PHYCFGR_OPMDC_PDOWN)
return 0;
559 if(tmp & PHYCFGR_OPMDC_ALLA)
return 0;
568 setSHAR(pnetinfo->
mac);
569 setGAR(pnetinfo->
gw);
570 setSUBR(pnetinfo->
sn);
571 setSIPR(pnetinfo->
ip);
572 _DNS_[0] = pnetinfo->
dns[0];
573 _DNS_[1] = pnetinfo->
dns[1];
574 _DNS_[2] = pnetinfo->
dns[2];
575 _DNS_[3] = pnetinfo->
dns[3];
576 _DHCP_ = pnetinfo->
dhcp;
581 getSHAR(pnetinfo->
mac);
582 getGAR(pnetinfo->
gw);
583 getSUBR(pnetinfo->
sn);
584 getSIPR(pnetinfo->
ip);
585 pnetinfo->
dns[0]= _DNS_[0];
586 pnetinfo->
dns[1]= _DNS_[1];
587 pnetinfo->
dns[2]= _DNS_[2];
588 pnetinfo->
dns[3]= _DNS_[3];
589 pnetinfo->
dhcp = _DHCP_;
595 #if _WIZCHIP_ != 5500
601 tmp |= (uint8_t)netmode;