Call for testers: patch for the dc(4) driver

Maxime Henrion mux at freebsd.org
Tue Sep 28 05:40:39 PDT 2004


	Hi guys,



I need people to give this patch a try and see if it doesn't break
anything.  It shouldn't cause any harm, but better safe than sorry.
This patch allows the dc(4) driver to properly read the MAC address in
the EEPROM on FreeBSD/powerpc.  Andrew Gallatin tested it successfully
on his G4.  I'm particularly interested about people using dc(4) on
sparc64 since this arcihtecture is big endian.

Cheers,
Maxime
-------------- next part --------------
Index: if_dc.c
===================================================================
RCS file: /space2/ncvs/src/sys/pci/if_dc.c,v
retrieving revision 1.149
diff -u -p -r1.149 if_dc.c
--- if_dc.c	25 Aug 2004 03:37:25 -0000	1.149
+++ if_dc.c	26 Sep 2004 21:57:53 -0000
@@ -584,7 +584,7 @@ dc_eeprom_getword(struct dc_softc *sc, i
  * Read a sequence of words from the EEPROM.
  */
 static void
-dc_read_eeprom(struct dc_softc *sc, caddr_t dest, int off, int cnt, int swap)
+dc_read_eeprom(struct dc_softc *sc, caddr_t dest, int off, int cnt, int be)
 {
 	int i;
 	u_int16_t word = 0, *ptr;
@@ -597,10 +597,10 @@ dc_read_eeprom(struct dc_softc *sc, cadd
 		else
 			dc_eeprom_getword(sc, off + i, &word);
 		ptr = (u_int16_t *)(dest + (i * 2));
-		if (swap)
-			*ptr = ntohs(word);
+		if (be)
+			*ptr = be16toh(word);
 		else
-			*ptr = word;
+			*ptr = le16toh(word);
 	}
 }
 


More information about the freebsd-current mailing list