|
|
Log in / Subscribe / Register

net: phy: bcm5481x: add support for BroadR-Reach mode

From:  Kamil Horák - 2N <kamilh-AT-axis.com>
To:  <florian.fainelli-AT-broadcom.com>, <bcm-kernel-feedback-list-AT-broadcom.com>, <andrew-AT-lunn.ch>, <hkallweit1-AT-gmail.com>
Subject:  [PATCH v5 0/3] net: phy: bcm5481x: add support for BroadR-Reach mode
Date:  Wed, 05 Jun 2024 11:56:43 +0200
Message-ID:  <20240605095646.3924454-1-kamilh@axis.com>
Cc:  <kamilh-AT-axis.com>, <netdev-AT-vger.kernel.org>, <linux-kernel-AT-vger.kernel.org>
Archive-link:  Article

PATCH 1 - Add the 10baseT1BRR_Full link mode

PATCH 2 - Add the definitions of LRE registers, necessary to use
   BroadR-Reach modes on the BCM5481x PHY

PATCH 3 - Implementation of the BroadR-Reach modes for the Broadcom
   PHYs

Changes in v2:
  - Divided into multiple patches, removed useless link modes

Changes in v3:
  - Fixed uninitialized variable in bcm5481x_config_delay_swap function

Changes in v4:
  - Improved the division of functions between bcm-phy library and broadcom.c
  - Changed the BroadR-Reach / IEEE mode switching to device tree boolean as
    these modes are mutually exclusive and barely could coexist in one hardware
  - Made the link mode selection compatible with current ethtool (i.e. the
    linkmode is selected by choosing speed and master-slave)

Changes in v5:
  - Fixed the operator precedence as reported by the kernel test robot
  - Fixed doc of bcm_linkmode_adv_to_mii_adv_t function

Kamil Horák - 2N (3):
  net: phy: bcm54811: New link mode for BroadR-Reach
  net: phy: bcm54811: Add LRE registers definitions
  net: phy: bcm-phy-lib: Implement BroadR-Reach link modes

 drivers/net/phy/bcm-phy-lib.c | 123 ++++++++++++
 drivers/net/phy/bcm-phy-lib.h |   4 +
 drivers/net/phy/broadcom.c    | 368 ++++++++++++++++++++++++++++++++--
 drivers/net/phy/phy-core.c    |   3 +-
 include/linux/brcmphy.h       |  89 ++++++++
 include/uapi/linux/ethtool.h  |   1 +
 net/ethtool/common.c          |   3 +
 7 files changed, 573 insertions(+), 18 deletions(-)

-- 
2.39.2




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds