01 Jul, 2022

1 commit


23 Nov, 2018

1 commit

  • [ Upstream commit 0432e833191ad4d17b7fc2364941f91dad51db1a ]

    Since 4.19 the following error in sysfs has appeared when using the
    r8169 NIC driver:

    $cd /sys/module/realtek/drivers
    $ls -l
    ls: cannot access 'mdio_bus:RTL8201F 10/100Mbps Ethernet': No such file or directory
    [..garbled dir entries follow..]

    Apparently the forward slash in "10/100Mbps Ethernet" is interpreted
    as directory separator that leads nowhere, and was introduced in commit
    513588dd44b ("net: phy: realtek: add RTL8201F phy-id and functions").

    Fix this by removing the offending slash in the driver name.

    Other drivers in net/phy seem to have the same problem, but I cannot
    test/verify them.

    Fixes: 513588dd44b ("net: phy: realtek: add RTL8201F phy-id and functions")
    Signed-off-by: Holger Hoffstätte
    Reviewed-by: Andrew Lunn
    Signed-off-by: David S. Miller
    Signed-off-by: Greg Kroah-Hartman

    Holger Hoffstätte
     

18 Jul, 2018

1 commit

  • The RTL8366RB is an ASIC with five internal PHYs for
    LAN0..LAN3 and WAN. The PHYs are spawn off the main
    device so they can be handled in a distributed manner
    by the Realtek PHY driver. All that is really needed
    is the power save feature enablement and letting the
    PHY driver core pick up the IRQ from the switch chip.

    Cc: Antti Seppälä
    Cc: Roman Yeryomin
    Cc: Colin Leitner
    Cc: Gabor Juhos
    Cc: Florian Fainelli
    Signed-off-by: Linus Walleij
    Signed-off-by: David S. Miller

    Linus Walleij
     

17 Jul, 2018

1 commit


02 Jul, 2018

2 commits


30 Jun, 2018

1 commit

  • In preparation of adding phylib support to the r8169 driver we need
    PHY drivers for all chip-internal PHY types. Fortunately almost all
    of them are either supported by the Realtek PHY driver already or work
    with the genphy driver.
    Still missing is support for the PHY of RTL8169s, it requires a quirk
    to properly support 100Mbit-fixed mode. The quirk was copied from
    r8169 driver which copied it from the vendor driver.
    Based on the PHYID the internal PHY seems to be a RTL8211.

    Signed-off-by: Heiner Kallweit
    Signed-off-by: David S. Miller

    Heiner Kallweit
     

29 May, 2018

1 commit


22 Mar, 2018

1 commit

  • The Ethernet on mpc8315erdb is broken since commit b6b5e8a69118
    ("gianfar: Disable EEE autoneg by default"). The reason is that
    even though the rtl8211b doesn't support the MMD extended registers
    access, it does return some random values if we trying to access
    the MMD register via indirect method. This makes it seem that the
    EEE is supported by this phy device. And the subsequent writing to
    the MMD registers does cause the phy malfunction. So use the dummy
    stubs for the MMD register access to fix this issue.

    Fixes: b6b5e8a69118 ("gianfar: Disable EEE autoneg by default")
    Signed-off-by: Kevin Hao
    Signed-off-by: David S. Miller

    Kevin Hao
     

17 Jan, 2018

1 commit


03 Dec, 2017

5 commits


02 Dec, 2017

1 commit


14 Nov, 2017

1 commit

  • After commit b94d22d94ad22 "ARM64: dts: meson-gx: add external PHY
    interrupt on some platforms" ethernet stopped working on my Odroid-C2
    which has a RTL8211F phy.

    It turned out that no interrupts were triggered. Further analysis
    showed the register INER can't be altered on page 0.
    Because register INSR needs to be accessed via page 0xa43 I assumed
    that register INER needs to be accessed via some page too.
    Some brute force check resulted in page 0xa42 being the right one.

    With this patch the phy is working properly in interrupt mode.

    Fixes: 3447cf2e9a11 ("net/phy: Add support for Realtek RTL8211F")
    Signed-off-by: Heiner Kallweit
    Tested-by: Jerome Brunet
    Signed-off-by: David S. Miller

    Heiner Kallweit
     

19 Sep, 2017

2 commits


29 Nov, 2016

1 commit

  • The old logic always enabled the TX-delay when the phy-mode was set to
    PHY_INTERFACE_MODE_RGMII. There are dedicated phy-modes which tell the
    PHY driver to enable the RX and/or TX delays:
    - PHY_INTERFACE_MODE_RGMII should disable the RX and TX delay in the
    PHY (if required, the MAC should add the delays in this case)
    - PHY_INTERFACE_MODE_RGMII_ID should enable RX and TX delay in the PHY
    - PHY_INTERFACE_MODE_RGMII_TXID should enable the TX delay in the PHY
    - PHY_INTERFACE_MODE_RGMII_RXID should enable the RX delay in the PHY
    (currently not supported by RTL8211F)

    With this patch we enable the TX delay for PHY_INTERFACE_MODE_RGMII_ID
    and PHY_INTERFACE_MODE_RGMII_TXID.
    Additionally we now explicity disable the TX-delay, which seems to be
    enabled automatically after a hard-reset of the PHY (by triggering it's
    reset pin) to get a consistent state (as defined by the phy-mode).

    This fixes a compatibility problem with some SoCs where the TX-delay was
    also added by the MAC. With the TX-delay being applied twice the TX
    clock was off and TX traffic was broken or very slow (
    Reviewed-by: Florian Fainelli
    Signed-off-by: David S. Miller

    Martin Blumenstingl
     

08 Jan, 2016

1 commit


10 Aug, 2015

1 commit


23 Jun, 2015

1 commit


13 Nov, 2014

1 commit


12 Jun, 2014

1 commit


12 Nov, 2013

1 commit


21 Aug, 2013

1 commit


29 Jan, 2013

1 commit


09 Jul, 2012

1 commit

  • If registering of one of them fails, all already registered drivers
    of this module will be unregistered.

    Use the new register/unregister functions in all drivers
    registering more than one driver.

    amd.c, realtek.c: Simplify: directly return registration result.

    Tested with broadcom.c
    All others compile-tested.

    Signed-off-by: Christian Hohnstaedt
    Signed-off-by: David S. Miller

    Christian Hohnstaedt
     

01 Nov, 2011

1 commit


05 Oct, 2010

1 commit

  • MODULE_DEVICE_TABLE only expands to something if it's compiled
    for a module. So when building-in support for the phys, the
    mdio_device_id tables are unused. Marking them with __maybe_unused
    fixes the following warnings:

    drivers/net/phy/bcm63xx.c:134: warning: 'bcm63xx_tbl' defined but not used
    drivers/net/phy/broadcom.c:933: warning: 'broadcom_tbl' defined but not used
    drivers/net/phy/cicada.c:162: warning: 'cicada_tbl' defined but not used
    drivers/net/phy/davicom.c:222: warning: 'davicom_tbl' defined but not used
    drivers/net/phy/et1011c.c:114: warning: 'et1011c_tbl' defined but not used
    drivers/net/phy/icplus.c:137: warning: 'icplus_tbl' defined but not used
    drivers/net/phy/lxt.c:226: warning: 'lxt_tbl' defined but not used
    drivers/net/phy/marvell.c:724: warning: 'marvell_tbl' defined but not used
    drivers/net/phy/micrel.c:234: warning: 'micrel_tbl' defined but not used
    drivers/net/phy/national.c:154: warning: 'ns_tbl' defined but not used
    drivers/net/phy/qsemi.c:141: warning: 'qs6612_tbl' defined but not used
    drivers/net/phy/realtek.c:82: warning: 'realtek_tbl' defined but not used
    drivers/net/phy/smsc.c:257: warning: 'smsc_tbl' defined but not used
    drivers/net/phy/ste10Xp.c:135: warning: 'ste10Xp_tbl' defined but not used
    drivers/net/phy/vitesse.c:195: warning: 'vitesse_tbl' defined but not used

    Signed-off-by: Uwe Kleine-König
    Signed-off-by: David S. Miller

    Uwe Kleine-König
     

03 Apr, 2010

1 commit


03 Feb, 2008

1 commit