Module Name: src Committed By: mlelstv Date: Wed Oct 3 07:08:58 UTC 2012
Modified Files: src/sys/dev/mii: mii_physubr.c Log Message: use media_table instead of replicating code To generate a diff of this commit: cvs rdiff -u -r1.74 -r1.75 src/sys/dev/mii/mii_physubr.c 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/mii/mii_physubr.c diff -u src/sys/dev/mii/mii_physubr.c:1.74 src/sys/dev/mii/mii_physubr.c:1.75 --- src/sys/dev/mii/mii_physubr.c:1.74 Sun Jul 22 14:33:00 2012 +++ src/sys/dev/mii/mii_physubr.c Wed Oct 3 07:08:58 2012 @@ -1,4 +1,4 @@ -/* $NetBSD: mii_physubr.c,v 1.74 2012/07/22 14:33:00 matt Exp $ */ +/* $NetBSD: mii_physubr.c,v 1.75 2012/10/03 07:08:58 mlelstv Exp $ */ /*- * Copyright (c) 1998, 1999, 2000, 2001 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: mii_physubr.c,v 1.74 2012/07/22 14:33:00 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: mii_physubr.c,v 1.75 2012/10/03 07:08:58 mlelstv Exp $"); #include <sys/param.h> #include <sys/device.h> @@ -680,26 +680,12 @@ mii_anar(int media) { int rv; - switch (media & (IFM_TMASK|IFM_NMASK|IFM_FDX)) { - case IFM_ETHER|IFM_10_T: - rv = ANAR_10|ANAR_CSMA; - break; - case IFM_ETHER|IFM_10_T|IFM_FDX: - rv = ANAR_10_FD|ANAR_CSMA; - break; - case IFM_ETHER|IFM_100_TX: - rv = ANAR_TX|ANAR_CSMA; - break; - case IFM_ETHER|IFM_100_TX|IFM_FDX: - rv = ANAR_TX_FD|ANAR_CSMA; - break; - case IFM_ETHER|IFM_100_T4: - rv = ANAR_T4|ANAR_CSMA; - break; - default: - rv = 0; - break; - } +#ifdef DIAGNOSTIC + if (/* media < 0 || */ media >= MII_NMEDIA) + panic("mii_anar"); +#endif + + rv = mii_media_table[media].mm_anar; return rv; }