From: Hans de Goede Date: Thu, 23 Apr 2015 16:47:47 +0000 (+0200) Subject: sunxi: emac: Remove non driver-model code X-Git-Tag: v2015.07-rc1~6^2~7 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=d17e1577a203e486d8a15bfa015a6410d99079de;p=u-boot sunxi: emac: Remove non driver-model code All sunxi boards now use the driver-model, so remove the non driver-model code. Signed-off-by: Hans de Goede Reviewed-by: Simon Glass Acked-by: Ian Campbell --- diff --git a/arch/arm/cpu/armv7/sunxi/board.c b/arch/arm/cpu/armv7/sunxi/board.c index 732e5c83ed..6718ae2205 100644 --- a/arch/arm/cpu/armv7/sunxi/board.c +++ b/arch/arm/cpu/armv7/sunxi/board.c @@ -12,10 +12,6 @@ #include #include -#ifndef CONFIG_DM_ETH -#include -#endif -#include #include #ifdef CONFIG_SPL_BUILD #include @@ -221,14 +217,6 @@ int cpu_eth_init(bd_t *bis) mdelay(200); #endif -#if defined CONFIG_SUNXI_EMAC && !defined CONFIG_DM_ETH - rc = sunxi_emac_initialize(bis); - if (rc < 0) { - printf("sunxi: failed to initialize emac\n"); - return rc; - } -#endif - #ifdef CONFIG_SUNXI_GMAC rc = sunxi_gmac_initialize(bis); if (rc < 0) { diff --git a/drivers/net/sunxi_emac.c b/drivers/net/sunxi_emac.c index 306a022c2f..e939bf2108 100644 --- a/drivers/net/sunxi_emac.c +++ b/drivers/net/sunxi_emac.c @@ -513,74 +513,6 @@ static void sunxi_emac_board_setup(struct emac_eth_dev *priv) clrsetbits_le32(®s->mac_mcfg, 0xf << 2, 0xd << 2); } -#ifndef CONFIG_DM_ETH -static int sunxi_emac_eth_init(struct eth_device *dev, bd_t *bis) -{ - return _sunxi_emac_eth_init(dev->priv, dev->enetaddr); -} - -static void sunxi_emac_eth_halt(struct eth_device *dev) -{ - /* Nothing to do here */ -} - -static int sunxi_emac_eth_recv(struct eth_device *dev) -{ - int rx_len; - - rx_len = _sunxi_emac_eth_recv(dev->priv, net_rx_packets[0]); - if (rx_len <= 0) - return 0; - - /* Pass to upper layer */ - net_process_received_packet(net_rx_packets[0], rx_len); - - return rx_len; -} - -static int sunxi_emac_eth_send(struct eth_device *dev, void *packet, int length) -{ - return _sunxi_emac_eth_send(dev->priv, packet, length); -} - -int sunxi_emac_initialize(void) -{ - struct emac_regs *regs = - (struct emac_regs *)SUNXI_EMAC_BASE; - struct eth_device *dev; - struct emac_eth_dev *priv; - - dev = malloc(sizeof(*dev)); - if (dev == NULL) - return -ENOMEM; - - priv = (struct emac_eth_dev *)malloc(sizeof(struct emac_eth_dev)); - if (!priv) { - free(dev); - return -ENOMEM; - } - - memset(dev, 0, sizeof(*dev)); - memset(priv, 0, sizeof(struct emac_eth_dev)); - - priv->regs = regs; - dev->iobase = (int)regs; - dev->priv = priv; - dev->init = sunxi_emac_eth_init; - dev->halt = sunxi_emac_eth_halt; - dev->send = sunxi_emac_eth_send; - dev->recv = sunxi_emac_eth_recv; - strcpy(dev->name, "emac"); - - sunxi_emac_board_setup(priv); - - eth_register(dev); - - return sunxi_emac_init_phy(priv, dev); -} -#endif - -#ifdef CONFIG_DM_ETH static int sunxi_emac_eth_start(struct udevice *dev) { struct eth_pdata *pdata = dev_get_platdata(dev); @@ -653,4 +585,3 @@ U_BOOT_DRIVER(eth_sunxi_emac) = { .priv_auto_alloc_size = sizeof(struct emac_eth_dev), .platdata_auto_alloc_size = sizeof(struct eth_pdata), }; -#endif diff --git a/include/netdev.h b/include/netdev.h index e6bdfdfa83..662d1735db 100644 --- a/include/netdev.h +++ b/include/netdev.h @@ -80,7 +80,6 @@ int sh_eth_initialize(bd_t *bis); int skge_initialize(bd_t *bis); int smc91111_initialize(u8 dev_num, int base_addr); int smc911x_initialize(u8 dev_num, int base_addr); -int sunxi_emac_initialize(bd_t *bis); int tsi108_eth_initialize(bd_t *bis); int uec_standard_init(bd_t *bis); int uli526x_initialize(bd_t *bis);