• Lukas Wunner's avatar
    net: ks8851: Deduplicate register macros · aae079aa
    Lukas Wunner authored
    The ks8851 chip is sold either with an SPI interface (KSZ8851SNL) or
    with a so-called non-PCI interface (KSZ8851-16MLL).  When the driver
    for the latter was introduced with commit a55c0a0e ("drivers/net:
    ks8851_mll ethernet network driver"), it duplicated the register macros
    introduced by the driver for the former with commit 3ba81f3e ("net:
    Micrel KS8851 SPI network driver").
    
    The chips are almost identical, so the duplication seems unwarranted.
    There are a handful of bits which are in use on the KSZ8851-16MLL but
    reserved on the KSZ8851SNL, and vice-versa, but there are no actual
    collisions.
    
    Thus, remove the duplicate definitions from the KSZ8851-16MLL driver.
    Mark all bits which differ between the two chips.  Move the SPI frame
    opcodes, which are specific to KSZ8851SNL, to its driver.
    
    The KSZ8851-16MLL driver added a RXFCTR_THRESHOLD_MASK macro which is a
    duplication of the RXFCTR_RXFCT_MASK macro, rename it where it's used.
    Same for P1MBCR_FORCE_FDX, which duplicates the BMCR_FULLDPLX macro and
    OBCR_ODS_16MA, which duplicates OBCR_ODS_16mA.
    Signed-off-by: default avatarLukas Wunner <lukas@wunner.de>
    Cc: Frank Pavlic <f.pavlic@kunbus.de>
    Cc: Ben Dooks <ben.dooks@codethink.co.uk>
    Cc: Tristram Ha <Tristram.Ha@microchip.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    aae079aa
ks8851_mll.c 34.5 KB