Module Name:    src
Committed By:   jmcneill
Date:           Sat Jun 30 16:27:49 UTC 2018

Modified Files:
        src/sys/dev/ic: dwc_gmac.c dwc_gmac_var.h

Log Message:
dwc_gmac_attach: return non-zero on failure


To generate a diff of this commit:
cvs rdiff -u -r1.50 -r1.51 src/sys/dev/ic/dwc_gmac.c
cvs rdiff -u -r1.8 -r1.9 src/sys/dev/ic/dwc_gmac_var.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/ic/dwc_gmac.c
diff -u src/sys/dev/ic/dwc_gmac.c:1.50 src/sys/dev/ic/dwc_gmac.c:1.51
--- src/sys/dev/ic/dwc_gmac.c:1.50	Tue Jun 26 06:48:00 2018
+++ src/sys/dev/ic/dwc_gmac.c	Sat Jun 30 16:27:48 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: dwc_gmac.c,v 1.50 2018/06/26 06:48:00 msaitoh Exp $ */
+/* $NetBSD: dwc_gmac.c,v 1.51 2018/06/30 16:27:48 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2013, 2014 The NetBSD Foundation, Inc.
@@ -41,7 +41,7 @@
 
 #include <sys/cdefs.h>
 
-__KERNEL_RCSID(1, "$NetBSD: dwc_gmac.c,v 1.50 2018/06/26 06:48:00 msaitoh Exp $");
+__KERNEL_RCSID(1, "$NetBSD: dwc_gmac.c,v 1.51 2018/06/30 16:27:48 jmcneill Exp $");
 
 /* #define	DWC_GMAC_DEBUG	1 */
 
@@ -137,7 +137,7 @@ static void dwc_gmac_dump_ffilt(struct d
 #define DWCGMAC_MPSAFE	1
 #endif
 
-void
+int
 dwc_gmac_attach(struct dwc_gmac_softc *sc, uint32_t mii_clk)
 {
 	uint8_t enaddr[ETHER_ADDR_LEN];
@@ -189,7 +189,7 @@ dwc_gmac_attach(struct dwc_gmac_softc *s
 	 * Init chip and do initial setup
 	 */
 	if (dwc_gmac_reset(sc) != 0)
-		return;	/* not much to cleanup, haven't attached yet */
+		return ENXIO;	/* not much to cleanup, haven't attached yet */
 	dwc_gmac_write_hwaddr(sc, enaddr);
 	aprint_normal_dev(sc->sc_dev, "Ethernet address: %s\n",
 	    ether_sprintf(enaddr));
@@ -280,7 +280,8 @@ dwc_gmac_attach(struct dwc_gmac_softc *s
 	    GMAC_DEF_DMA_INT_MASK);
 	mutex_exit(sc->sc_lock);
 
-	return;
+	return 0;
+
 fail_2:
 	ifmedia_removeall(&mii->mii_media);
 	mii_detach(mii, MII_PHY_ANY, MII_OFFSET_ANY);
@@ -292,6 +293,8 @@ fail:
 	dwc_gmac_free_tx_ring(sc, &sc->sc_txq);
 	dwc_gmac_free_dma_rings(sc);
 	mutex_destroy(&sc->sc_mdio_lock);
+
+	return ENXIO;
 }
 
 

Index: src/sys/dev/ic/dwc_gmac_var.h
diff -u src/sys/dev/ic/dwc_gmac_var.h:1.8 src/sys/dev/ic/dwc_gmac_var.h:1.9
--- src/sys/dev/ic/dwc_gmac_var.h:1.8	Sat Jun 16 00:15:00 2018
+++ src/sys/dev/ic/dwc_gmac_var.h	Sat Jun 30 16:27:48 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: dwc_gmac_var.h,v 1.8 2018/06/16 00:15:00 jmcneill Exp $ */
+/* $NetBSD: dwc_gmac_var.h,v 1.9 2018/06/30 16:27:48 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2013, 2014 The NetBSD Foundation, Inc.
@@ -100,5 +100,5 @@ struct dwc_gmac_softc {
 	void (*sc_set_speed)(struct dwc_gmac_softc *, int);
 };
 
-void dwc_gmac_attach(struct dwc_gmac_softc*, uint32_t /*mii_clk*/);
+int dwc_gmac_attach(struct dwc_gmac_softc*, uint32_t /*mii_clk*/);
 int dwc_gmac_intr(struct dwc_gmac_softc*);

Reply via email to