]> git.sur5r.net Git - u-boot/blobdiff - board/esd/cpci750/mv_eth.c
Merge with /home/tur/git/u-boot#cm5200-si
[u-boot] / board / esd / cpci750 / mv_eth.c
index e2719b99d1a50b450418205cd10f4b189004028a..bc84ef08e6905b12b1bc2583abc5ed9e7a60c53d 100644 (file)
@@ -267,8 +267,9 @@ void mv6436x_eth_initialize (bd_t * bis)
                dev->send = (void *) db64360_eth_transmit;
                dev->recv = (void *) db64360_eth_poll;
 
-               dev->priv = (void *) ethernet_private =
+               ethernet_private =
                        calloc (sizeof (*ethernet_private), 1);
+               dev->priv = (void *) ethernet_private;
                if (!ethernet_private) {
                        printf ("%s: %s allocation failure, %s\n",
                                __FUNCTION__, dev->name,
@@ -281,8 +282,9 @@ void mv6436x_eth_initialize (bd_t * bis)
                memcpy (ethernet_private->port_mac_addr, dev->enetaddr, 6);
 
                /* set pointer to memory for stats data structure etc... */
-               ethernet_private->port_private = (void *) port_private =
+               port_private =
                        calloc (sizeof (*ethernet_private), 1);
+               ethernet_private->port_private = (void *)port_private;
                if (!port_private) {
                        printf ("%s: %s allocation failure, %s\n",
                                __FUNCTION__, dev->name,
@@ -731,6 +733,7 @@ int mv64360_eth_xmit (struct eth_device *dev, volatile void *dataPtr,
        pkt_info.cmd_sts = ETH_TX_FIRST_DESC | ETH_TX_LAST_DESC;        /* DMA owned, first last */
        pkt_info.byte_cnt = dataSize;
        pkt_info.buf_ptr = (unsigned int) dataPtr;
+       pkt_info.return_info = 0;
 
        status = eth_port_send (ethernet_private, ETH_Q0, &pkt_info);
        if ((status == ETH_ERROR) || (status == ETH_QUEUE_FULL)) {