From ba6f86b8962f5161aa1621d81bc1cbb96abe63e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Mon, 21 May 2018 14:37:00 +0200 Subject: [PATCH] syskonnect: sync with FreeBSD 11.1. --- .../network/syskonnect/dev/mii/Jamfile | 7 +-- .../network/syskonnect/dev/mii/e1000phy.c | 51 +++++++++--------- .../network/syskonnect/dev/mii/ukphy.c | 6 --- .../network/syskonnect/dev/mii/xmphy.c | 21 ++------ .../drivers/network/syskonnect/dev/sk/Jamfile | 4 +- .../drivers/network/syskonnect/dev/sk/if_sk.c | 52 ++++++++----------- .../network/syskonnect/dev/sk/yukonreg.h | 2 +- 7 files changed, 58 insertions(+), 85 deletions(-) diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/Jamfile b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/Jamfile index a8725cc1de..4cb88bc5c9 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/Jamfile +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src add-ons kernel drivers network syskonnect dev mii ; UseHeaders [ FDirName $(SUBDIR) .. .. ] : true ; -UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_network compat ] : true ; +UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd11_network compat ] : true ; UsePrivateHeaders net system ; UsePrivateKernelHeaders ; @@ -18,6 +18,7 @@ KernelStaticLibrary syskonnect_mii.a ObjectHdrs [ FGristFiles e1000phy$(SUFOBJ) ukphy$(SUFOBJ) xmphy$(SUFOBJ) ] : [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCH)) libs - compat freebsd_network ] ; -Includes [ FGristFiles e1000phy.c ukphy.c xmphy.c ] : miidevs.h ; + compat freebsd11_network ] ; +Includes [ FGristFiles e1000phy.c ukphy.c xmphy.c ] + : miidevs.h ; diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/e1000phy.c b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/e1000phy.c index 91ae44d2e9..d97c7d5986 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/e1000phy.c +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/e1000phy.c @@ -50,8 +50,8 @@ __FBSDID("$FreeBSD$"); #include #include - #include +#include #include #include @@ -106,7 +106,9 @@ static const struct mii_phydesc e1000phys[] = { MII_PHY_DESC(xxMARVELL, E1111), MII_PHY_DESC(xxMARVELL, E1116), MII_PHY_DESC(xxMARVELL, E1116R), + MII_PHY_DESC(xxMARVELL, E1116R_29), MII_PHY_DESC(xxMARVELL, E1118), + MII_PHY_DESC(xxMARVELL, E1145), MII_PHY_DESC(xxMARVELL, E1149R), MII_PHY_DESC(xxMARVELL, E3016), MII_PHY_DESC(xxMARVELL, PHYG65G), @@ -130,14 +132,12 @@ static int e1000phy_attach(device_t dev) { struct mii_softc *sc; - struct ifnet *ifp; sc = device_get_softc(dev); mii_phy_dev_attach(dev, MIIF_NOMANPAUSE, &e1000phy_funcs, 0); - ifp = sc->mii_pdata->mii_ifp; - if (strcmp(ifp->if_dname, "msk") == 0 && + if (mii_dev_mac_match(dev, "msk") && (sc->mii_flags & MIIF_MACPRIV0) != 0) sc->mii_flags |= MIIF_PHYPRIV0; @@ -167,8 +167,12 @@ e1000phy_attach(device_t dev) PHY_RESET(sc); sc->mii_capabilities = PHY_READ(sc, MII_BMSR) & sc->mii_capmask; - if (sc->mii_capabilities & BMSR_EXTSTAT) + if (sc->mii_capabilities & BMSR_EXTSTAT) { sc->mii_extcapabilities = PHY_READ(sc, MII_EXTSR); + if ((sc->mii_extcapabilities & + (EXTSR_1000TFDX | EXTSR_1000THDX)) != 0) + sc->mii_flags |= MIIF_HAVE_GTCR; + } device_printf(dev, " "); mii_phy_add_media(sc); printf("\n"); @@ -208,6 +212,7 @@ e1000phy_reset(struct mii_softc *sc) case MII_MODEL_xxMARVELL_E1111: case MII_MODEL_xxMARVELL_E1112: case MII_MODEL_xxMARVELL_E1116: + case MII_MODEL_xxMARVELL_E1116R_29: case MII_MODEL_xxMARVELL_E1118: case MII_MODEL_xxMARVELL_E1149: case MII_MODEL_xxMARVELL_E1149R: @@ -215,7 +220,8 @@ e1000phy_reset(struct mii_softc *sc) /* Disable energy detect mode. */ reg &= ~E1000_SCR_EN_DETECT_MASK; reg |= E1000_SCR_AUTO_X_MODE; - if (sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1116) + if (sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1116 || + sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1116R_29) reg &= ~E1000_SCR_POWER_DOWN; reg |= E1000_SCR_ASSERT_CRS_ON_TX; break; @@ -243,6 +249,7 @@ e1000phy_reset(struct mii_softc *sc) PHY_WRITE(sc, E1000_SCR, reg); if (sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1116 || + sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1116R_29 || sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1149 || sc->mii_mpd_model == MII_MODEL_xxMARVELL_E1149R) { PHY_WRITE(sc, E1000_EADR, 2); @@ -259,6 +266,7 @@ e1000phy_reset(struct mii_softc *sc) case MII_MODEL_xxMARVELL_E1118: break; case MII_MODEL_xxMARVELL_E1116: + case MII_MODEL_xxMARVELL_E1116R_29: page = PHY_READ(sc, E1000_EADR); /* Select page 3, LED control register. */ PHY_WRITE(sc, E1000_EADR, 3); @@ -305,12 +313,6 @@ e1000phy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) break; case MII_MEDIACHG: - /* - * If the interface is not up, don't do anything. - */ - if ((mii->mii_ifp->if_flags & IFF_UP) == 0) - break; - if (IFM_SUBTYPE(ife->ifm_media) == IFM_AUTO) { e1000phy_mii_phy_auto(sc, ife->ifm_media); break; @@ -319,8 +321,7 @@ e1000phy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) speed = 0; switch (IFM_SUBTYPE(ife->ifm_media)) { case IFM_1000_T: - if ((sc->mii_extcapabilities & - (EXTSR_1000TFDX | EXTSR_1000THDX)) == 0) + if ((sc->mii_flags & MIIF_HAVE_GTCR) == 0) return (EINVAL); speed = E1000_CR_SPEED_1000; break; @@ -357,10 +358,9 @@ e1000phy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) if (IFM_SUBTYPE(ife->ifm_media) == IFM_1000_T) { gig |= E1000_1GCR_MS_ENABLE; - if ((ife->ifm_media & IFM_ETH_MASTER) != 0) + if ((ife->ifm_media & IFM_ETH_MASTER) != 0) gig |= E1000_1GCR_MS_VALUE; - } else if ((sc->mii_extcapabilities & - (EXTSR_1000TFDX | EXTSR_1000THDX)) != 0) + } else if ((sc->mii_flags & MIIF_HAVE_GTCR) != 0) gig = 0; PHY_WRITE(sc, E1000_1GCR, gig); PHY_WRITE(sc, E1000_AR, E1000_AR_SELECTOR_FIELD); @@ -368,12 +368,6 @@ e1000phy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) done: break; case MII_TICK: - /* - * Is the interface even up? - */ - if ((mii->mii_ifp->if_flags & IFF_UP) == 0) - return (0); - /* * Only used for autonegotiation. */ @@ -491,9 +485,14 @@ e1000phy_mii_phy_auto(struct mii_softc *sc, int media) PHY_WRITE(sc, E1000_AR, reg | E1000_AR_SELECTOR_FIELD); } else PHY_WRITE(sc, E1000_AR, E1000_FA_1000X_FD | E1000_FA_1000X); - if ((sc->mii_extcapabilities & (EXTSR_1000TFDX | EXTSR_1000THDX)) != 0) - PHY_WRITE(sc, E1000_1GCR, - E1000_1GCR_1000T_FD | E1000_1GCR_1000T); + if ((sc->mii_flags & MIIF_HAVE_GTCR) != 0) { + reg = 0; + if ((sc->mii_extcapabilities & EXTSR_1000TFDX) != 0) + reg |= E1000_1GCR_1000T_FD; + if ((sc->mii_extcapabilities & EXTSR_1000THDX) != 0) + reg |= E1000_1GCR_1000T; + PHY_WRITE(sc, E1000_1GCR, reg); + } PHY_WRITE(sc, E1000_CR, E1000_CR_AUTO_NEG_ENABLE | E1000_CR_RESTART_AUTO_NEG); diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/ukphy.c b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/ukphy.c index 9d52eb580c..45addcbc75 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/ukphy.c +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/ukphy.c @@ -140,12 +140,6 @@ ukphy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) break; case MII_MEDIACHG: - /* - * If the interface is not up, don't do anything. - */ - if ((mii->mii_ifp->if_flags & IFF_UP) == 0) - break; - mii_phy_setmedia(sc); break; diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/xmphy.c b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/xmphy.c index 328d34ad9a..8c35aa5cf7 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/xmphy.c +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/mii/xmphy.c @@ -116,16 +116,15 @@ xmphy_attach(device_t dev) PHY_RESET(sc); -#define ADD(m, c) ifmedia_add(&sc->mii_pdata->mii_media, (m), (c), NULL) +#define ADD(m) ifmedia_add(&sc->mii_pdata->mii_media, (m), 0, NULL) #define PRINT(s) printf("%s%s", sep, s); sep = ", " device_printf(dev, " "); - ADD(IFM_MAKEWORD(IFM_ETHER, IFM_1000_SX, 0, sc->mii_inst), - XMPHY_BMCR_FDX); + ADD(IFM_MAKEWORD(IFM_ETHER, IFM_1000_SX, 0, sc->mii_inst)); PRINT("1000baseSX"); - ADD(IFM_MAKEWORD(IFM_ETHER, IFM_1000_SX, IFM_FDX, sc->mii_inst), 0); + ADD(IFM_MAKEWORD(IFM_ETHER, IFM_1000_SX, IFM_FDX, sc->mii_inst)); PRINT("1000baseSX-FDX"); - ADD(IFM_MAKEWORD(IFM_ETHER, IFM_AUTO, 0, sc->mii_inst), 0); + ADD(IFM_MAKEWORD(IFM_ETHER, IFM_AUTO, 0, sc->mii_inst)); PRINT("auto"); printf("\n"); @@ -148,12 +147,6 @@ xmphy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) break; case MII_MEDIACHG: - /* - * If the interface is not up, don't do anything. - */ - if ((mii->mii_ifp->if_flags & IFF_UP) == 0) - break; - switch (IFM_SUBTYPE(ife->ifm_media)) { case IFM_AUTO: #ifdef foo @@ -181,12 +174,6 @@ xmphy_service(struct mii_softc *sc, struct mii_data *mii, int cmd) break; case MII_TICK: - /* - * Is the interface even up? - */ - if ((mii->mii_ifp->if_flags & IFF_UP) == 0) - return (0); - /* * Only used for autonegotiation. */ diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/Jamfile b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/Jamfile index 171a33a2e8..4ccec85425 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/Jamfile +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/Jamfile @@ -1,7 +1,7 @@ SubDir HAIKU_TOP src add-ons kernel drivers network syskonnect dev sk ; UseHeaders [ FDirName $(SUBDIR) .. .. ] : true ; -UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_network compat ] : true ; +UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd11_network compat ] : true ; UsePrivateHeaders net system ; UsePrivateKernelHeaders ; @@ -11,5 +11,5 @@ SubDirCcFlags [ FDefines _KERNEL=1 FBSD_DRIVER=1 ] ; KernelAddon syskonnect : if_sk.c glue.c - : libfreebsd_network.a syskonnect_mii.a + : syskonnect_mii.a libfreebsd11_network.a ; diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/if_sk.c b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/if_sk.c index bfca0ca0b4..7e787e8e04 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/if_sk.c +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/if_sk.c @@ -101,6 +101,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -1028,10 +1029,6 @@ sk_jumbo_newbuf(sc_if, idx) m = m_getjcl(M_NOWAIT, MT_DATA, M_PKTHDR, MJUM9BYTES); if (m == NULL) return (ENOBUFS); - if ((m->m_flags & M_EXT) == 0) { - m_freem(m); - return (ENOBUFS); - } m->m_pkthdr.len = m->m_len = MJUM9BYTES; /* * Adjust alignment so packet payload begins on a @@ -1365,7 +1362,6 @@ sk_attach(dev) } ifp->if_softc = sc_if; if_initname(ifp, device_get_name(dev), device_get_unit(dev)); - ifp->if_mtu = ETHERMTU; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; /* * SK_GENESIS has a bug in checksum offload - From linux. @@ -1513,7 +1509,7 @@ sk_attach(dev) * Must appear after the call to ether_ifattach() because * ether_ifattach() sets ifi_hdrlen to the default value. */ - ifp->if_data.ifi_hdrlen = sizeof(struct ether_vlan_header); + ifp->if_hdrlen = sizeof(struct ether_vlan_header); /* * Do miibus setup. @@ -1854,8 +1850,6 @@ sk_detach(dev) ether_ifdetach(ifp); SK_IF_LOCK(sc_if); } - if (ifp) - if_free(ifp); /* * We're generally called from skc_detach() which is using * device_delete_child() to get to here. It's already trashed @@ -1869,6 +1863,8 @@ sk_detach(dev) sk_dma_jumbo_free(sc_if); sk_dma_free(sc_if); SK_IF_UNLOCK(sc_if); + if (ifp) + if_free(ifp); return(0); } @@ -2240,31 +2236,29 @@ sk_dma_free(sc_if) /* Tx ring */ if (sc_if->sk_cdata.sk_tx_ring_tag) { - if (sc_if->sk_cdata.sk_tx_ring_map) + if (sc_if->sk_rdata.sk_tx_ring_paddr) bus_dmamap_unload(sc_if->sk_cdata.sk_tx_ring_tag, sc_if->sk_cdata.sk_tx_ring_map); - if (sc_if->sk_cdata.sk_tx_ring_map && - sc_if->sk_rdata.sk_tx_ring) + if (sc_if->sk_rdata.sk_tx_ring) bus_dmamem_free(sc_if->sk_cdata.sk_tx_ring_tag, sc_if->sk_rdata.sk_tx_ring, sc_if->sk_cdata.sk_tx_ring_map); sc_if->sk_rdata.sk_tx_ring = NULL; - sc_if->sk_cdata.sk_tx_ring_map = NULL; + sc_if->sk_rdata.sk_tx_ring_paddr = 0; bus_dma_tag_destroy(sc_if->sk_cdata.sk_tx_ring_tag); sc_if->sk_cdata.sk_tx_ring_tag = NULL; } /* Rx ring */ if (sc_if->sk_cdata.sk_rx_ring_tag) { - if (sc_if->sk_cdata.sk_rx_ring_map) + if (sc_if->sk_rdata.sk_rx_ring_paddr) bus_dmamap_unload(sc_if->sk_cdata.sk_rx_ring_tag, sc_if->sk_cdata.sk_rx_ring_map); - if (sc_if->sk_cdata.sk_rx_ring_map && - sc_if->sk_rdata.sk_rx_ring) + if (sc_if->sk_rdata.sk_rx_ring) bus_dmamem_free(sc_if->sk_cdata.sk_rx_ring_tag, sc_if->sk_rdata.sk_rx_ring, sc_if->sk_cdata.sk_rx_ring_map); sc_if->sk_rdata.sk_rx_ring = NULL; - sc_if->sk_cdata.sk_rx_ring_map = NULL; + sc_if->sk_rdata.sk_rx_ring_paddr = 0; bus_dma_tag_destroy(sc_if->sk_cdata.sk_rx_ring_tag); sc_if->sk_cdata.sk_rx_ring_tag = NULL; } @@ -2315,16 +2309,15 @@ sk_dma_jumbo_free(sc_if) /* jumbo Rx ring */ if (sc_if->sk_cdata.sk_jumbo_rx_ring_tag) { - if (sc_if->sk_cdata.sk_jumbo_rx_ring_map) + if (sc_if->sk_rdata.sk_jumbo_rx_ring_paddr) bus_dmamap_unload(sc_if->sk_cdata.sk_jumbo_rx_ring_tag, sc_if->sk_cdata.sk_jumbo_rx_ring_map); - if (sc_if->sk_cdata.sk_jumbo_rx_ring_map && - sc_if->sk_rdata.sk_jumbo_rx_ring) + if (sc_if->sk_rdata.sk_jumbo_rx_ring) bus_dmamem_free(sc_if->sk_cdata.sk_jumbo_rx_ring_tag, sc_if->sk_rdata.sk_jumbo_rx_ring, sc_if->sk_cdata.sk_jumbo_rx_ring_map); sc_if->sk_rdata.sk_jumbo_rx_ring = NULL; - sc_if->sk_cdata.sk_jumbo_rx_ring_map = NULL; + sc_if->sk_rdata.sk_jumbo_rx_ring_paddr = 0; bus_dma_tag_destroy(sc_if->sk_cdata.sk_jumbo_rx_ring_tag); sc_if->sk_cdata.sk_jumbo_rx_ring_tag = NULL; } @@ -2576,7 +2569,7 @@ sk_watchdog(arg) sk_txeof(sc_if); if (sc_if->sk_cdata.sk_tx_cnt != 0) { if_printf(sc_if->sk_ifp, "watchdog timeout\n"); - ifp->if_oerrors++; + if_inc_counter(ifp, IFCOUNTER_OERRORS, 1); ifp->if_drv_flags &= ~IFF_DRV_RUNNING; sk_init_locked(sc_if); } @@ -2791,7 +2784,7 @@ sk_rxeof(sc_if) SK_RXBYTES(sk_ctl) < SK_MIN_FRAMELEN || SK_RXBYTES(sk_ctl) > SK_MAX_FRAMELEN || sk_rxvalid(sc, rxstat, SK_RXBYTES(sk_ctl)) == 0) { - ifp->if_ierrors++; + if_inc_counter(ifp, IFCOUNTER_IERRORS, 1); sk_discard_rxbuf(sc_if, cons); continue; } @@ -2799,14 +2792,14 @@ sk_rxeof(sc_if) m = rxd->rx_m; csum = le32toh(cur_rx->sk_csum); if (sk_newbuf(sc_if, cons) != 0) { - ifp->if_iqdrops++; + if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1); /* reuse old buffer */ sk_discard_rxbuf(sc_if, cons); continue; } m->m_pkthdr.rcvif = ifp; m->m_pkthdr.len = m->m_len = SK_RXBYTES(sk_ctl); - ifp->if_ipackets++; + if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); if ((ifp->if_capenable & IFCAP_RXCSUM) != 0) sk_rxcksum(ifp, m, csum); SK_IF_UNLOCK(sc_if); @@ -2859,7 +2852,7 @@ sk_jumbo_rxeof(sc_if) SK_RXBYTES(sk_ctl) < SK_MIN_FRAMELEN || SK_RXBYTES(sk_ctl) > SK_JUMBO_FRAMELEN || sk_rxvalid(sc, rxstat, SK_RXBYTES(sk_ctl)) == 0) { - ifp->if_ierrors++; + if_inc_counter(ifp, IFCOUNTER_IERRORS, 1); sk_discard_jumbo_rxbuf(sc_if, cons); continue; } @@ -2867,14 +2860,14 @@ sk_jumbo_rxeof(sc_if) m = jrxd->rx_m; csum = le32toh(cur_rx->sk_csum); if (sk_jumbo_newbuf(sc_if, cons) != 0) { - ifp->if_iqdrops++; + if_inc_counter(ifp, IFCOUNTER_IQDROPS, 1); /* reuse old buffer */ sk_discard_jumbo_rxbuf(sc_if, cons); continue; } m->m_pkthdr.rcvif = ifp; m->m_pkthdr.len = m->m_len = SK_RXBYTES(sk_ctl); - ifp->if_ipackets++; + if_inc_counter(ifp, IFCOUNTER_IPACKETS, 1); if ((ifp->if_capenable & IFCAP_RXCSUM) != 0) sk_rxcksum(ifp, m, csum); SK_IF_UNLOCK(sc_if); @@ -2925,7 +2918,7 @@ sk_txeof(sc_if) BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(sc_if->sk_cdata.sk_tx_tag, txd->tx_dmamap); - ifp->if_opackets++; + if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); m_freem(txd->tx_m); txd->tx_m = NULL; STAILQ_REMOVE_HEAD(&sc_if->sk_cdata.sk_txbusyq, tx_q); @@ -3143,7 +3136,6 @@ sk_intr(xsc) if (status == 0 || status == 0xffffffff || sc->sk_suspended) goto done_locked; #endif - /* Handle receive interrupts first. */ if (status & SK_ISR_RX1_EOF) { if (ifp0->if_mtu > SK_MAX_FRAMELEN) @@ -3317,7 +3309,7 @@ sk_init_xmac(sc_if) * that jumbo frames larger than 8192 bytes will be * truncated. Disabling all bad frame filtering causes * the RX FIFO to operate in streaming mode, in which - * case the XMAC will start transfering frames out of the + * case the XMAC will start transferring frames out of the * RX FIFO as soon as the FIFO threshold is reached. */ if (ifp->if_mtu > SK_MAX_FRAMELEN) { diff --git a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/yukonreg.h b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/yukonreg.h index efe71a0d34..33ca8b2ae3 100644 --- a/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/yukonreg.h +++ b/src/add-ons/kernel/drivers/network/syskonnect/dev/sk/yukonreg.h @@ -165,7 +165,7 @@ /* SMI Data Register (SMIDR) */ #define YUKON_SMIDR 0x0084 -/* PHY Addres Register (PAR) */ +/* PHY Address Register (PAR) */ #define YUKON_PAR 0x0088 #define YU_PAR_MIB_CLR 0x0020 /* MIB Counters Clear Mode */