* [PATCH 2/4] net: designware: eqos: stm32: remove duplicate error message
2022-08-09 6:24 [PATCH 1/4] net: designware: rework Kconfig text and menu structure Ahmad Fatoum
@ 2022-08-09 6:24 ` Ahmad Fatoum
2022-08-09 6:24 ` [PATCH 3/4] net: designware: eqos: replace double accounting of interface up status Ahmad Fatoum
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Ahmad Fatoum @ 2022-08-09 6:24 UTC (permalink / raw)
To: barebox; +Cc: Ahmad Fatoum
clk_bulk_enable will already print an error message, so printing one
more is unnecessary.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
drivers/net/designware_stm32.c | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/drivers/net/designware_stm32.c b/drivers/net/designware_stm32.c
index 0a5ced98f522..43f2d0987c8f 100644
--- a/drivers/net/designware_stm32.c
+++ b/drivers/net/designware_stm32.c
@@ -163,14 +163,7 @@ static int eqos_init_stm32(struct device_d *dev, struct eqos *eqos)
dev_dbg(dev, "No phy clock provided. Continuing without.\n");
}
- ret = clk_bulk_enable(priv->num_clks, priv->clks);
- if (ret < 0) {
- eqos_err(eqos, "clk_bulk_enable() failed: %s\n",
- strerror(-ret));
- return ret;
- }
-
- return 0;
+ return clk_bulk_enable(priv->num_clks, priv->clks);
}
static struct eqos_ops stm32_ops = {
--
2.30.2
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 3/4] net: designware: eqos: replace double accounting of interface up status
2022-08-09 6:24 [PATCH 1/4] net: designware: rework Kconfig text and menu structure Ahmad Fatoum
2022-08-09 6:24 ` [PATCH 2/4] net: designware: eqos: stm32: remove duplicate error message Ahmad Fatoum
@ 2022-08-09 6:24 ` Ahmad Fatoum
2022-08-09 6:24 ` [PATCH 4/4] net: designware: eqos: remove undefined eqos_reset prototype Ahmad Fatoum
2022-08-09 9:32 ` [PATCH 1/4] net: designware: rework Kconfig text and menu structure Sascha Hauer
3 siblings, 0 replies; 5+ messages in thread
From: Ahmad Fatoum @ 2022-08-09 6:24 UTC (permalink / raw)
To: barebox; +Cc: Ahmad Fatoum
Network core already keeps track of whether ethernet interface is up, so
no need to replicate holding this state.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
drivers/net/designware_eqos.c | 11 -----------
drivers/net/designware_eqos.h | 1 -
drivers/net/designware_tegra186.c | 2 +-
3 files changed, 1 insertion(+), 13 deletions(-)
diff --git a/drivers/net/designware_eqos.c b/drivers/net/designware_eqos.c
index 6b372e427492..79b997969755 100644
--- a/drivers/net/designware_eqos.c
+++ b/drivers/net/designware_eqos.c
@@ -623,10 +623,6 @@ static int eqos_start(struct eth_device *edev)
last_rx_desc = (ulong)&eqos->rx_descs[(EQOS_DESCRIPTORS_RX - 1)];
writel(last_rx_desc, &eqos->dma_regs->ch0_rxdesc_tail_pointer);
- barrier();
-
- eqos->started = true;
-
return 0;
}
@@ -635,13 +631,6 @@ static void eqos_stop(struct eth_device *edev)
struct eqos *eqos = edev->priv;
int i;
- if (!eqos->started)
- return;
-
- eqos->started = false;
-
- barrier();
-
/* Disable TX DMA */
clrbits_le32(&eqos->dma_regs->ch0_tx_control,
EQOS_DMA_CH0_TX_CONTROL_ST);
diff --git a/drivers/net/designware_eqos.h b/drivers/net/designware_eqos.h
index be7bead09e0e..69c6ac193f57 100644
--- a/drivers/net/designware_eqos.h
+++ b/drivers/net/designware_eqos.h
@@ -60,7 +60,6 @@ struct eqos {
const struct eqos_ops *ops;
void *priv;
- bool started;
};
struct device_d;
diff --git a/drivers/net/designware_tegra186.c b/drivers/net/designware_tegra186.c
index 0241b9ad16ff..0cbbdb46a442 100644
--- a/drivers/net/designware_tegra186.c
+++ b/drivers/net/designware_tegra186.c
@@ -195,7 +195,7 @@ static int eqos_set_ethaddr_tegra186(struct eth_device *edev, const unsigned cha
* ported to some system where the expectation above is true.
*/
- if (!eqos->started) {
+ if (!edev->active) {
memcpy(eqos->macaddr, mac, 6);
return 0;
}
--
2.30.2
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 4/4] net: designware: eqos: remove undefined eqos_reset prototype
2022-08-09 6:24 [PATCH 1/4] net: designware: rework Kconfig text and menu structure Ahmad Fatoum
2022-08-09 6:24 ` [PATCH 2/4] net: designware: eqos: stm32: remove duplicate error message Ahmad Fatoum
2022-08-09 6:24 ` [PATCH 3/4] net: designware: eqos: replace double accounting of interface up status Ahmad Fatoum
@ 2022-08-09 6:24 ` Ahmad Fatoum
2022-08-09 9:32 ` [PATCH 1/4] net: designware: rework Kconfig text and menu structure Sascha Hauer
3 siblings, 0 replies; 5+ messages in thread
From: Ahmad Fatoum @ 2022-08-09 6:24 UTC (permalink / raw)
To: barebox; +Cc: Ahmad Fatoum
This function is undefined, so drop its prototype.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
drivers/net/designware_eqos.h | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/net/designware_eqos.h b/drivers/net/designware_eqos.h
index 69c6ac193f57..1b6b0400e1f9 100644
--- a/drivers/net/designware_eqos.h
+++ b/drivers/net/designware_eqos.h
@@ -65,7 +65,6 @@ struct eqos {
struct device_d;
int eqos_probe(struct device_d *dev, const struct eqos_ops *ops, void *priv);
void eqos_remove(struct device_d *dev);
-int eqos_reset(struct eqos *priv);
int eqos_get_ethaddr(struct eth_device *edev, unsigned char *mac);
int eqos_set_ethaddr(struct eth_device *edev, const unsigned char *mac);
--
2.30.2
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/4] net: designware: rework Kconfig text and menu structure
2022-08-09 6:24 [PATCH 1/4] net: designware: rework Kconfig text and menu structure Ahmad Fatoum
` (2 preceding siblings ...)
2022-08-09 6:24 ` [PATCH 4/4] net: designware: eqos: remove undefined eqos_reset prototype Ahmad Fatoum
@ 2022-08-09 9:32 ` Sascha Hauer
3 siblings, 0 replies; 5+ messages in thread
From: Sascha Hauer @ 2022-08-09 9:32 UTC (permalink / raw)
To: Ahmad Fatoum; +Cc: barebox
On Tue, Aug 09, 2022 at 08:24:19AM +0200, Ahmad Fatoum wrote:
> Instead of depending on the common code being enabled, just select it if
> needed and reword the Kconfig text to fix some typos and to make
> configuration easier.
>
> Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
> ---
> drivers/net/Kconfig | 64 ++++++++++++++++++++++++---------------------
> 1 file changed, 34 insertions(+), 30 deletions(-)
Applied, thanks
Sascha
>
> diff --git a/drivers/net/Kconfig b/drivers/net/Kconfig
> index 803444cc44a4..341d02a1da5e 100644
> --- a/drivers/net/Kconfig
> +++ b/drivers/net/Kconfig
> @@ -55,71 +55,75 @@ config DRIVER_NET_DAVINCI_EMAC
> select PHYLIB
>
> config DRIVER_NET_DESIGNWARE
> - bool "Designware Universal MAC1000 ethernet platform support"
> + bool "Designware DWMAC1000 Ethernet driver support" if COMPILE_TEST
> depends on HAS_DMA
> select PHYLIB
> help
> - This option enables support for the Synopsys
> - Designware Core Univesal MAC 10M/100M/1G ethernet IP.
> -
> -if DRIVER_NET_DESIGNWARE
> + This option is selected by platform glue drivers that contain
> + a DWMAC1000-compatible Ethernet IP.
>
> config DRIVER_NET_DESIGNWARE_GENERIC
> - bool "Designware Universal MAC ethernet generic driver"
> + bool "Generic Synopsis Designware Ethernet driver"
> + select DRIVER_NET_DESIGNWARE
> + depends on HAS_DMA
> help
> - This option enables support for the Synopsys
> - Designware Core Univesal MAC 10M/100M/1G ethernet IP on SoCFPGA.
> + This option enables support for the generic Synopsys
> + Designware Core Universal MAC 10M/100M/1G binding. Supported
> + are 3.70a and 3.72. Most integrations additionally require
> + access to platform-specific registers, e.g. for clocking.
> + If you are on such a platform, use the platform specific
> + driver instead.
>
> config DRIVER_NET_DESIGNWARE_SOCFPGA
> - bool "Designware Universal MAC ethernet driver for SoCFPGA platforms"
> - depends on ARCH_SOCFPGA || COMPILE_TEST
> + bool "SOCFPGA Designware Ethernet driver"
> + depends on HAS_DMA && (ARCH_SOCFPGA || COMPILE_TEST)
> + select DRIVER_NET_DESIGNWARE
> select MFD_SYSCON
> select RESET_CONTROLLER
> help
> This option enables support for the Synopsys
> - Designware Core Univesal MAC 10M/100M/1G ethernet IP on SoCFPGA.
> + Designware Core Universal MAC 10M/100M/1G Ethernet IP on SoCFPGA.
>
> config DRIVER_NET_DESIGNWARE_STARFIVE
> - bool "Designware Universal MAC ethernet driver for StarFive platforms"
> - depends on SOC_STARFIVE || COMPILE_TEST
> + bool "StarFive Designware Ethernet driver"
> + depends on HAS_DMA && (SOC_STARFIVE || COMPILE_TEST)
> + select DRIVER_NET_DESIGNWARE
> select MFD_SYSCON
> help
> This option enables support for the Synopsys
> - Designware Core Univesal MAC 10M/100M/1G ethernet IP on StarFive.
> -
> -endif
> + Designware Core Universal MAC 10M/100M/1G Ethernet IP on StarFive.
>
> config DRIVER_NET_DESIGNWARE_EQOS
> - bool "Designware Designware Ethernet QoS support"
> - depends on HAS_DMA
> - depends on COMMON_CLK
> - depends on OFTREE
> + bool "Designware EQOS (GMAC4) Ethernet driver support" if COMPILE_TEST
> + depends on HAS_DMA && OFTREE
> select PHYLIB
> help
> This option enables support for the Synopsys
> Designware Ethernet Quality-of-Service (GMAC4).
>
> -if DRIVER_NET_DESIGNWARE_EQOS
> -
> config DRIVER_NET_DESIGNWARE_STM32
> - bool "Designware EQOS STM32 driver"
> + bool "STM32 Designware Ethernet driver"
> + depends on HAS_DMA && COMMON_CLK && OFTREE && (ARCH_STM32MP || COMPILE_TEST)
> + select DRIVER_NET_DESIGNWARE_EQOS
> select MFD_SYSCON
> help
> - This option enables support for the ethernet MAC on the STM32MP platforms.
> + This option enables support for the Ethernet MAC on the STM32MP platforms.
>
> config DRIVER_NET_DESIGNWARE_TEGRA186
> - bool "Designware Universal MAC ethernet driver for Tegra 186 platforms"
> + bool "Tegra 186/194 Designware Ethernet driver"
> + depends on HAS_DMA && COMMON_CLK && OFTREE && (ARCH_TEGRA || COMPILE_TEST)
> + select DRIVER_NET_DESIGNWARE_EQOS
> select RESET_CONTROLLER
> help
> - This option enables support for the ethernet MAC on the Tegra186 & 194.
> + This option enables support for the Ethernet MAC on the Tegra186 & 194.
>
> config DRIVER_NET_DESIGNWARE_ROCKCHIP
> - bool "Designware Universal MAC ethernet driver for Rockchip platforms"
> + bool "Rockchip Designware Ethernet driver"
> + select DRIVER_NET_DESIGNWARE_EQOS
> + depends on HAS_DMA && COMMON_CLK && OFTREE && (ARCH_ROCKCHIP || COMPILE_TEST)
> select MFD_SYSCON
> help
> - This option enables support for the ethernet MAC on different Rockchip SoCs
> -
> -endif
> + This option enables support for the Ethernet MAC on different Rockchip SoCs
>
> config DRIVER_NET_DM9K
> bool "Davicom dm9k[E|A|B] ethernet driver"
> --
> 2.30.2
>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 5+ messages in thread