All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alvin Šipraga" <ALSI@bang-olufsen.dk>
To: "luizluca@gmail.com" <luizluca@gmail.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Cc: "linus.walleij@linaro.org" <linus.walleij@linaro.org>,
	"andrew@lunn.ch" <andrew@lunn.ch>,
	"vivien.didelot@gmail.com" <vivien.didelot@gmail.com>,
	"f.fainelli@gmail.com" <f.fainelli@gmail.com>,
	"olteanv@gmail.com" <olteanv@gmail.com>,
	"arinc.unal@arinc9.com" <arinc.unal@arinc9.com>
Subject: Re: [PATCH net-next 04/13] net: dsa: realtek: convert subdrivers into modules
Date: Thu, 16 Dec 2021 23:29:35 +0000	[thread overview]
Message-ID: <04fab19f-36c6-4db0-e0f2-6f69f3a190ec@bang-olufsen.dk> (raw)
In-Reply-To: <20211216201342.25587-5-luizluca@gmail.com>

On 12/16/21 21:13, luizluca@gmail.com wrote:
> From: Luiz Angelo Daros de Luca <luizluca@gmail.com>
> 
> Preparing for multiple interfaces support, the drivers
> must be independent of realtek-smi.
> 
> Tested-by: Arınç ÜNAL <arinc.unal@arinc9.com>
> Signed-off-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
> ---
>   drivers/net/dsa/realtek/Kconfig               | 20 +++++++++++++++++--
>   drivers/net/dsa/realtek/Makefile              |  4 +++-
>   .../{realtek-smi-core.c => realtek-smi.c}     | 15 ++++++++++----
>   drivers/net/dsa/realtek/rtl8365mb.c           |  2 ++
>   .../dsa/realtek/{rtl8366.c => rtl8366-core.c} |  0
>   drivers/net/dsa/realtek/rtl8366rb.c           |  2 ++
>   6 files changed, 36 insertions(+), 7 deletions(-)
>   rename drivers/net/dsa/realtek/{realtek-smi-core.c => realtek-smi.c} (96%)
>   rename drivers/net/dsa/realtek/{rtl8366.c => rtl8366-core.c} (100%)
> 
> diff --git a/drivers/net/dsa/realtek/Kconfig b/drivers/net/dsa/realtek/Kconfig
> index bbc6e918baa6..c002a84a00f5 100644
> --- a/drivers/net/dsa/realtek/Kconfig
> +++ b/drivers/net/dsa/realtek/Kconfig
> @@ -2,8 +2,6 @@
>   menuconfig NET_DSA_REALTEK
>   	tristate "Realtek Ethernet switch family support"
>   	depends on NET_DSA
> -	select NET_DSA_TAG_RTL4_A
> -	select NET_DSA_TAG_RTL8_4
>   	select FIXED_PHY
>   	select IRQ_DOMAIN
>   	select REALTEK_PHY
> @@ -17,3 +15,21 @@ config NET_DSA_REALTEK_SMI
>   	default y
>   	help
>   	  Select to enable support for registering switches connected through SMI.
> +
> +config NET_DSA_REALTEK_RTL8365MB
> +	tristate "Realtek RTL8365MB switch subdriver"
> +	default y
> +	depends on NET_DSA_REALTEK
> +	depends on NET_DSA_REALTEK_SMI
> +	select NET_DSA_TAG_RTL8_4
> +	help
> +	  Select to enable support for Realtek RTL8365MB
> +
> +config NET_DSA_REALTEK_RTL8366RB
> +	tristate "Realtek RTL8366RB switch subdriver"
> +	default y
> +	depends on NET_DSA_REALTEK
> +	depends on NET_DSA_REALTEK_SMI
> +	select NET_DSA_TAG_RTL4_A
> +	help
> +	  Select to enable support for Realtek RTL8366RB
> diff --git a/drivers/net/dsa/realtek/Makefile b/drivers/net/dsa/realtek/Makefile
> index 323b921bfce0..8b5a4abcedd3 100644
> --- a/drivers/net/dsa/realtek/Makefile
> +++ b/drivers/net/dsa/realtek/Makefile
> @@ -1,3 +1,5 @@
>   # SPDX-License-Identifier: GPL-2.0
>   obj-$(CONFIG_NET_DSA_REALTEK_SMI) 	+= realtek-smi.o
> -realtek-smi-objs			:= realtek-smi-core.o rtl8366.o rtl8366rb.o rtl8365mb.o
> +obj-$(CONFIG_NET_DSA_REALTEK_RTL8366RB) += rtl8366.o

Maybe this should be CONFIG_NET_DSA_REALTEK_RTL8366 (no RB)? Not that I 
put my faith in Realtek's naming scheme...

> +rtl8366-objs 				:= rtl8366-core.o rtl8366rb.o
> +obj-$(CONFIG_NET_DSA_REALTEK_RTL8365MB) += rtl8365mb.o
> diff --git a/drivers/net/dsa/realtek/realtek-smi-core.c b/drivers/net/dsa/realtek/realtek-smi.c
> similarity index 96%
> rename from drivers/net/dsa/realtek/realtek-smi-core.c
> rename to drivers/net/dsa/realtek/realtek-smi.c
> index 2c78eb5c0bdc..11447096c8dc 100644
> --- a/drivers/net/dsa/realtek/realtek-smi-core.c
> +++ b/drivers/net/dsa/realtek/realtek-smi.c
> @@ -297,7 +297,6 @@ int realtek_smi_write_reg_noack(struct realtek_priv *priv, u32 addr,
>   {
>   	return realtek_smi_write_reg(priv, addr, data, false);
>   }
> -EXPORT_SYMBOL_GPL(realtek_smi_write_reg_noack);
>   
>   /* Regmap accessors */
>   
> @@ -342,8 +341,9 @@ static int realtek_smi_mdio_write(struct mii_bus *bus, int addr, int regnum,
>   	return priv->ops->phy_write(priv, addr, regnum, val);
>   }
>   
> -int realtek_smi_setup_mdio(struct realtek_priv *priv)
> +int realtek_smi_setup_mdio(struct dsa_switch *ds)
>   {
> +	struct realtek_priv *priv =  (struct realtek_priv *)ds->priv;
>   	struct device_node *mdio_np;
>   	int ret;
>   
> @@ -363,10 +363,10 @@ int realtek_smi_setup_mdio(struct realtek_priv *priv)
>   	priv->slave_mii_bus->read = realtek_smi_mdio_read;
>   	priv->slave_mii_bus->write = realtek_smi_mdio_write;
>   	snprintf(priv->slave_mii_bus->id, MII_BUS_ID_SIZE, "SMI-%d",
> -		 priv->ds->index);
> +		 ds->index);
>   	priv->slave_mii_bus->dev.of_node = mdio_np;
>   	priv->slave_mii_bus->parent = priv->dev;
> -	priv->ds->slave_mii_bus = priv->slave_mii_bus;
> +	ds->slave_mii_bus = priv->slave_mii_bus;
>   
>   	ret = devm_of_mdiobus_register(priv->dev, priv->slave_mii_bus, mdio_np);
>   	if (ret) {
> @@ -413,6 +413,9 @@ static int realtek_smi_probe(struct platform_device *pdev)
>   	priv->cmd_write = var->cmd_write;
>   	priv->ops = var->ops;
>   
> +	priv->setup_interface=realtek_smi_setup_mdio;
> +	priv->write_reg_noack=realtek_smi_write_reg_noack;

Formatting: a = b, not a=b.

> +
>   	dev_set_drvdata(dev, priv);
>   	spin_lock_init(&priv->lock);
>   
> @@ -492,19 +495,23 @@ static void realtek_smi_shutdown(struct platform_device *pdev)
>   }
>   
>   static const struct of_device_id realtek_smi_of_match[] = {
> +#if IS_ENABLED(CONFIG_NET_DSA_REALTEK_RTL8366RB)
>   	{
>   		.compatible = "realtek,rtl8366rb",
>   		.data = &rtl8366rb_variant,
>   	},
> +#endif
>   	{
>   		/* FIXME: add support for RTL8366S and more */
>   		.compatible = "realtek,rtl8366s",
>   		.data = NULL,
>   	},
> +#if IS_ENABLED(CONFIG_NET_DSA_REALTEK_RTL8365MB)
>   	{
>   		.compatible = "realtek,rtl8365mb",
>   		.data = &rtl8365mb_variant,
>   	},
> +#endif
>   	{ /* sentinel */ },
>   };
>   MODULE_DEVICE_TABLE(of, realtek_smi_of_match);
> diff --git a/drivers/net/dsa/realtek/rtl8365mb.c b/drivers/net/dsa/realtek/rtl8365mb.c
> index f562a6efb574..d6054f63f204 100644
> --- a/drivers/net/dsa/realtek/rtl8365mb.c
> +++ b/drivers/net/dsa/realtek/rtl8365mb.c
> @@ -1987,3 +1987,5 @@ const struct realtek_variant rtl8365mb_variant = {
>   	.chip_data_sz = sizeof(struct rtl8365mb),
>   };
>   EXPORT_SYMBOL_GPL(rtl8365mb_variant);
> +
> +MODULE_LICENSE("GPL");

You could also add MODULE_DESCRIPTION/MODULE_AUTHORs to these subdrivers 
now that they are free from the core.

> diff --git a/drivers/net/dsa/realtek/rtl8366.c b/drivers/net/dsa/realtek/rtl8366-core.c
> similarity index 100%
> rename from drivers/net/dsa/realtek/rtl8366.c
> rename to drivers/net/dsa/realtek/rtl8366-core.c
> diff --git a/drivers/net/dsa/realtek/rtl8366rb.c b/drivers/net/dsa/realtek/rtl8366rb.c
> index b1635c20276b..31f1a949c8e7 100644
> --- a/drivers/net/dsa/realtek/rtl8366rb.c
> +++ b/drivers/net/dsa/realtek/rtl8366rb.c
> @@ -1812,3 +1812,5 @@ const struct realtek_variant rtl8366rb_variant = {
>   	.chip_data_sz = sizeof(struct rtl8366rb),
>   };
>   EXPORT_SYMBOL_GPL(rtl8366rb_variant);
> +
> +MODULE_LICENSE("GPL");


  reply	other threads:[~2021-12-16 23:30 UTC|newest]

Thread overview: 94+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-16 20:13 [PATCH net-next 00/13] net: dsa: realtek: MDIO interface and RTL8367S luizluca
2021-12-16 20:13 ` [PATCH net-next 01/13] dt-bindings: net: dsa: realtek-smi: remove unsupported switches luizluca
2021-12-16 23:20   ` Alvin Šipraga
2021-12-18  2:41   ` Linus Walleij
2021-12-18  6:12     ` Luiz Angelo Daros de Luca
2021-12-19 22:27       ` Linus Walleij
2021-12-16 20:13 ` [PATCH net-next 02/13] net: dsa: realtek-smi: move to subdirectory luizluca
2021-12-16 23:21   ` Alvin Šipraga
2021-12-18  2:41   ` Linus Walleij
2021-12-16 20:13 ` [PATCH net-next 03/13] net: dsa: realtek: rename realtek_smi to realtek_priv luizluca
2021-12-16 23:22   ` Alvin Šipraga
2021-12-17  6:21     ` Luiz Angelo Daros de Luca
2021-12-18  2:45       ` Linus Walleij
2021-12-18  6:15         ` Luiz Angelo Daros de Luca
2021-12-17  9:21     ` Andrew Lunn
2021-12-16 20:13 ` [PATCH net-next 04/13] net: dsa: realtek: convert subdrivers into modules luizluca
2021-12-16 23:29   ` Alvin Šipraga [this message]
2021-12-17  6:50     ` Luiz Angelo Daros de Luca
2021-12-17  2:31   ` kernel test robot
2021-12-17  2:31     ` kernel test robot
2021-12-16 20:13 ` [PATCH net-next 05/13] net: dsa: realtek: use phy_read in ds->ops luizluca
2021-12-18  2:50   ` Linus Walleij
2021-12-18  6:24     ` Luiz Angelo Daros de Luca
2021-12-16 20:13 ` [PATCH net-next 06/13] net: dsa: rtl8365mb: move rtl8365mb.c to rtl8367c.c luizluca
2021-12-19 22:29   ` Linus Walleij
2021-12-19 23:21     ` Alvin Šipraga
2021-12-16 20:13 ` [PATCH net-next 07/13] net: dsa: rtl8365mb: rename rtl8365mb to rtl8367c luizluca
2021-12-16 23:41   ` Alvin Šipraga
2021-12-17  7:24     ` Luiz Angelo Daros de Luca
2021-12-17 12:15       ` Alvin Šipraga
2021-12-17 22:50         ` Arınç ÜNAL
2021-12-18  6:08         ` Luiz Angelo Daros de Luca
2021-12-17 10:57     ` Arınç ÜNAL
2021-12-16 20:13 ` [PATCH net-next 08/13] net: dsa: realtek: add new mdio interface for drivers luizluca
2021-12-17  0:11   ` Alvin Šipraga
2021-12-17  3:33   ` kernel test robot
2021-12-17  3:33     ` kernel test robot
2021-12-18  2:54   ` Linus Walleij
2021-12-16 20:13 ` [PATCH net-next 09/13] dt-bindings: net: dsa: realtek-mdio: document new interface luizluca
2021-12-18  2:57   ` Linus Walleij
2021-12-18  6:26     ` Luiz Angelo Daros de Luca
2021-12-16 20:13 ` [PATCH net-next 10/13] net: dsa: realtek: rtl8367c: rename extport to extint, add "realtek,ext-int" luizluca
2021-12-16 20:13 ` [PATCH net-next 11/13] net: dsa: realtek: rtl8367c: use GENMASK(n-1,0) instead of BIT(n)-1 luizluca
2021-12-18  2:59   ` Linus Walleij
2021-12-19 20:06   ` Florian Fainelli
2021-12-19 20:28     ` Luiz Angelo Daros de Luca
2021-12-16 20:13 ` [PATCH net-next 12/13] net: dsa: realtek: rtl8367c: use DSA CPU port luizluca
2021-12-16 20:13 ` [PATCH net-next 13/13] net: dsa: realtek: rtl8367c: add RTL8367S support luizluca
2021-12-16 22:30 ` [PATCH net-next 00/13] net: dsa: realtek: MDIO interface and RTL8367S Arınç ÜNAL
2021-12-17  0:25 ` Jakub Kicinski
2021-12-17  8:53   ` Luiz Angelo Daros de Luca
2021-12-17  9:26     ` Andrew Lunn
2021-12-17 10:19       ` Luiz Angelo Daros de Luca
2021-12-18  8:14 ` Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 01/13] dt-bindings: net: dsa: realtek-smi: mark unsupported switches Luiz Angelo Daros de Luca
2021-12-19 19:46     ` Linus Walleij
2021-12-18  8:14   ` [PATCH net-next v2 02/13] net: dsa: realtek-smi: move to subdirectory Luiz Angelo Daros de Luca
2021-12-19 21:43     ` Alvin Šipraga
2021-12-18  8:14   ` [PATCH net-next v2 03/13] net: dsa: realtek: rename realtek_smi to realtek_priv Luiz Angelo Daros de Luca
2021-12-19 22:24     ` Linus Walleij
2021-12-18  8:14   ` [PATCH net-next v2 04/13] net: dsa: realtek: remove direct calls to realtek-smi Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 05/13] net: dsa: realtek: convert subdrivers into modules Luiz Angelo Daros de Luca
2021-12-19 22:25     ` Linus Walleij
2021-12-18  8:14   ` [PATCH net-next v2 06/13] net: dsa: realtek: use phy_read in ds->ops Luiz Angelo Daros de Luca
2021-12-19 19:58     ` Florian Fainelli
2021-12-30 19:44       ` Luiz Angelo Daros de Luca
2021-12-30 20:00         ` Andrew Lunn
2021-12-31  2:30           ` Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 07/13] net: dsa: realtek: add new mdio interface for drivers Luiz Angelo Daros de Luca
2021-12-19 21:17     ` Alvin Šipraga
2021-12-19 21:44       ` Andrew Lunn
2021-12-19 22:32       ` Linus Walleij
2021-12-28  8:21       ` Luiz Angelo Daros de Luca
2021-12-28  9:57         ` Andrew Lunn
2021-12-31  3:10       ` Luiz Angelo Daros de Luca
2021-12-20 14:49     ` kernel test robot
2021-12-20 14:49       ` kernel test robot
2021-12-18  8:14   ` [PATCH net-next v2 08/13] dt-bindings: net: dsa: realtek-mdio: document new interface Luiz Angelo Daros de Luca
2021-12-19 19:57     ` Florian Fainelli
2021-12-19 21:53     ` Arınç ÜNAL
2021-12-20  7:50       ` Arınç ÜNAL
2021-12-18  8:14   ` [PATCH net-next v2 09/13] net: dsa: realtek: rtl8365mb: rename extport to extint, add "realtek,ext-int" Luiz Angelo Daros de Luca
2021-12-19 22:45     ` Alvin Šipraga
2021-12-18  8:14   ` [PATCH net-next v2 10/13] net: dsa: realtek: rtl8365mb: use GENMASK(n-1,0) instead of BIT(n)-1 Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 11/13] net: dsa: realtek: rtl8365mb: use DSA CPU port Luiz Angelo Daros de Luca
2021-12-19 22:19     ` Vladimir Oltean
2021-12-19 23:19       ` Alvin Šipraga
2021-12-28  8:48         ` Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 12/13] net: dsa: realtek: rtl8365mb: add RTL8367S support Luiz Angelo Daros de Luca
2021-12-19 21:43     ` Alvin Šipraga
2021-12-31  0:18       ` Luiz Angelo Daros de Luca
2021-12-18  8:14   ` [PATCH net-next v2 13/13] dt-bindings: net: dsa: realtek-{smi,mdio}: add rtl8367s Luiz Angelo Daros de Luca
2021-12-18  8:19   ` net: dsa: realtek: MDIO interface and RTL8367S Luiz Angelo Daros de Luca
2021-12-19 23:28   ` Alvin Šipraga

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=04fab19f-36c6-4db0-e0f2-6f69f3a190ec@bang-olufsen.dk \
    --to=alsi@bang-olufsen.dk \
    --cc=andrew@lunn.ch \
    --cc=arinc.unal@arinc9.com \
    --cc=f.fainelli@gmail.com \
    --cc=linus.walleij@linaro.org \
    --cc=luizluca@gmail.com \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.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.