Deleted Added
full compact
30c30
< * $Id: if_cs.c,v 1.1 1998/07/20 20:00:42 msmith Exp $
---
> * $Id: if_cs.c,v 1.2 1998/08/12 18:02:48 bde Exp $
260a261,262
> int i;
> u_char ether_address_backup[ETHER_ADDR_LEN];
261a264,267
> for (i = 0; i < ETHER_ADDR_LEN; i++) {
> ether_address_backup[i] = sc->arpcom.ac_enaddr[i];
> }
>
273c279,282
< if (!(cs_readreg(sc->nic_addr, PP_BusST) & READY_FOR_TX_NOW))
---
> if (!(cs_readreg(sc->nic_addr, PP_BusST) & READY_FOR_TX_NOW)) {
> for (i = 0; i < ETHER_ADDR_LEN; i++) {
> sc->arpcom.ac_enaddr[i] = ether_address_backup[i];
> }
274a284
> }
280c290,293
< if ((cs_readreg(sc->nic_addr,PP_TxEvent) & TX_SEND_OK_BITS) == TX_OK)
---
> if ((cs_readreg(sc->nic_addr,PP_TxEvent) & TX_SEND_OK_BITS) == TX_OK) {
> for (i = 0; i < ETHER_ADDR_LEN; i++) {
> sc->arpcom.ac_enaddr[i] = ether_address_backup[i];
> }
281a295,298
> }
> for (i = 0; i < ETHER_ADDR_LEN; i++) {
> sc->arpcom.ac_enaddr[i] = ether_address_backup[i];
> }
650c667,668
< sc->line_ctl | SERIAL_RX_ON | SERIAL_TX_ON);
---
> cs_readreg( sc->nic_addr, PP_LineCTL ) |
> SERIAL_RX_ON | SERIAL_TX_ON);
1167,1180c1185,1194
< /*
< * XXX I don't know if this is correct or not.
< * If AUI will be reported instead of BNC
< * then this is wrong.
< */
< if (line_status & AUI_ON)
< ifmr->ifm_active |= IFM_10_5;
< else
< ifmr->ifm_active |= IFM_10_2;
< #ifdef CS_BROKEN_BNC_DETECT
< printf(CS_NAME"%d: PP_LineST: %02x PP_SelfST: %02x\n",
< ifp->if_unit,line_status,
< cs_readreg(sc->nic_addr,PP_SelfST));
< #endif
---
> if (line_status & AUI_ON) {
> cs_writereg(sc->nic_addr, PP_SelfCTL,
> cs_readreg(sc->nic_addr, PP_SelfCTL) |
> HCB1_ENBL);
> if (((sc->adapter_cnf & A_CNF_DC_DC_POLARITY)!=0)^
> (cs_readreg(sc->nic_addr, PP_SelfCTL)&HCB1))
> ifmr->ifm_active |= IFM_10_2;
> else
> ifmr->ifm_active |= IFM_10_5;
> }