Lines Matching defs:eaddr

150 static int	ae_get_vpd_eaddr(ae_softc_t *sc, uint32_t *eaddr);
151 static int ae_get_reg_eaddr(ae_softc_t *sc, uint32_t *eaddr);
209 #define AE_CHECK_EADDR_VALID(eaddr) \
210 ((eaddr[0] == 0 && eaddr[1] == 0) || \
211 (eaddr[0] == 0xffffffff && eaddr[1] == 0xffff))
368 ether_ifattach(ifp, sc->eaddr);
564 uint8_t eaddr[ETHER_ADDR_LEN];
589 bcopy(IF_LLADDR(ifp), eaddr, ETHER_ADDR_LEN);
590 val = eaddr[2] << 24 | eaddr[3] << 16 | eaddr[4] << 8 | eaddr[5];
592 val = eaddr[0] << 8 | eaddr[1];
974 ae_get_vpd_eaddr(ae_softc_t *sc, uint32_t *eaddr)
983 KASSERT(eaddr != NULL, ("[ae, %d]: eaddr is NULL", __LINE__));
1017 eaddr[0] = val;
1019 eaddr[1] = val;
1026 eaddr[1] &= 0xffff; /* Only last 2 bytes are used. */
1027 if (AE_CHECK_EADDR_VALID(eaddr) != 0) {
1037 ae_get_reg_eaddr(ae_softc_t *sc, uint32_t *eaddr)
1043 eaddr[0] = AE_READ_4(sc, AE_EADDR0_REG);
1044 eaddr[1] = AE_READ_4(sc, AE_EADDR1_REG);
1045 eaddr[1] &= 0xffff; /* Only last 2 bytes are used. */
1047 if (AE_CHECK_EADDR_VALID(eaddr) != 0) {
1059 uint32_t eaddr[2] = {0, 0};
1065 error = ae_get_vpd_eaddr(sc, eaddr);
1067 error = ae_get_reg_eaddr(sc, eaddr);
1072 eaddr[0] = arc4random();
1077 sc->eaddr[0] = 0x02; /* U/L bit set. */
1078 sc->eaddr[1] = 0x1f;
1079 sc->eaddr[2] = 0xc6;
1080 sc->eaddr[3] = (eaddr[0] >> 16) & 0xff;
1081 sc->eaddr[4] = (eaddr[0] >> 8) & 0xff;
1082 sc->eaddr[5] = (eaddr[0] >> 0) & 0xff;
1084 sc->eaddr[0] = (eaddr[1] >> 8) & 0xff;
1085 sc->eaddr[1] = (eaddr[1] >> 0) & 0xff;
1086 sc->eaddr[2] = (eaddr[0] >> 24) & 0xff;
1087 sc->eaddr[3] = (eaddr[0] >> 16) & 0xff;
1088 sc->eaddr[4] = (eaddr[0] >> 8) & 0xff;
1089 sc->eaddr[5] = (eaddr[0] >> 0) & 0xff;