From: Nikita Shubin via B4 Relay <devnull+nikita.shubin.maquefel.me@kernel.org> To: Hartley Sweeten <hsweeten@visionengravers.com>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com> Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>, Andrew Lunn <andrew@lunn.ch> Subject: [PATCH v6 18/40] net: cirrus: add DT support for Cirrus EP93xx Date: Tue, 12 Dec 2023 11:20:35 +0300 [thread overview] Message-ID: <20231212-ep93xx-v6-18-c307b8ac9aa8@maquefel.me> (raw) In-Reply-To: <20231212-ep93xx-v6-0-c307b8ac9aa8@maquefel.me> From: Nikita Shubin <nikita.shubin@maquefel.me> - add OF ID match table - get phy_id from the device tree, as part of mdio - copy_addr is now always used, as there is no SoC/board that aren't - dropped platform header Reviewed-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me> --- drivers/net/ethernet/cirrus/ep93xx_eth.c | 63 ++++++++++++++++---------------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/drivers/net/ethernet/cirrus/ep93xx_eth.c b/drivers/net/ethernet/cirrus/ep93xx_eth.c index 1c2a540db13d..be0b11014af7 100644 --- a/drivers/net/ethernet/cirrus/ep93xx_eth.c +++ b/drivers/net/ethernet/cirrus/ep93xx_eth.c @@ -16,13 +16,12 @@ #include <linux/ethtool.h> #include <linux/interrupt.h> #include <linux/moduleparam.h> +#include <linux/of.h> #include <linux/platform_device.h> #include <linux/delay.h> #include <linux/io.h> #include <linux/slab.h> -#include <linux/platform_data/eth-ep93xx.h> - #define DRV_MODULE_NAME "ep93xx-eth" #define RX_QUEUE_ENTRIES 64 @@ -738,25 +737,6 @@ static const struct net_device_ops ep93xx_netdev_ops = { .ndo_set_mac_address = eth_mac_addr, }; -static struct net_device *ep93xx_dev_alloc(struct ep93xx_eth_data *data) -{ - struct net_device *dev; - - dev = alloc_etherdev(sizeof(struct ep93xx_priv)); - if (dev == NULL) - return NULL; - - eth_hw_addr_set(dev, data->dev_addr); - - dev->ethtool_ops = &ep93xx_ethtool_ops; - dev->netdev_ops = &ep93xx_netdev_ops; - - dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; - - return dev; -} - - static void ep93xx_eth_remove(struct platform_device *pdev) { struct net_device *dev; @@ -786,27 +766,47 @@ static void ep93xx_eth_remove(struct platform_device *pdev) static int ep93xx_eth_probe(struct platform_device *pdev) { - struct ep93xx_eth_data *data; struct net_device *dev; struct ep93xx_priv *ep; struct resource *mem; + void __iomem *base_addr; + struct device_node *np; + u32 phy_id; int irq; int err; if (pdev == NULL) return -ENODEV; - data = dev_get_platdata(&pdev->dev); mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); irq = platform_get_irq(pdev, 0); if (!mem || irq < 0) return -ENXIO; - dev = ep93xx_dev_alloc(data); + base_addr = ioremap(mem->start, resource_size(mem)); + if (!base_addr) + return dev_err_probe(&pdev->dev, -EIO, "Failed to ioremap ethernet registers\n"); + + np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); + if (!np) + return dev_err_probe(&pdev->dev, -ENODEV, "Please provide \"phy-handle\"\n"); + + err = of_property_read_u32(np, "reg", &phy_id); + of_node_put(np); + if (err) + return dev_err_probe(&pdev->dev, -ENOENT, "Failed to locate \"phy_id\"\n"); + + dev = alloc_etherdev(sizeof(struct ep93xx_priv)); if (dev == NULL) { err = -ENOMEM; goto err_out; } + + eth_hw_addr_set(dev, base_addr + 0x50); + dev->ethtool_ops = &ep93xx_ethtool_ops; + dev->netdev_ops = &ep93xx_netdev_ops; + dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; + ep = netdev_priv(dev); ep->dev = dev; SET_NETDEV_DEV(dev, &pdev->dev); @@ -822,15 +822,10 @@ static int ep93xx_eth_probe(struct platform_device *pdev) goto err_out; } - ep->base_addr = ioremap(mem->start, resource_size(mem)); - if (ep->base_addr == NULL) { - dev_err(&pdev->dev, "Failed to ioremap ethernet registers\n"); - err = -EIO; - goto err_out; - } + ep->base_addr = base_addr; ep->irq = irq; - ep->mii.phy_id = data->phy_id; + ep->mii.phy_id = phy_id; ep->mii.phy_id_mask = 0x1f; ep->mii.reg_num_mask = 0x1f; ep->mii.dev = dev; @@ -857,12 +852,18 @@ static int ep93xx_eth_probe(struct platform_device *pdev) return err; } +static const struct of_device_id ep93xx_eth_of_ids[] = { + { .compatible = "cirrus,ep9301-eth" }, + { /* sentinel */ } +}; +MODULE_DEVICE_TABLE(of, ep93xx_eth_of_ids); static struct platform_driver ep93xx_eth_driver = { .probe = ep93xx_eth_probe, .remove_new = ep93xx_eth_remove, .driver = { .name = "ep93xx-eth", + .of_match_table = ep93xx_eth_of_ids, }, }; -- 2.41.0
WARNING: multiple messages have this Message-ID (diff)
From: Nikita Shubin <nikita.shubin@maquefel.me> To: Hartley Sweeten <hsweeten@visionengravers.com>, "David S. Miller" <davem@davemloft.net>, Eric Dumazet <edumazet@google.com>, Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com> Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>, Andrew Lunn <andrew@lunn.ch> Subject: [PATCH v6 18/40] net: cirrus: add DT support for Cirrus EP93xx Date: Tue, 12 Dec 2023 11:20:35 +0300 [thread overview] Message-ID: <20231212-ep93xx-v6-18-c307b8ac9aa8@maquefel.me> (raw) In-Reply-To: <20231212-ep93xx-v6-0-c307b8ac9aa8@maquefel.me> - add OF ID match table - get phy_id from the device tree, as part of mdio - copy_addr is now always used, as there is no SoC/board that aren't - dropped platform header Reviewed-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me> --- drivers/net/ethernet/cirrus/ep93xx_eth.c | 63 ++++++++++++++++---------------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/drivers/net/ethernet/cirrus/ep93xx_eth.c b/drivers/net/ethernet/cirrus/ep93xx_eth.c index 1c2a540db13d..be0b11014af7 100644 --- a/drivers/net/ethernet/cirrus/ep93xx_eth.c +++ b/drivers/net/ethernet/cirrus/ep93xx_eth.c @@ -16,13 +16,12 @@ #include <linux/ethtool.h> #include <linux/interrupt.h> #include <linux/moduleparam.h> +#include <linux/of.h> #include <linux/platform_device.h> #include <linux/delay.h> #include <linux/io.h> #include <linux/slab.h> -#include <linux/platform_data/eth-ep93xx.h> - #define DRV_MODULE_NAME "ep93xx-eth" #define RX_QUEUE_ENTRIES 64 @@ -738,25 +737,6 @@ static const struct net_device_ops ep93xx_netdev_ops = { .ndo_set_mac_address = eth_mac_addr, }; -static struct net_device *ep93xx_dev_alloc(struct ep93xx_eth_data *data) -{ - struct net_device *dev; - - dev = alloc_etherdev(sizeof(struct ep93xx_priv)); - if (dev == NULL) - return NULL; - - eth_hw_addr_set(dev, data->dev_addr); - - dev->ethtool_ops = &ep93xx_ethtool_ops; - dev->netdev_ops = &ep93xx_netdev_ops; - - dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; - - return dev; -} - - static void ep93xx_eth_remove(struct platform_device *pdev) { struct net_device *dev; @@ -786,27 +766,47 @@ static void ep93xx_eth_remove(struct platform_device *pdev) static int ep93xx_eth_probe(struct platform_device *pdev) { - struct ep93xx_eth_data *data; struct net_device *dev; struct ep93xx_priv *ep; struct resource *mem; + void __iomem *base_addr; + struct device_node *np; + u32 phy_id; int irq; int err; if (pdev == NULL) return -ENODEV; - data = dev_get_platdata(&pdev->dev); mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); irq = platform_get_irq(pdev, 0); if (!mem || irq < 0) return -ENXIO; - dev = ep93xx_dev_alloc(data); + base_addr = ioremap(mem->start, resource_size(mem)); + if (!base_addr) + return dev_err_probe(&pdev->dev, -EIO, "Failed to ioremap ethernet registers\n"); + + np = of_parse_phandle(pdev->dev.of_node, "phy-handle", 0); + if (!np) + return dev_err_probe(&pdev->dev, -ENODEV, "Please provide \"phy-handle\"\n"); + + err = of_property_read_u32(np, "reg", &phy_id); + of_node_put(np); + if (err) + return dev_err_probe(&pdev->dev, -ENOENT, "Failed to locate \"phy_id\"\n"); + + dev = alloc_etherdev(sizeof(struct ep93xx_priv)); if (dev == NULL) { err = -ENOMEM; goto err_out; } + + eth_hw_addr_set(dev, base_addr + 0x50); + dev->ethtool_ops = &ep93xx_ethtool_ops; + dev->netdev_ops = &ep93xx_netdev_ops; + dev->features |= NETIF_F_SG | NETIF_F_HW_CSUM; + ep = netdev_priv(dev); ep->dev = dev; SET_NETDEV_DEV(dev, &pdev->dev); @@ -822,15 +822,10 @@ static int ep93xx_eth_probe(struct platform_device *pdev) goto err_out; } - ep->base_addr = ioremap(mem->start, resource_size(mem)); - if (ep->base_addr == NULL) { - dev_err(&pdev->dev, "Failed to ioremap ethernet registers\n"); - err = -EIO; - goto err_out; - } + ep->base_addr = base_addr; ep->irq = irq; - ep->mii.phy_id = data->phy_id; + ep->mii.phy_id = phy_id; ep->mii.phy_id_mask = 0x1f; ep->mii.reg_num_mask = 0x1f; ep->mii.dev = dev; @@ -857,12 +852,18 @@ static int ep93xx_eth_probe(struct platform_device *pdev) return err; } +static const struct of_device_id ep93xx_eth_of_ids[] = { + { .compatible = "cirrus,ep9301-eth" }, + { /* sentinel */ } +}; +MODULE_DEVICE_TABLE(of, ep93xx_eth_of_ids); static struct platform_driver ep93xx_eth_driver = { .probe = ep93xx_eth_probe, .remove_new = ep93xx_eth_remove, .driver = { .name = "ep93xx-eth", + .of_match_table = ep93xx_eth_of_ids, }, }; -- 2.41.0
next prev parent reply other threads:[~2023-12-12 8:23 UTC|newest] Thread overview: 145+ messages / expand[flat|nested] mbox.gz Atom feed top 2023-12-12 8:20 [PATCH v6 00/40] ep93xx device tree conversion Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 01/40] ARM: ep93xx: Add terminator to gpiod_lookup_table Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-13 17:24 ` Andy Shevchenko 2023-12-13 17:24 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 02/40] gpio: ep93xx: split device in multiple Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 03/40] ARM: ep93xx: add regmap aux_dev Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:28 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 04/40] clk: ep93xx: add DT support for Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:42 ` Andy Shevchenko 2023-12-23 8:35 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 05/40] pinctrl: add a Cirrus ep93xx SoC pin controller Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:51 ` Andy Shevchenko 2023-12-23 8:55 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 06/40] power: reset: Add a driver for the ep93xx reset Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:54 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 07/40] dt-bindings: soc: Add Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 6:53 ` Krzysztof Kozlowski 2023-12-12 8:20 ` [PATCH v6 08/40] soc: Add SoC driver for Cirrus ep93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:37 ` Andy Shevchenko 2023-12-23 10:06 ` Nikita Shubin 2023-12-23 11:32 ` Arnd Bergmann 2023-12-12 8:20 ` [PATCH v6 09/40] dt-bindings: dma: Add Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 10/40] dma: cirrus: Convert to DT for " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:28 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 11/40] dt-bindings: watchdog: Add Cirrus EP93x Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 12/40] watchdog: ep93xx: add DT support for Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:56 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 13/40] dt-bindings: pwm: Add " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 14/40] pwm: ep93xx: add DT support for " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 17:56 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 15/40] dt-bindings: spi: Add " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 16/40] spi: ep93xx: add DT support for " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:13 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 17/40] dt-bindings: net: Add " Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay [this message] 2023-12-12 8:20 ` [PATCH v6 18/40] net: cirrus: add DT support for " Nikita Shubin 2023-12-13 18:39 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 19/40] dt-bindings: mtd: Add ts7200 nand-controller Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 20/40] mtd: rawnand: add support for ts72xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:30 ` Greg Kroah-Hartman 2023-12-12 8:30 ` Greg Kroah-Hartman 2023-12-12 8:35 ` Nikita Shubin 2023-12-12 8:35 ` Nikita Shubin 2023-12-12 14:05 ` Miquel Raynal 2023-12-12 14:05 ` Miquel Raynal 2023-12-15 10:16 ` Miquel Raynal 2023-12-15 10:16 ` Miquel Raynal 2023-12-15 12:11 ` Nikita Shubin 2023-12-15 12:11 ` Nikita Shubin 2023-12-15 12:27 ` Miquel Raynal 2023-12-15 12:27 ` Miquel Raynal 2023-12-12 8:20 ` [PATCH v6 21/40] dt-bindings: ata: Add Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 22/40] ata: pata_ep93xx: add device tree support Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:19 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 23/40] dt-bindings: input: Add Cirrus EP93xx keypad Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 24/40] input: keypad: ep93xx: add DT support for Cirrus EP93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-13 18:41 ` Andy Shevchenko 2023-12-13 18:41 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 25/40] dt-bindings: wdt: Add ts72xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 15:03 ` Guenter Roeck 2023-12-12 8:20 ` [PATCH v6 26/40] wdt: ts72xx: add DT support for ts72xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:10 ` Andy Shevchenko 2023-12-12 8:20 ` [PATCH v6 27/40] gpio: ep93xx: add DT support for gpio-ep93xx Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 28/40] ASoC: dt-bindings: ep93xx: Document DMA support Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 29/40] ASoC: dt-bindings: ep93xx: Document Audio Port support Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 30/40] ASoC: ep93xx: Drop legacy DMA support Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 31/40] ARM: dts: add Cirrus EP93XX SoC .dtsi Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 32/40] ARM: dts: ep93xx: add ts7250 board Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 33/40] ARM: dts: ep93xx: Add EDB9302 DT Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 34/40] ARM: ep93xx: DT for the Cirrus ep93xx SoC platforms Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 35/40] pwm: ep93xx: drop legacy pinctrl Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 36/40] ata: pata_ep93xx: remove legacy pinctrl use Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-13 18:16 ` Andy Shevchenko 2023-12-13 18:16 ` Andy Shevchenko 2023-12-13 18:33 ` Uwe Kleine-König 2023-12-13 18:33 ` Uwe Kleine-König 2023-12-13 18:48 ` Andy Shevchenko 2023-12-13 18:48 ` Andy Shevchenko 2023-12-14 10:26 ` Uwe Kleine-König 2023-12-14 10:26 ` Uwe Kleine-König 2023-12-12 8:20 ` [PATCH v6 37/40] ARM: ep93xx: delete all boardfiles Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 38/40] ARM: ep93xx: soc: drop defines Nikita Shubin 2023-12-12 8:20 ` Nikita Shubin via B4 Relay 2023-12-12 8:20 ` [PATCH v6 39/40] ASoC: cirrus: edb93xx: Delete driver Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-12 8:20 ` [PATCH v6 40/40] dma: cirrus: remove platform code Nikita Shubin via B4 Relay 2023-12-12 8:20 ` Nikita Shubin 2023-12-13 18:30 ` Andy Shevchenko 2023-12-23 9:49 ` Nikita Shubin 2023-12-12 11:53 ` [PATCH v6 00/40] ep93xx device tree conversion Uwe Kleine-König 2023-12-12 11:53 ` Uwe Kleine-König 2023-12-13 17:59 ` Andy Shevchenko 2023-12-13 17:59 ` Andy Shevchenko 2023-12-23 9:12 ` Nikita Shubin 2023-12-23 9:12 ` Nikita Shubin 2023-12-25 19:55 ` Andy Shevchenko 2023-12-25 19:55 ` Andy Shevchenko
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=20231212-ep93xx-v6-18-c307b8ac9aa8@maquefel.me \ --to=devnull+nikita.shubin.maquefel.me@kernel.org \ --cc=andrew@lunn.ch \ --cc=arnd@arndb.de \ --cc=davem@davemloft.net \ --cc=edumazet@google.com \ --cc=hsweeten@visionengravers.com \ --cc=kuba@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=netdev@vger.kernel.org \ --cc=nikita.shubin@maquefel.me \ --cc=pabeni@redhat.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: linkBe 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.