View | Details | Raw Unified | Return to bug 23468
Collapse All | Expand All

(-)if_xe.c (+25 lines)
Lines 354-359 Link Here
354
      default:
354
      default:
355
	scp->vendor = "Unknown";
355
	scp->vendor = "Unknown";
356
      }
356
      }
357
#if XE_DEBUG > 1
358
      device_printf(dev, "Vendor %s\n", scp->vendor);
359
#endif
357
360
358
      if (!((prod & 0x40) && (media & 0x01))) {
361
      if (!((prod & 0x40) && (media & 0x01))) {
359
#if XE_DEBUG > 1
362
#if XE_DEBUG > 1
Lines 392-397 Link Here
392
	} else {		/* Ethernet-only cards */
395
	} else {		/* Ethernet-only cards */
393
#if XE_DEBUG > 1
396
#if XE_DEBUG > 1
394
	  device_printf(dev, "Card is Ethernet only\n");
397
	  device_printf(dev, "Card is Ethernet only\n");
398
          device_printf(dev, "Card prod val is %d\n", prod & 0x0f);
395
#endif
399
#endif
396
	  switch (prod & 0x0f) {
400
	  switch (prod & 0x0f) {
397
	  case 1:
401
	  case 1:
Lines 402-410 Link Here
402
	  case 3:
406
	  case 3:
403
	    scp->mohawk = 1;
407
	    scp->mohawk = 1;
404
	    scp->card_type = "CE3"; break;
408
	    scp->card_type = "CE3"; break;
409
          /* my PS-CE2-10 has a prod of 0xff ?? */
410
          case 15:
411
            scp->card_type = "CE2"; break;
405
	  default:
412
	  default:
406
	    rc = ENODEV;
413
	    rc = ENODEV;
407
	  }
414
	  }
415
#if XE_DEBUG > 1
416
          if (rc != ENODEV) {
417
            device_printf(dev, "Ethernet Type: %s\n", scp->card_type);
418
          } else {
419
            device_printf(dev, "Card Type not set!\n");
420
          }
421
#endif
408
	}
422
	}
409
      }
423
      }
410
      success++;
424
      success++;
Lines 419-424 Link Here
419
#endif
433
#endif
420
	for (i = 0; i < ETHER_ADDR_LEN; i++)
434
	for (i = 0; i < ETHER_ADDR_LEN; i++)
421
          scp->arpcom.ac_enaddr[i] = CISTPL_DATA(buf, i+2);
435
          scp->arpcom.ac_enaddr[i] = CISTPL_DATA(buf, i+2);
436
      }
437
      /* my PS-CE2-10 has this: */
438
      if ((CISTPL_LEN(buf) == 13) &&
439
	  (CISTPL_DATA(buf, 0) == 0x02) &&
440
	  (CISTPL_DATA(buf, 1) == 0x01) &&
441
	  (CISTPL_DATA(buf, 2) == ETHER_ADDR_LEN)) {
442
#if XE_DEBUG > 1
443
	device_printf(dev, "Got MAC address (0x22)\n");
444
#endif
445
	for (i = 0; i < ETHER_ADDR_LEN; i++)
446
          scp->arpcom.ac_enaddr[i] = CISTPL_DATA(buf, i+3);
422
      }
447
      }
423
      success++;
448
      success++;
424
      break;
449
      break;

Return to bug 23468