summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPatrick Wildt <patrick@cvs.openbsd.org>2018-05-23 09:08:19 +0000
committerPatrick Wildt <patrick@cvs.openbsd.org>2018-05-23 09:08:19 +0000
commita429169657e49ba7acb2a772abb71adb9b68c0d5 (patch)
tree1bc2219765a9f191a4af4e0709d9093c6282fdfb /sys
parent02eddbbbb39acbacf7d59c7630c8da66ab467558 (diff)
Extend list of supported bwfm(4) SDIO chips.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/sdmmc/if_bwfm_sdio.c28
1 files changed, 24 insertions, 4 deletions
diff --git a/sys/dev/sdmmc/if_bwfm_sdio.c b/sys/dev/sdmmc/if_bwfm_sdio.c
index 85c25e5e9f9..5334b087f1d 100644
--- a/sys/dev/sdmmc/if_bwfm_sdio.c
+++ b/sys/dev/sdmmc/if_bwfm_sdio.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_bwfm_sdio.c,v 1.13 2018/05/21 08:07:43 patrick Exp $ */
+/* $OpenBSD: if_bwfm_sdio.c,v 1.14 2018/05/23 09:08:18 patrick Exp $ */
/*
* Copyright (c) 2010-2016 Broadcom Corporation
* Copyright (c) 2016,2017 Patrick Wildt <patrick@blueri.se>
@@ -191,12 +191,32 @@ bwfm_sdio_match(struct device *parent, void *match, void *aux)
if (sf == NULL)
return 0;
- /* Look for Broadcom 433[04]. */
+ /* Look for Broadcom. */
cis = &sf->sc->sc_fn0->cis;
- if (cis->manufacturer != 0x02d0 || (cis->product != 0x4330 &&
- cis->product != 0x4334))
+ if (cis->manufacturer != 0x02d0)
return 0;
+ /* Look for supported chips. */
+ switch (cis->product) {
+ case 0x4324:
+ case 0x4330:
+ case 0x4334:
+ case 0x4329:
+ case 0x4335:
+ case 0x4339:
+ case 0x4345:
+ case 0x4354:
+ case 0x4356:
+ case 0xa887:
+ case 0xa94c:
+ case 0xa94d:
+ case 0xa962:
+ case 0xa9a6:
+ break;
+ default:
+ return 0;
+ }
+
/* We need both functions, but ... */
if (sf->sc->sc_function_count <= 1)
return 0;