From patchwork Sun Nov 27 15:25:17 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Rini X-Patchwork-Id: 1709400 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=konsulko.com header.i=@konsulko.com header.a=rsa-sha256 header.s=google header.b=L3RpKYBh; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384)) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4NKswX68pTz23mg for ; Mon, 28 Nov 2022 02:29:48 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id EB3DF8514A; Sun, 27 Nov 2022 16:26:38 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=konsulko.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=konsulko.com header.i=@konsulko.com header.b="L3RpKYBh"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id B695B84F27; Sun, 27 Nov 2022 16:26:06 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 Received: from mail-ej1-x62e.google.com (mail-ej1-x62e.google.com [IPv6:2a00:1450:4864:20::62e]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 6086284F27 for ; Sun, 27 Nov 2022 16:26:03 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=konsulko.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=trini@konsulko.com Received: by mail-ej1-x62e.google.com with SMTP id n20so20435514ejh.0 for ; Sun, 27 Nov 2022 07:26:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=konsulko.com; s=google; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=+Vvp5AGKe0B/0cUG8n6a8C01yUf/ys5YAY44ha2kDi0=; b=L3RpKYBhTabCkpTyGT8fDtxm1HZI5a/2Xla2NWTI6hPFG586TQXMT/keRPR4K6LREi 6Th35SW9sOWDUdu2vpZ1LnupTrDXcyvIXytZMmqrdVHLydXFg7aw6KcpfaVnGJByHc8X F5ceCPt3iZm3/SWcCYB5/sMBCaiHZwIafGjLA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+Vvp5AGKe0B/0cUG8n6a8C01yUf/ys5YAY44ha2kDi0=; b=xA6ulPtOmZLcE00aJwkhSD3pafSOmyIuyympdV6qwCiAOuCxdDzjzu48jjn2BmzQuy acpOpfhU8dFZS4KvrC9zunEtL6Jz5r6a/O8tJMXdRHkdcoD4B1FuWzKHL7twIxp/NLIj c+0d5QEGeBM2/yxfyReLyLf82+AL36dv1euICfEb9GUCd9R70L1/VY4ARVFQRvZWLqTH EWfDUhTpm6hSuQUB/ZOSrn7ViDfQYhmdkMfnzTaAiMZDQg3WBIEueXn845T7EJnfV1jP KCtAJldy8IzyPdyCmGrt8zzSHe/kWEugNuUA6YTozoMu4cIYm4dy6ySocZMLXYPnvnuj /2xw== X-Gm-Message-State: ANoB5pl8UCGnFceklhPQZ2rJrYunwWYVNMm0++orWHGrN5CVHmrLYIsH i3eaZZNOiTuNovccnnzN4OxWHUARYCj+dA== X-Google-Smtp-Source: AA0mqf498+OL/izdeGUjotOJY8W/aUHBuhlCXdZGAVzYxf5uwqN5TkDN05wRKjVwPPmPbR4gbQAytw== X-Received: by 2002:a17:906:2404:b0:7ad:d411:30af with SMTP id z4-20020a170906240400b007add41130afmr40131488eja.636.1669562762852; Sun, 27 Nov 2022 07:26:02 -0800 (PST) Received: from bill-the-cat.lan (2603-6081-7b00-6400-dc2c-1c0a-ea3e-04dc.res6.spectrum.com. [2603:6081:7b00:6400:dc2c:1c0a:ea3e:4dc]) by smtp.gmail.com with ESMTPSA id tb6-20020a1709078b8600b007b47749838asm3853036ejc.45.2022.11.27.07.26.02 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 27 Nov 2022 07:26:02 -0800 (PST) From: Tom Rini To: u-boot@lists.denx.de Subject: [PATCH 22/41] net: mvgbe: Remove non-DM_ETH code Date: Sun, 27 Nov 2022 10:25:17 -0500 Message-Id: <20221127152536.1556469-22-trini@konsulko.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221127152536.1556469-1-trini@konsulko.com> References: <20221119234545.404563-38-trini@konsulko.com> <20221127152536.1556469-1-trini@konsulko.com> MIME-Version: 1.0 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.6 at phobos.denx.de X-Virus-Status: Clean As DM_ETH is required for all network drivers, it's now safe to remove the non-DM_ETH support code. Signed-off-by: Tom Rini --- drivers/net/mvgbe.c | 214 +------------------------------------------- drivers/net/mvgbe.h | 8 -- 2 files changed, 2 insertions(+), 220 deletions(-) diff --git a/drivers/net/mvgbe.c b/drivers/net/mvgbe.c index a77c05743262..58363fce0570 100644 --- a/drivers/net/mvgbe.c +++ b/drivers/net/mvgbe.c @@ -132,12 +132,7 @@ static int __mvgbe_mdio_read(struct mvgbe_device *dmvgbe, int phy_adr, static int smi_reg_read(struct mii_dev *bus, int phy_adr, int devad, int reg_ofs) { -#ifdef CONFIG_DM_ETH struct mvgbe_device *dmvgbe = bus->priv; -#else - struct eth_device *dev = eth_get_dev_by_name(bus->name); - struct mvgbe_device *dmvgbe = to_mvgbe(dev); -#endif return __mvgbe_mdio_read(dmvgbe, phy_adr, devad, reg_ofs); } @@ -189,12 +184,7 @@ static int __mvgbe_mdio_write(struct mvgbe_device *dmvgbe, int phy_adr, static int smi_reg_write(struct mii_dev *bus, int phy_adr, int devad, int reg_ofs, u16 data) { -#ifdef CONFIG_DM_ETH struct mvgbe_device *dmvgbe = bus->priv; -#else - struct eth_device *dev = eth_get_dev_by_name(bus->name); - struct mvgbe_device *dmvgbe = to_mvgbe(dev); -#endif return __mvgbe_mdio_write(dmvgbe, phy_adr, devad, reg_ofs, data); } @@ -432,12 +422,6 @@ static int __mvgbe_init(struct mvgbe_device *dmvgbe, u8 *enetaddr, const char *name) { struct mvgbe_registers *regs = dmvgbe->regs; -#if (defined(CONFIG_MII) || defined(CONFIG_CMD_MII)) && \ - !defined(CONFIG_PHYLIB) && \ - !defined(CONFIG_DM_ETH) && \ - defined(CONFIG_SYS_FAULT_ECHO_LINK_DOWN) - int i; -#endif /* setup RX rings */ mvgbe_init_rx_desc_ring(dmvgbe); @@ -486,37 +470,9 @@ static int __mvgbe_init(struct mvgbe_device *dmvgbe, u8 *enetaddr, /* Enable port Rx. */ MVGBE_REG_WR(regs->rqc, (1 << RXUQ)); -#if (defined(CONFIG_MII) || defined(CONFIG_CMD_MII)) && \ - !defined(CONFIG_PHYLIB) && \ - !defined(CONFIG_DM_ETH) && \ - defined(CONFIG_SYS_FAULT_ECHO_LINK_DOWN) - /* Wait up to 5s for the link status */ - for (i = 0; i < 5; i++) { - u16 phyadr; - - miiphy_read(name, MV_PHY_ADR_REQUEST, - MV_PHY_ADR_REQUEST, &phyadr); - /* Return if we get link up */ - if (miiphy_link(name, phyadr)) - return 0; - udelay(1000000); - } - - printf("No link on %s\n", name); - return -1; -#endif return 0; } -#ifndef CONFIG_DM_ETH -static int mvgbe_init(struct eth_device *dev) -{ - struct mvgbe_device *dmvgbe = to_mvgbe(dev); - - return __mvgbe_init(dmvgbe, dmvgbe->dev.enetaddr, dmvgbe->dev.name); -} -#endif - static void __mvgbe_halt(struct mvgbe_device *dmvgbe) { struct mvgbe_registers *regs = dmvgbe->regs; @@ -542,18 +498,6 @@ static void __mvgbe_halt(struct mvgbe_device *dmvgbe) MVGBE_REG_WR(regs->peim, 0); } -#ifndef CONFIG_DM_ETH -static int mvgbe_halt(struct eth_device *dev) -{ - struct mvgbe_device *dmvgbe = to_mvgbe(dev); - - __mvgbe_halt(dmvgbe); - - return 0; -} -#endif - -#ifdef CONFIG_DM_ETH static int mvgbe_write_hwaddr(struct udevice *dev) { struct eth_pdata *pdata = dev_get_plat(dev); @@ -562,16 +506,6 @@ static int mvgbe_write_hwaddr(struct udevice *dev) return 0; } -#else -static int mvgbe_write_hwaddr(struct eth_device *dev) -{ - struct mvgbe_device *dmvgbe = to_mvgbe(dev); - - /* Programs net device MAC address after initialization */ - port_uc_addr_set(dmvgbe, dmvgbe->dev.enetaddr); - return 0; -} -#endif static int __mvgbe_send(struct mvgbe_device *dmvgbe, void *dataptr, int datasize) @@ -628,15 +562,6 @@ static int __mvgbe_send(struct mvgbe_device *dmvgbe, void *dataptr, return 0; } -#ifndef CONFIG_DM_ETH -static int mvgbe_send(struct eth_device *dev, void *dataptr, int datasize) -{ - struct mvgbe_device *dmvgbe = to_mvgbe(dev); - - return __mvgbe_send(dmvgbe, dataptr, datasize); -} -#endif - static int __mvgbe_recv(struct mvgbe_device *dmvgbe, uchar **packetp) { struct mvgbe_rxdesc *p_rxdesc_curr = dmvgbe->p_rxdesc_curr; @@ -710,35 +635,11 @@ static int __mvgbe_recv(struct mvgbe_device *dmvgbe, uchar **packetp) return rx_bytes; } -#ifndef CONFIG_DM_ETH -static int mvgbe_recv(struct eth_device *dev) -{ - struct mvgbe_device *dmvgbe = to_mvgbe(dev); - uchar *packet; - int ret; - - ret = __mvgbe_recv(dmvgbe, &packet); - if (ret < 0) - return ret; - - net_process_received_packet(packet, ret); - - return 0; -} -#endif - -#if defined(CONFIG_PHYLIB) || defined(CONFIG_DM_ETH) -#if defined(CONFIG_DM_ETH) +#if defined(CONFIG_PHYLIB) static struct phy_device *__mvgbe_phy_init(struct udevice *dev, struct mii_dev *bus, phy_interface_t phy_interface, int phyid) -#else -static struct phy_device *__mvgbe_phy_init(struct eth_device *dev, - struct mii_dev *bus, - phy_interface_t phy_interface, - int phyid) -#endif { struct phy_device *phydev; @@ -760,38 +661,7 @@ static struct phy_device *__mvgbe_phy_init(struct eth_device *dev, return phydev; } -#endif /* CONFIG_PHYLIB || CONFIG_DM_ETH */ - -#if defined(CONFIG_PHYLIB) && !defined(CONFIG_DM_ETH) -int mvgbe_phylib_init(struct eth_device *dev, int phyid) -{ - struct mii_dev *bus; - struct phy_device *phydev; - int ret; - - bus = mdio_alloc(); - if (!bus) { - printf("mdio_alloc failed\n"); - return -ENOMEM; - } - bus->read = smi_reg_read; - bus->write = smi_reg_write; - strcpy(bus->name, dev->name); - - ret = mdio_register(bus); - if (ret) { - printf("mdio_register failed\n"); - free(bus); - return -ENOMEM; - } - - phydev = __mvgbe_phy_init(dev, bus, PHY_INTERFACE_MODE_RGMII, phyid); - if (!phydev) - return -ENODEV; - - return 0; -} -#endif +#endif /* CONFIG_PHYLIB */ static int mvgbe_alloc_buffers(struct mvgbe_device *dmvgbe) { @@ -825,85 +695,6 @@ error1: return -ENOMEM; } -#ifndef CONFIG_DM_ETH -int mvgbe_initialize(struct bd_info *bis) -{ - struct mvgbe_device *dmvgbe; - struct eth_device *dev; - int devnum; - int ret; - u8 used_ports[MAX_MVGBE_DEVS] = CONFIG_MVGBE_PORTS; - - for (devnum = 0; devnum < MAX_MVGBE_DEVS; devnum++) { - /*skip if port is configured not to use */ - if (used_ports[devnum] == 0) - continue; - - dmvgbe = malloc(sizeof(struct mvgbe_device)); - if (!dmvgbe) - return -ENOMEM; - - memset(dmvgbe, 0, sizeof(struct mvgbe_device)); - ret = mvgbe_alloc_buffers(dmvgbe); - if (ret) { - printf("Err.. %s Failed to allocate memory\n", - __func__); - free(dmvgbe); - return ret; - } - - dev = &dmvgbe->dev; - - /* must be less than sizeof(dev->name) */ - sprintf(dev->name, "egiga%d", devnum); - - switch (devnum) { - case 0: - dmvgbe->regs = (void *)MVGBE0_BASE; - break; -#if defined(MVGBE1_BASE) - case 1: - dmvgbe->regs = (void *)MVGBE1_BASE; - break; -#endif - default: /* this should never happen */ - printf("Err..(%s) Invalid device number %d\n", - __func__, devnum); - return -1; - } - - dev->init = (void *)mvgbe_init; - dev->halt = (void *)mvgbe_halt; - dev->send = (void *)mvgbe_send; - dev->recv = (void *)mvgbe_recv; - dev->write_hwaddr = (void *)mvgbe_write_hwaddr; - - eth_register(dev); - -#if defined(CONFIG_PHYLIB) - mvgbe_phylib_init(dev, PHY_BASE_ADR + devnum); -#elif defined(CONFIG_MII) || defined(CONFIG_CMD_MII) - int retval; - struct mii_dev *mdiodev = mdio_alloc(); - if (!mdiodev) - return -ENOMEM; - strlcpy(mdiodev->name, dev->name, MDIO_NAME_LEN); - mdiodev->read = smi_reg_read; - mdiodev->write = smi_reg_write; - - retval = mdio_register(mdiodev); - if (retval < 0) - return retval; - /* Set phy address of the port */ - miiphy_write(dev->name, MV_PHY_ADR_REQUEST, - MV_PHY_ADR_REQUEST, PHY_BASE_ADR + devnum); -#endif - } - return 0; -} -#endif - -#ifdef CONFIG_DM_ETH static int mvgbe_port_is_fixed_link(struct mvgbe_device *dmvgbe) { return dmvgbe->phyaddr > PHY_MAX_ADDR; @@ -1046,4 +837,3 @@ U_BOOT_DRIVER(mvgbe) = { .priv_auto = sizeof(struct mvgbe_device), .plat_auto = sizeof(struct eth_pdata), }; -#endif /* CONFIG_DM_ETH */ diff --git a/drivers/net/mvgbe.h b/drivers/net/mvgbe.h index 44541c0a85e3..e3f5ac06399d 100644 --- a/drivers/net/mvgbe.h +++ b/drivers/net/mvgbe.h @@ -30,9 +30,6 @@ #define RXUQ 0 /* Used Rx queue */ #define TXUQ 0 /* Used Rx queue */ -#ifndef CONFIG_DM_ETH -#define to_mvgbe(_d) container_of(_d, struct mvgbe_device, dev) -#endif #define MVGBE_REG_WR(adr, val) writel(val, &adr) #define MVGBE_REG_RD(adr) readl(&adr) #define MVGBE_REG_BITS_RESET(adr, val) writel(readl(&adr) & ~(val), &adr) @@ -481,9 +478,6 @@ struct mvgbe_txdesc { /* port device data struct */ struct mvgbe_device { -#ifndef CONFIG_DM_ETH - struct eth_device dev; -#endif struct mvgbe_registers *regs; struct mvgbe_txdesc *p_txdesc; struct mvgbe_rxdesc *p_rxdesc; @@ -491,7 +485,6 @@ struct mvgbe_device { u8 *p_rxbuf; u8 *p_aligned_txbuf; -#ifdef CONFIG_DM_ETH phy_interface_t phy_interface; unsigned int link; unsigned int duplex; @@ -501,7 +494,6 @@ struct mvgbe_device { int phyaddr; struct phy_device *phydev; struct mii_dev *bus; -#endif }; #endif /* __MVGBE_H__ */