Date: Tue, 28 Sep 2004 14:40:39 +0200 From: Maxime Henrion <mux@freebsd.org> To: current@FreeBSD.org, sparc64@FreeBSD.org Subject: Call for testers: patch for the dc(4) driver Message-ID: <20040928124039.GB61666@elvis.mu.org>
next in thread | raw e-mail | index | archive | help
--DocE+STaALJfprDB Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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 --DocE+STaALJfprDB Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="dc.patch" 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); } } --DocE+STaALJfprDB--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040928124039.GB61666>