a78fad173fa31b9499d257c19a95c9bd15474cf5
[openwrt/staging/xback.git] /
1 From c64c7fa0a774d9da72071a8517e359992baac982 Mon Sep 17 00:00:00 2001
2 From: "Russell King (Oracle)" <rmk+kernel@armlinux.org.uk>
3 Date: Tue, 3 Dec 2024 15:31:07 +0000
4 Subject: [PATCH 05/13] net: phy: bcm84881: implement phy_inband_caps() method
5
6 BCM84881 has no support for inband signalling, so this is a trivial
7 implementation that returns no support for inband.
8
9 Reviewed-by: Andrew Lunn <andrew@lunn.ch>
10 Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
11 Acked-by: Florian Fainelli <florian.fainelli@broadcom.com>
12 Link: https://patch.msgid.link/E1tIUrj-006IU6-ON@rmk-PC.armlinux.org.uk
13 Signed-off-by: Jakub Kicinski <kuba@kernel.org>
14 ---
15 drivers/net/phy/bcm84881.c | 10 ++++++++++
16 1 file changed, 10 insertions(+)
17
18 --- a/drivers/net/phy/bcm84881.c
19 +++ b/drivers/net/phy/bcm84881.c
20 @@ -223,11 +223,21 @@ static int bcm84881_read_status(struct p
21 return genphy_c45_read_mdix(phydev);
22 }
23
24 +/* The Broadcom BCM84881 in the Methode DM7052 is unable to provide a SGMII
25 + * or 802.3z control word, so inband will not work.
26 + */
27 +static unsigned int bcm84881_inband_caps(struct phy_device *phydev,
28 + phy_interface_t interface)
29 +{
30 + return LINK_INBAND_DISABLE;
31 +}
32 +
33 static struct phy_driver bcm84881_drivers[] = {
34 {
35 .phy_id = 0xae025150,
36 .phy_id_mask = 0xfffffff0,
37 .name = "Broadcom BCM84881",
38 + .inband_caps = bcm84881_inband_caps,
39 .config_init = bcm84881_config_init,
40 .probe = bcm84881_probe,
41 .get_features = bcm84881_get_features,