From: Aaro Koskinen Date: Fri, 2 Sep 2016 21:33:38 +0000 (+0300) Subject: staging: octeon: stop using cvmx_helper_link_autoconf() X-Git-Tag: Ubuntu-5.4-5.4.0-11.14~9287^2~652 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=60dcf58a628475281748742cda3b09d5a66babeb;p=mirror_ubuntu-focal-kernel.git staging: octeon: stop using cvmx_helper_link_autoconf() Stop using cvmx_helper_link_autoconf(). We want to remove it in the future, as it duplicates link state information into platform code for no reason. Signed-off-by: Aaro Koskinen Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/octeon/ethernet-rgmii.c b/drivers/staging/octeon/ethernet-rgmii.c index 48846dffc8e1..4e7304210bb9 100644 --- a/drivers/staging/octeon/ethernet-rgmii.c +++ b/drivers/staging/octeon/ethernet-rgmii.c @@ -117,7 +117,10 @@ static void cvm_oct_rgmii_poll(struct net_device *dev) cvmx_helper_link_info_t link_info; bool status_change; - link_info = cvmx_helper_link_autoconf(priv->port); + link_info = cvmx_helper_link_get(priv->port); + if (priv->link_info != link_info.u64 && + cvmx_helper_link_set(priv->port, link_info)) + link_info.u64 = priv->link_info; status_change = priv->link_info != link_info.u64; priv->link_info = link_info.u64; diff --git a/drivers/staging/octeon/ethernet.c b/drivers/staging/octeon/ethernet.c index 0bd5c1816e0f..5f746b88522d 100644 --- a/drivers/staging/octeon/ethernet.c +++ b/drivers/staging/octeon/ethernet.c @@ -521,8 +521,10 @@ void cvm_oct_link_poll(struct net_device *dev) if (link_info.u64 == priv->link_info) return; - link_info = cvmx_helper_link_autoconf(priv->port); - priv->link_info = link_info.u64; + if (cvmx_helper_link_set(priv->port, link_info)) + link_info.u64 = priv->link_info; + else + priv->link_info = link_info.u64; if (link_info.s.link_up) { if (!netif_carrier_ok(dev))