All of lore.kernel.org
 help / color / mirror / Atom feed
From: <Arun.Ramadoss@microchip.com>
To: <olteanv@gmail.com>
Cc: <andrew@lunn.ch>, <linux-kernel@vger.kernel.org>,
	<UNGLinuxDriver@microchip.com>, <vivien.didelot@gmail.com>,
	<linux@armlinux.org.uk>, <f.fainelli@gmail.com>,
	<kuba@kernel.org>, <edumazet@google.com>, <pabeni@redhat.com>,
	<netdev@vger.kernel.org>, <Woojung.Huh@microchip.com>,
	<davem@davemloft.net>
Subject: Re: [RFC Patch net-next 04/10] net: dsa: microchip: add common duplex and flow control function
Date: Tue, 19 Jul 2022 15:54:44 +0000	[thread overview]
Message-ID: <c7b276dd299e66fac8b4dff7315296741335d4af.camel@microchip.com> (raw)
In-Reply-To: <20220719105259.h2pbg4jdjhblbkv5@skbuf>

On Tue, 2022-07-19 at 13:52 +0300, Vladimir Oltean wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you
> know the content is safe
> 
> On Tue, Jul 12, 2022 at 09:33:02PM +0530, Arun Ramadoss wrote:
> > This patch add common function for configuring the Full/Half duplex
> > and
> > transmit/receive flow control. KSZ8795 uses the Global control
> > register
> > 4 for configuring the duplex and flow control, whereas all other
> > KSZ9477
> > based switch uses the xMII Control 0 register.
> > 
> > Signed-off-by: Arun Ramadoss <arun.ramadoss@microchip.com>
> > ---
> >  drivers/net/dsa/microchip/ksz9477_reg.h  |  1 -
> >  drivers/net/dsa/microchip/ksz_common.c   | 64
> > ++++++++++++++++++++++++
> >  drivers/net/dsa/microchip/ksz_common.h   |  8 +++
> >  drivers/net/dsa/microchip/lan937x_main.c | 24 +++------
> >  drivers/net/dsa/microchip/lan937x_reg.h  |  3 --
> >  5 files changed, 80 insertions(+), 20 deletions(-)
> > 
> > diff --git a/drivers/net/dsa/microchip/ksz9477_reg.h
> > b/drivers/net/dsa/microchip/ksz9477_reg.h
> > index 2649fdf0bae1..6ca859345932 100644
> > --- a/drivers/net/dsa/microchip/ksz9477_reg.h
> > +++ b/drivers/net/dsa/microchip/ksz9477_reg.h
> > @@ -1178,7 +1178,6 @@
> >  #define REG_PORT_XMII_CTRL_0         0x0300
> > 
> >  #define PORT_SGMII_SEL                       BIT(7)
> > -#define PORT_MII_FULL_DUPLEX         BIT(6)
> >  #define PORT_GRXC_ENABLE             BIT(0)
> > 
> >  #define REG_PORT_XMII_CTRL_1         0x0301
> > diff --git a/drivers/net/dsa/microchip/ksz_common.c
> > b/drivers/net/dsa/microchip/ksz_common.c
> > index f41cd2801210..4ef0ee9a245d 100644
> > --- a/drivers/net/dsa/microchip/ksz_common.c
> > +++ b/drivers/net/dsa/microchip/ksz_common.c
> > @@ -280,6 +280,8 @@ static const u32 ksz8795_masks[] = {
> >       [DYNAMIC_MAC_TABLE_FID]         = GENMASK(26, 20),
> >       [DYNAMIC_MAC_TABLE_SRC_PORT]    = GENMASK(26, 24),
> >       [DYNAMIC_MAC_TABLE_TIMESTAMP]   = GENMASK(28, 27),
> > +     [P_MII_TX_FLOW_CTRL]            = BIT(5),
> > +     [P_MII_RX_FLOW_CTRL]            = BIT(5),
> 
> The masks are the same for TX and RX flow control and the writes are
> to
> the same register (regs[P_XMII_CTRL_0]), is this an error?

I have gone through ksz8795 datasheet, I could not find separate bit
for Tx and Rx flow control bit. Bit 5 mentioned as Flow control on the
switch MII/RMII interface. So I had configured same bit for Tx and Rx.

> 
> >  };
> > 
> >  static const u8 ksz8795_values[] = {
> > @@ -287,6 +289,8 @@ static const u8 ksz8795_values[] = {
> >       [P_MII_NOT_1GBIT]               = 0,
> >       [P_MII_100MBIT]                 = 0,
> >       [P_MII_10MBIT]                  = 1,
> > +     [P_MII_FULL_DUPLEX]             = 0,
> > +     [P_MII_HALF_DUPLEX]             = 1,
> >  };
> > 
> >  static const u8 ksz8795_shifts[] = {
> > @@ -366,6 +370,8 @@ static const u16 ksz9477_regs[] = {
> >  static const u32 ksz9477_masks[] = {
> >       [ALU_STAT_WRITE]                = 0,
> >       [ALU_STAT_READ]                 = 1,
> > +     [P_MII_TX_FLOW_CTRL]            = BIT(5),
> > +     [P_MII_RX_FLOW_CTRL]            = BIT(3),
> >  };
> > 
> > --
> > 2.36.1
> > 
> 
> 

  reply	other threads:[~2022-07-19 15:55 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-12 16:02 [RFC Patch net-next 00/10] net: dsa: microchip: add support for phylink mac config and link up Arun Ramadoss
2022-07-12 16:02 ` [RFC Patch net-next 01/10] net: dsa: microchip: lan937x: read rgmii delay from device tree Arun Ramadoss
2022-07-19 10:28   ` Vladimir Oltean
2022-07-19 15:58     ` Arun.Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 02/10] net: dsa: microchip: add common gigabit set and get function Arun Ramadoss
2022-07-19 10:37   ` Vladimir Oltean
2022-07-12 16:03 ` [RFC Patch net-next 03/10] net: dsa: microchip: add common 100/10Mbps selection function Arun Ramadoss
2022-07-19 10:48   ` Vladimir Oltean
2022-07-19 15:56     ` Arun.Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 04/10] net: dsa: microchip: add common duplex and flow control function Arun Ramadoss
2022-07-19 10:52   ` Vladimir Oltean
2022-07-19 15:54     ` Arun.Ramadoss [this message]
2022-07-12 16:03 ` [RFC Patch net-next 05/10] net: dsa: microchip: add support for common phylink mac link up Arun Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 06/10] net: dsa: microchip: lan937x: add support for configuing xMII register Arun Ramadoss
2022-07-19 11:04   ` Vladimir Oltean
2022-07-19 15:55     ` Arun.Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 07/10] net: dsa: microchip: apply rgmii tx and rx delay in phylink mac config Arun Ramadoss
2022-07-19 10:25   ` Vladimir Oltean
2022-07-20 14:51     ` Arun.Ramadoss
2022-07-20 21:04       ` Vladimir Oltean
2022-07-12 16:03 ` [RFC Patch net-next 08/10] net: dsa: microchip: ksz9477: use common xmii function Arun Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 09/10] net: dsa: microchip: ksz8795: " Arun Ramadoss
2022-07-12 16:03 ` [RFC Patch net-next 10/10] net: dsa: microchip: add support for phylink mac config Arun Ramadoss

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c7b276dd299e66fac8b4dff7315296741335d4af.camel@microchip.com \
    --to=arun.ramadoss@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=Woojung.Huh@microchip.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=f.fainelli@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pabeni@redhat.com \
    --cc=vivien.didelot@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.