X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=drivers%2Fnet%2Fftmac100.c;h=3e148db5cda4abbfc5cf7a574902f4652cf7cba6;hb=97598fcf10eba577622f3387eaecd43dd710da0d;hp=2328cb51d2f7cd8a90c6b308a91e8f315ad71871;hpb=9e4623a0addf58fe4fd389fbdd559c179146f4a0;p=u-boot diff --git a/drivers/net/ftmac100.c b/drivers/net/ftmac100.c index 2328cb51d2..3e148db5cd 100644 --- a/drivers/net/ftmac100.c +++ b/drivers/net/ftmac100.c @@ -4,19 +4,7 @@ * (C) Copyright 2009 Faraday Technology * Po-Yu Chuang * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * SPDX-License-Identifier: GPL-2.0+ */ #include @@ -30,8 +18,8 @@ #define ETH_ZLEN 60 struct ftmac100_data { - volatile struct ftmac100_txdes txdes[1]; - volatile struct ftmac100_rxdes rxdes[PKTBUFSRX]; + struct ftmac100_txdes txdes[1]; + struct ftmac100_rxdes rxdes[PKTBUFSRX]; int rx_index; }; @@ -88,8 +76,8 @@ static int ftmac100_init (struct eth_device *dev, bd_t *bd) { struct ftmac100 *ftmac100 = (struct ftmac100 *)dev->iobase; struct ftmac100_data *priv = dev->priv; - volatile struct ftmac100_txdes *txdes = priv->txdes; - volatile struct ftmac100_rxdes *rxdes = priv->rxdes; + struct ftmac100_txdes *txdes = priv->txdes; + struct ftmac100_rxdes *rxdes = priv->rxdes; unsigned int maccr; int i; @@ -153,7 +141,7 @@ static int ftmac100_init (struct eth_device *dev, bd_t *bd) static int ftmac100_recv (struct eth_device *dev) { struct ftmac100_data *priv = dev->priv; - volatile struct ftmac100_rxdes *curr_des; + struct ftmac100_rxdes *curr_des; unsigned short rxlen; curr_des = &priv->rxdes[priv->rx_index]; @@ -190,13 +178,12 @@ static int ftmac100_recv (struct eth_device *dev) /* * Send a data block via Ethernet */ -static int -ftmac100_send (struct eth_device *dev, volatile void *packet, int length) +static int ftmac100_send(struct eth_device *dev, void *packet, int length) { struct ftmac100 *ftmac100 = (struct ftmac100 *)dev->iobase; struct ftmac100_data *priv = dev->priv; - volatile struct ftmac100_txdes *curr_des = priv->txdes; - int tmo; + struct ftmac100_txdes *curr_des = priv->txdes; + ulong start; if (curr_des->txdes0 & FTMAC100_TXDES0_TXDMA_OWN) { debug ("%s(): no TX descriptor available\n", __func__); @@ -224,9 +211,9 @@ ftmac100_send (struct eth_device *dev, volatile void *packet, int length) /* wait for transfer to succeed */ - tmo = get_timer (0) + 5 * CONFIG_SYS_HZ; + start = get_timer(0); while (curr_des->txdes0 & FTMAC100_TXDES0_TXDMA_OWN) { - if (get_timer (0) >= tmo) { + if (get_timer(start) >= 5) { debug ("%s(): timed out\n", __func__); return -1; }