Module Name: src
Committed By: msaitoh
Date: Tue Apr 9 04:04:04 UTC 2019
Modified Files:
src/sys/dev/mca: if_le_mca.c
Log Message:
Fix a bug that the supported media can't passed correctly. Not tested.
To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/dev/mca/if_le_mca.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/mca/if_le_mca.c
diff -u src/sys/dev/mca/if_le_mca.c:1.20 src/sys/dev/mca/if_le_mca.c:1.21
--- src/sys/dev/mca/if_le_mca.c:1.20 Tue Apr 9 03:56:08 2019
+++ src/sys/dev/mca/if_le_mca.c Tue Apr 9 04:04:04 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: if_le_mca.c,v 1.20 2019/04/09 03:56:08 msaitoh Exp $ */
+/* $NetBSD: if_le_mca.c,v 1.21 2019/04/09 04:04:04 msaitoh Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
@@ -45,7 +45,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_le_mca.c,v 1.20 2019/04/09 03:56:08 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_le_mca.c,v 1.21 2019/04/09 04:04:04 msaitoh Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -104,7 +104,7 @@ CFATTACH_DECL_NEW(le_mca, sizeof(struct
static const uint8_t sknet_mcp_irq[] = {
3, 5, 10, 11
};
-static const uint8_t sknet_mcp_media[] = {
+static const int sknet_mcp_media[] = {
IFM_ETHER | IFM_10_2,
IFM_ETHER | IFM_10_T,
IFM_ETHER | IFM_10_5,
@@ -131,7 +131,8 @@ le_mca_attach(device_t parent, device_t
struct le_mca_softc *lesc = device_private(self);
struct lance_softc *sc = &lesc->sc_am7990.lsc;
struct mca_attach_args *ma = aux;
- int i, pos2, pos3, pos4, irq, membase, supmedia=0;
+ int i, pos2, pos3, pos4, irq, membase;
+ const int *supmedia = NULL;
const char *typestr;
sc->sc_dev = self;
@@ -205,7 +206,7 @@ le_mca_attach(device_t parent, device_t
membase = 0xc0000 + ((pos3 & 0x0f) * 0x4000);
/* Get configured media type */
- supmedia = sknet_mcp_media[(pos4 & 0xc0) >> 6];
+ supmedia = &sknet_mcp_media[(pos4 & 0xc0) >> 6];
break;
default:
aprint_error(": unknown product %d\n", ma->ma_id);
@@ -250,10 +251,10 @@ le_mca_attach(device_t parent, device_t
* This is merely cosmetic since it's not possible to switch
* the media anyway, even for MC2+.
*/
- if (supmedia != 0) {
- sc->sc_supmedia = &supmedia;
+ if (supmedia != NULL) {
+ sc->sc_supmedia = supmedia;
sc->sc_nsupmedia = 1;
- sc->sc_defaultmedia = supmedia;
+ sc->sc_defaultmedia = *supmedia;
}
lesc->sc_ih = mca_intr_establish(ma->ma_mc, irq, IPL_NET,