]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: fix netconsole when CONFIG_DM_ETH is set
authorBernhard Nortmann <bernhard.nortmann@web.de>
Mon, 14 Sep 2015 13:29:44 +0000 (15:29 +0200)
committerJoe Hershberger <joe.hershberger@ni.com>
Wed, 30 Sep 2015 02:54:45 +0000 (21:54 -0500)
This patch uses the eth_is_active() function to work around
issues that prevented compilation with the newer driver model.

Signed-off-by: Bernhard Nortmann <bernhard.nortmann@web.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
drivers/net/netconsole.c

index 31042a6b6ba76566a0c74bd99918b710e8f516af..bf972dc39b9214b6ba3003a03bbc6a3e0b19ed82 100644 (file)
@@ -170,7 +170,11 @@ int nc_input_packet(uchar *pkt, struct in_addr src_ip, unsigned dest_port,
 
 static void nc_send_packet(const char *buf, int len)
 {
+#ifdef CONFIG_DM_ETH
+       struct udevice *eth;
+#else
        struct eth_device *eth;
+#endif
        int inited = 0;
        uchar *pkt;
        uchar *ether;
@@ -183,7 +187,7 @@ static void nc_send_packet(const char *buf, int len)
                return;
 
        if (!memcmp(nc_ether, net_null_ethaddr, 6)) {
-               if (eth->state == ETH_STATE_ACTIVE)
+               if (eth_is_active(eth))
                        return; /* inside net loop */
                output_packet = buf;
                output_packet_len = len;
@@ -194,7 +198,7 @@ static void nc_send_packet(const char *buf, int len)
                return;
        }
 
-       if (eth->state != ETH_STATE_ACTIVE) {
+       if (!eth_is_active(eth)) {
                if (eth_is_on_demand_init()) {
                        if (eth_init() < 0)
                                return;
@@ -292,7 +296,11 @@ static int nc_stdio_getc(struct stdio_dev *dev)
 
 static int nc_stdio_tstc(struct stdio_dev *dev)
 {
+#ifdef CONFIG_DM_ETH
+       struct udevice *eth;
+#else
        struct eth_device *eth;
+#endif
 
        if (input_recursion)
                return 0;
@@ -301,7 +309,7 @@ static int nc_stdio_tstc(struct stdio_dev *dev)
                return 1;
 
        eth = eth_get_dev();
-       if (eth && eth->state == ETH_STATE_ACTIVE)
+       if (eth_is_active(eth))
                return 0;       /* inside net loop */
 
        input_recursion = 1;