ar71xx: ag71xx: fix get_port_link callback

SVN-Revision: 30841
This commit is contained in:
Gabor Juhos 2012-03-07 16:32:35 +00:00
parent 5a83b3a5c7
commit c455a0f7be

View File

@ -888,9 +888,15 @@ ar7240_get_port_link(struct switch_dev *dev, int port,
return -EINVAL;
status = ar7240sw_reg_read(mii, AR7240_REG_PORT_STATUS(port));
link->link = !!(status & AR7240_PORT_STATUS_LINK_UP);
link->aneg = !!(status & AR7240_PORT_STATUS_LINK_AUTO);
if (link->aneg) {
link->link = !!(status & AR7240_PORT_STATUS_LINK_UP);
if (!link->link)
return 0;
} else {
link->link = true;
}
link->duplex = !!(status & AR7240_PORT_STATUS_DUPLEX);
link->tx_flow = !!(status & AR7240_PORT_STATUS_TXFLOW);
link->rx_flow = !!(status & AR7240_PORT_STATUS_RXFLOW);