Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys



Module Name:    src
Committed By:   msaitoh
Date:           Tue Jan 22 03:42:28 UTC 2019

Modified Files:
        src/sys/arch/arm/at91: at91emac.c
        src/sys/arch/arm/ep93xx: epe.c
        src/sys/arch/arm/gemini: gemini_gmac.c
        src/sys/arch/arm/imx: if_enet.c
        src/sys/arch/arm/omap: if_cpsw.c omapl1x_emac.c
        src/sys/arch/arm/sunxi: sun4i_emac.c sunxi_emac.c
        src/sys/arch/arm/ti: if_cpsw.c
        src/sys/arch/arm/xscale: ixp425_if_npe.c
        src/sys/arch/evbppc/virtex/dev: if_temac.c
        src/sys/arch/macppc/dev: if_bm.c if_gm.c
        src/sys/arch/mips/alchemy/dev: if_aumac.c
        src/sys/arch/mips/atheros/dev: if_ae.c
        src/sys/arch/mips/cavium/dev: if_cnmac.c octeon_smi.c octeon_smivar.h
        src/sys/arch/mips/ralink: ralink_eth.c
        src/sys/arch/mips/sibyte/dev: sbmac.c
        src/sys/arch/playstation2/dev: emac3.c emac3var.h
        src/sys/arch/powerpc/booke/dev: pq3etsec.c
        src/sys/arch/powerpc/ibm4xx/dev: if_emac.c
        src/sys/arch/sgimips/mace: if_mec.c
        src/sys/dev/cadence: if_cemac.c
        src/sys/dev/ic: aic6915.c ax88190.c dl10019.c dwc_gmac.c elink3.c
            elinkxl.c gem.c hme.c i82557.c lan9118.c mtd803.c rtl8169.c
            rtl81x9.c smc83c170.c smc91cxx.c tulip.c
        src/sys/dev/marvell: if_gfe.c if_mvgbe.c if_mvxpe.c
        src/sys/dev/mii: acphy.c amhphy.c atphy.c bmtphy.c brgphy.c ciphy.c
            dmphy.c etphy.c exphy.c gentbi.c glxtphy.c gphyter.c icsphy.c
            igphy.c igphyreg.h ihphy.c ikphy.c inphy.c iophy.c lxtphy.c
            makphy.c mii.c mii_bitbang.c mii_bitbang.h mii_physubr.c miivar.h
            nsphy.c nsphyter.c pnaphy.c qsphy.c rdcphy.c rgephy.c rlphy.c
            sqphy.c tlphy.c tqphy.c ukphy.c ukphy_subr.c urlphy.c
        src/sys/dev/pci: if_age.c if_alc.c if_ale.c if_bce.c if_bge.c if_bnx.c
            if_cas.c if_et.c if_jme.c if_lii.c if_msk.c if_nfe.c if_pcn.c
            if_sip.c if_sk.c if_ste.c if_stge.c if_tl.c if_vge.c if_vr.c
            if_vte.c if_wm.c
        src/sys/dev/pcmcia: if_xi.c
        src/sys/dev/sbus: be.c
        src/sys/dev/usb: if_aue.c if_axe.c if_axen.c if_mue.c if_smsc.c
            if_udav.c if_url.c

Log Message:
 Change MII PHY read/write API from:

        int (*mii_readreg_t)(device_t, int, int);
        void (*mii_writereg_t)(device_t, int, int, int);
to:

        int (*mii_readreg_t)(device_t, int, int, uint16_t *);
        int (*mii_writereg_t)(device_t, int, int, uint16_t);

Now we can test if a read/write operation failed or not by the return value.

 In 802.3 spec says that the PHY shall not respond to read/write transaction
to the unimplemented register(22.2.4.3). Detecting timeout can be used to
check whether a register is implemented or not (if the register conforms to
the spec). ukphy(4) can be used this for MII_MMDACR and MII_MMDAADR.

 Note that I noticed that the following code do infinite loop in the
read/wirte function. If it accesses unimplemented PHY register, it will hang.
It should be fixed:

        arm/at91/at91emac.c
        arm/ep93xx/epe.c
        arm/omap/omapl1x_emac.c
        mips/ralink/ralink_eth.c
        arch/powerpc/booke/dev/pq3etsec.c(read)
        dev/cadence/if_cemac.c <- hkenken
        dev/ic/lan9118.c

Tested with the following device:

        axe+ukphy
        axe+rgephy
        axen+rgephy     (tested by Andrius V)
        wm+atphy
        wm+ukphy
        wm+igphy
        wm+ihphy
        wm+makphy
        sk+makphy
        sk+brgphy
        sk+gentbi
        msk+makphy
        sip+icsphy
        sip+ukphy
        re+rgephy
        bge+brgphy
        bnx+brgphy
        gsip+gphyter
        rtk+rlphy
        fxp+inphy       (tested by Andrius V)
        tlp+acphy
        ex+exphy
        epic+qsphy
        vge+ciphy       (tested by Andrius V)
        vr+ukphy        (tested by Andrius V)
        vte+ukphy       (tested by Andrius V)

Not tested (MAC):
        arm:at91emac
        arm:cemac
        arm:epe
        arm:geminigmac
        arm:enet
        arm:cpsw
        arm:emac(omac)
        arm:emac(sunxi)
        arm:npe
        evbppc:temac
        macppc:bm
        macppc:gm
        mips:aumac
        mips:ae
        mips:cnmac
        mips:reth
        mips:sbmac
        playstation2:smap
        powerpc:tsec
        powerpc:emac(ibm4xx)
        sgimips:mec
        sparc:be
        sf
        ne(ax88190, dl10019)
        awge
        ep
        gem
        hme
        smsh
        mtd
        sm
        age
        alc
        ale
        bce
        cas
        et
        jme
        lii
        nfe
        pcn
        ste
        stge
        tl
        xi
        aue
        mue
        smsc
        udav
        url

Not tested (PHY):
        amhphy
        bmtphy
        dmphy
        etphy
        glxtphy
        ikphy
        iophy
        lxtphy
        nsphyter
        pnaphy
        rdcphy
        sqphy
        tlphy
        tqphy
        urlphy


To generate a diff of this commit:
cvs rdiff -u -r1.22 -r1.23 src/sys/arch/arm/at91/at91emac.c
cvs rdiff -u -r1.38 -r1.39 src/sys/arch/arm/ep93xx/epe.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/gemini/gemini_gmac.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/arm/imx/if_enet.c
cvs rdiff -u -r1.21 -r1.22 src/sys/arch/arm/omap/if_cpsw.c
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/arm/omap/omapl1x_emac.c
cvs rdiff -u -r1.5 -r1.6 src/sys/arch/arm/sunxi/sun4i_emac.c
cvs rdiff -u -r1.20 -r1.21 src/sys/arch/arm/sunxi/sunxi_emac.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/arm/ti/if_cpsw.c
cvs rdiff -u -r1.35 -r1.36 src/sys/arch/arm/xscale/ixp425_if_npe.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/evbppc/virtex/dev/if_temac.c
cvs rdiff -u -r1.55 -r1.56 src/sys/arch/macppc/dev/if_bm.c
cvs rdiff -u -r1.50 -r1.51 src/sys/arch/macppc/dev/if_gm.c
cvs rdiff -u -r1.44 -r1.45 src/sys/arch/mips/alchemy/dev/if_aumac.c
cvs rdiff -u -r1.31 -r1.32 src/sys/arch/mips/atheros/dev/if_ae.c
cvs rdiff -u -r1.10 -r1.11 src/sys/arch/mips/cavium/dev/if_cnmac.c
cvs rdiff -u -r1.1 -r1.2 src/sys/arch/mips/cavium/dev/octeon_smi.c
cvs rdiff -u -r1.2 -r1.3 src/sys/arch/mips/cavium/dev/octeon_smivar.h
cvs rdiff -u -r1.14 -r1.15 src/sys/arch/mips/ralink/ralink_eth.c
cvs rdiff -u -r1.51 -r1.52 src/sys/arch/mips/sibyte/dev/sbmac.c
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/playstation2/dev/emac3.c
cvs rdiff -u -r1.6 -r1.7 src/sys/arch/playstation2/dev/emac3var.h
cvs rdiff -u -r1.39 -r1.40 src/sys/arch/powerpc/booke/dev/pq3etsec.c
cvs rdiff -u -r1.48 -r1.49 src/sys/arch/powerpc/ibm4xx/dev/if_emac.c
cvs rdiff -u -r1.57 -r1.58 src/sys/arch/sgimips/mace/if_mec.c
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/cadence/if_cemac.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/ic/aic6915.c src/sys/dev/ic/mtd803.c
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/ic/ax88190.c src/sys/dev/ic/dl10019.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/ic/dwc_gmac.c
cvs rdiff -u -r1.143 -r1.144 src/sys/dev/ic/elink3.c
cvs rdiff -u -r1.125 -r1.126 src/sys/dev/ic/elinkxl.c
cvs rdiff -u -r1.112 -r1.113 src/sys/dev/ic/gem.c
cvs rdiff -u -r1.100 -r1.101 src/sys/dev/ic/hme.c
cvs rdiff -u -r1.149 -r1.150 src/sys/dev/ic/i82557.c
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/ic/lan9118.c
cvs rdiff -u -r1.156 -r1.157 src/sys/dev/ic/rtl8169.c
cvs rdiff -u -r1.103 -r1.104 src/sys/dev/ic/rtl81x9.c
cvs rdiff -u -r1.86 -r1.87 src/sys/dev/ic/smc83c170.c
cvs rdiff -u -r1.97 -r1.98 src/sys/dev/ic/smc91cxx.c
cvs rdiff -u -r1.191 -r1.192 src/sys/dev/ic/tulip.c
cvs rdiff -u -r1.49 -r1.50 src/sys/dev/marvell/if_gfe.c
cvs rdiff -u -r1.52 -r1.53 src/sys/dev/marvell/if_mvgbe.c
cvs rdiff -u -r1.20 -r1.21 src/sys/dev/marvell/if_mvxpe.c
cvs rdiff -u -r1.25 -r1.26 src/sys/dev/mii/acphy.c src/sys/dev/mii/glxtphy.c
cvs rdiff -u -r1.20 -r1.21 src/sys/dev/mii/amhphy.c
cvs rdiff -u -r1.18 -r1.19 src/sys/dev/mii/atphy.c
cvs rdiff -u -r1.32 -r1.33 src/sys/dev/mii/bmtphy.c src/sys/dev/mii/urlphy.c
cvs rdiff -u -r1.78 -r1.79 src/sys/dev/mii/brgphy.c
cvs rdiff -u -r1.28 -r1.29 src/sys/dev/mii/ciphy.c src/sys/dev/mii/igphy.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/mii/dmphy.c
cvs rdiff -u -r1.1 -r1.2 src/sys/dev/mii/etphy.c src/sys/dev/mii/rdcphy.c
cvs rdiff -u -r1.54 -r1.55 src/sys/dev/mii/exphy.c
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/mii/gentbi.c
cvs rdiff -u -r1.30 -r1.31 src/sys/dev/mii/gphyter.c
cvs rdiff -u -r1.50 -r1.51 src/sys/dev/mii/icsphy.c src/sys/dev/mii/lxtphy.c
cvs rdiff -u -r1.10 -r1.11 src/sys/dev/mii/igphyreg.h src/sys/dev/mii/ihphy.c
cvs rdiff -u -r1.12 -r1.13 src/sys/dev/mii/ikphy.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/mii/inphy.c
cvs rdiff -u -r1.38 -r1.39 src/sys/dev/mii/iophy.c
cvs rdiff -u -r1.51 -r1.52 src/sys/dev/mii/makphy.c src/sys/dev/mii/mii.c \
    src/sys/dev/mii/sqphy.c
cvs rdiff -u -r1.13 -r1.14 src/sys/dev/mii/mii_bitbang.c \
    src/sys/dev/mii/ukphy_subr.c
cvs rdiff -u -r1.6 -r1.7 src/sys/dev/mii/mii_bitbang.h
cvs rdiff -u -r1.83 -r1.84 src/sys/dev/mii/mii_physubr.c
cvs rdiff -u -r1.63 -r1.64 src/sys/dev/mii/miivar.h
cvs rdiff -u -r1.61 -r1.62 src/sys/dev/mii/nsphy.c
cvs rdiff -u -r1.39 -r1.40 src/sys/dev/mii/nsphyter.c
cvs rdiff -u -r1.21 -r1.22 src/sys/dev/mii/pnaphy.c
cvs rdiff -u -r1.49 -r1.50 src/sys/dev/mii/qsphy.c src/sys/dev/mii/ukphy.c
cvs rdiff -u -r1.45 -r1.46 src/sys/dev/mii/rgephy.c
cvs rdiff -u -r1.31 -r1.32 src/sys/dev/mii/rlphy.c
cvs rdiff -u -r1.62 -r1.63 src/sys/dev/mii/tlphy.c
cvs rdiff -u -r1.40 -r1.41 src/sys/dev/mii/tqphy.c
cvs rdiff -u -r1.54 -r1.55 src/sys/dev/pci/if_age.c
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/pci/if_alc.c src/sys/dev/pci/if_cas.c
cvs rdiff -u -r1.26 -r1.27 src/sys/dev/pci/if_ale.c
cvs rdiff -u -r1.49 -r1.50 src/sys/dev/pci/if_bce.c
cvs rdiff -u -r1.321 -r1.322 src/sys/dev/pci/if_bge.c
cvs rdiff -u -r1.67 -r1.68 src/sys/dev/pci/if_bnx.c
cvs rdiff -u -r1.19 -r1.20 src/sys/dev/pci/if_et.c src/sys/dev/pci/if_lii.c
cvs rdiff -u -r1.36 -r1.37 src/sys/dev/pci/if_jme.c
cvs rdiff -u -r1.83 -r1.84 src/sys/dev/pci/if_msk.c
cvs rdiff -u -r1.66 -r1.67 src/sys/dev/pci/if_nfe.c src/sys/dev/pci/if_pcn.c \
    src/sys/dev/pci/if_stge.c src/sys/dev/pci/if_vge.c
cvs rdiff -u -r1.168 -r1.169 src/sys/dev/pci/if_sip.c
cvs rdiff -u -r1.92 -r1.93 src/sys/dev/pci/if_sk.c
cvs rdiff -u -r1.52 -r1.53 src/sys/dev/pci/if_ste.c
cvs rdiff -u -r1.110 -r1.111 src/sys/dev/pci/if_tl.c
cvs rdiff -u -r1.126 -r1.127 src/sys/dev/pci/if_vr.c
cvs rdiff -u -r1.21 -r1.22 src/sys/dev/pci/if_vte.c
cvs rdiff -u -r1.616 -r1.617 src/sys/dev/pci/if_wm.c
cvs rdiff -u -r1.84 -r1.85 src/sys/dev/pcmcia/if_xi.c
cvs rdiff -u -r1.89 -r1.90 src/sys/dev/sbus/be.c
cvs rdiff -u -r1.145 -r1.146 src/sys/dev/usb/if_aue.c
cvs rdiff -u -r1.94 -r1.95 src/sys/dev/usb/if_axe.c
cvs rdiff -u -r1.17 -r1.18 src/sys/dev/usb/if_axen.c
cvs rdiff -u -r1.27 -r1.28 src/sys/dev/usb/if_mue.c
cvs rdiff -u -r1.38 -r1.39 src/sys/dev/usb/if_smsc.c
cvs rdiff -u -r1.55 -r1.56 src/sys/dev/usb/if_udav.c
cvs rdiff -u -r1.60 -r1.61 src/sys/dev/usb/if_url.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index