net: fix netconsole when CONFIG_DM_ETH is set
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>
This commit is contained in:
parent
eaa8a195cc
commit
c163e43679
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user