From mboxrd@z Thu Jan 1 00:00:00 1970 From: Florian Fainelli Subject: Re: [PATCH] b53: Add brcm5389 support Date: Wed, 30 May 2018 10:46:57 -0700 Message-ID: <87932b41-c733-a721-fa78-8e474aa0a40c@gmail.com> References: <279329c705e4fcdee889c3a8a9ecb1becd09ab88.camel@vitec.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Cc: "davem@davemloft.net" , "netdev@vger.kernel.org" To: =?UTF-8?Q?Damien_Th=c3=a9bault?= , "vivien.didelot@savoirfairelinux.com" , "andrew@lunn.ch" Return-path: Received: from mail-qt0-f196.google.com ([209.85.216.196]:38475 "EHLO mail-qt0-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753557AbeE3RrD (ORCPT ); Wed, 30 May 2018 13:47:03 -0400 Received: by mail-qt0-f196.google.com with SMTP id x34-v6so11037766qtk.5 for ; Wed, 30 May 2018 10:47:02 -0700 (PDT) In-Reply-To: <279329c705e4fcdee889c3a8a9ecb1becd09ab88.camel@vitec.com> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 05/30/2018 08:33 AM, Damien Thébault wrote: > This patch adds support for the BCM5389 switch connected through MDIO. This looks good, please do address the following couple of things: - subject should be: net: dsa: b53: Add BCM5389 support - you also need to update Documentation/devicetree/bindings/net/dsa/b53.txt with the compatible string Thank you! > > Signed-off-by: Damien Thébault > --- > drivers/net/dsa/b53/b53_common.c | 13 +++++++++++++ > drivers/net/dsa/b53/b53_mdio.c | 5 ++++- > drivers/net/dsa/b53/b53_priv.h | 1 + > 3 files changed, 18 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/dsa/b53/b53_common.c b/drivers/net/dsa/b53/b53_common.c > index 78616787f2a3..3da5fca77cbd 100644 > --- a/drivers/net/dsa/b53/b53_common.c > +++ b/drivers/net/dsa/b53/b53_common.c > @@ -1711,6 +1711,18 @@ static const struct b53_chip_data b53_switch_chips[] = { > .cpu_port = B53_CPU_PORT_25, > .duplex_reg = B53_DUPLEX_STAT_FE, > }, > + { > + .chip_id = BCM5389_DEVICE_ID, > + .dev_name = "BCM5389", > + .vlans = 4096, > + .enabled_ports = 0x1f, > + .arl_entries = 4, > + .cpu_port = B53_CPU_PORT, > + .vta_regs = B53_VTA_REGS, > + .duplex_reg = B53_DUPLEX_STAT_GE, > + .jumbo_pm_reg = B53_JUMBO_PORT_MASK, > + .jumbo_size_reg = B53_JUMBO_MAX_SIZE, > + }, > { > .chip_id = BCM5395_DEVICE_ID, > .dev_name = "BCM5395", > @@ -2034,6 +2046,7 @@ int b53_switch_detect(struct b53_device *dev) > else > dev->chip_id = BCM5365_DEVICE_ID; > break; > + case BCM5389_DEVICE_ID: > case BCM5395_DEVICE_ID: > case BCM5397_DEVICE_ID: > case BCM5398_DEVICE_ID: > diff --git a/drivers/net/dsa/b53/b53_mdio.c b/drivers/net/dsa/b53/b53_mdio.c > index fa7556f5d4fb..a533a90e3904 100644 > --- a/drivers/net/dsa/b53/b53_mdio.c > +++ b/drivers/net/dsa/b53/b53_mdio.c > @@ -285,6 +285,7 @@ static const struct b53_io_ops b53_mdio_ops = { > #define B53_BRCM_OUI_1 0x0143bc00 > #define B53_BRCM_OUI_2 0x03625c00 > #define B53_BRCM_OUI_3 0x00406000 > +#define B53_BRCM_OUI_4 0x01410c00 > > static int b53_mdio_probe(struct mdio_device *mdiodev) > { > @@ -311,7 +312,8 @@ static int b53_mdio_probe(struct mdio_device *mdiodev) > */ > if ((phy_id & 0xfffffc00) != B53_BRCM_OUI_1 && > (phy_id & 0xfffffc00) != B53_BRCM_OUI_2 && > - (phy_id & 0xfffffc00) != B53_BRCM_OUI_3) { > + (phy_id & 0xfffffc00) != B53_BRCM_OUI_3 && > + (phy_id & 0xfffffc00) != B53_BRCM_OUI_4) { > dev_err(&mdiodev->dev, "Unsupported device: 0x%08x\n", phy_id); > return -ENODEV; > } > @@ -360,6 +362,7 @@ static const struct of_device_id b53_of_match[] = { > { .compatible = "brcm,bcm53125" }, > { .compatible = "brcm,bcm53128" }, > { .compatible = "brcm,bcm5365" }, > + { .compatible = "brcm,bcm5389" }, > { .compatible = "brcm,bcm5395" }, > { .compatible = "brcm,bcm5397" }, > { .compatible = "brcm,bcm5398" }, > diff --git a/drivers/net/dsa/b53/b53_priv.h b/drivers/net/dsa/b53/b53_priv.h > index 1187ebd79287..3b57f47d0e79 100644 > --- a/drivers/net/dsa/b53/b53_priv.h > +++ b/drivers/net/dsa/b53/b53_priv.h > @@ -48,6 +48,7 @@ struct b53_io_ops { > enum { > BCM5325_DEVICE_ID = 0x25, > BCM5365_DEVICE_ID = 0x65, > + BCM5389_DEVICE_ID = 0x89, > BCM5395_DEVICE_ID = 0x95, > BCM5397_DEVICE_ID = 0x97, > BCM5398_DEVICE_ID = 0x98, > -- Florian