The EMAC modules control registers vary as per the version of the
EMAC module. EMAC_CTRL_EWCTL,EMAC_CTRL_EWINTTCNT are available
only on EMAC_VERSION_1. The emac_dump_regs() function accesses
these indiscriminately. This patch fixes the issue.

Signed-off-by: Sriramakrishnan <[email protected]>
---
 drivers/net/davinci_emac.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
index 4ee9af6..12196ad 100644
--- a/drivers/net/davinci_emac.c
+++ b/drivers/net/davinci_emac.c
@@ -565,9 +565,11 @@ static void emac_dump_regs(struct emac_priv *priv)
 
        /* Print important registers in EMAC */
        dev_info(emac_dev, "EMAC Basic registers\n");
-       dev_info(emac_dev, "EMAC: EWCTL: %08X, EWINTTCNT: %08X\n",
-               emac_ctrl_read(EMAC_CTRL_EWCTL),
-               emac_ctrl_read(EMAC_CTRL_EWINTTCNT));
+       if (priv->version == EMAC_VERSION_1) {
+               dev_info(emac_dev, "EMAC: EWCTL: %08X, EWINTTCNT: %08X\n",
+                       emac_ctrl_read(EMAC_CTRL_EWCTL),
+                       emac_ctrl_read(EMAC_CTRL_EWINTTCNT));
+       }
        dev_info(emac_dev, "EMAC: TXID: %08X %s, RXID: %08X %s\n",
                emac_read(EMAC_TXIDVER),
                ((emac_read(EMAC_TXCONTROL)) ? "enabled" : "disabled"),
-- 
1.6.2.4

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to