From 75d037476586d8d42eeea701166b20d847c48455 Mon Sep 17 00:00:00 2001
From: Warner Losh <imp@FreeBSD.org>
Date: Sat, 23 Dec 2017 06:11:19 +0000
Subject: [PATCH] Expand cryptic comment with inforation I've learned in the
 mean time about CIS3/CIS4, including studies I've done on my large collection
 of PC Cards bought off e-bay over the years since the original entry as well
 as conversations I've had at conferences.

---
 sys/dev/pccard/pccardvar.h | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/sys/dev/pccard/pccardvar.h b/sys/dev/pccard/pccardvar.h
index ab2fdd2dccda..c6fc94245a06 100644
--- a/sys/dev/pccard/pccardvar.h
+++ b/sys/dev/pccard/pccardvar.h
@@ -88,10 +88,18 @@ struct pccard_product {
 };
 
 /**
- * Note: There's no cis3 or cis4 reported for NOMATCH / pnpinfo events for pccard
- * It's unclear if we actually need that for automatic loading or not. These stirngs
- * are informative, according to the standard, but I have a dim memory of using these
- * strings to match things, though I can't find the example right now.
+ * Note: There's no cis3 or cis4 reported for NOMATCH / pnpinfo events for
+ * pccard It's unclear if we actually need that for automatic loading or
+ * not. These stirngs are informative, according to the standard. Some Linux
+ * drivers match on them, for example. However, FreeBSD's hardware probing is a
+ * little different than Linux so it turns out we don't need them. Some cards
+ * use CIS3 or CIS4 for a textual representation of the MAC address. In short,
+ * they aren't needed even though our friends in Linux have them. It is my
+ * belief that all the entries in Linux don't actually need to be separate there
+ * either, but it's hard to eliminate them and retest on old, possibly rare,
+ * hardware so they persist. Despite years of collecting ~300 different PC Cards
+ * off E-Bay, I've not been able to find any that need CIS3/CIS4 to select which
+ * device attaches.
  */
 #define PCCARD_PNP_DESCR "D:#;V32:manufacturer;V32:product;Z:cisvendor;Z:cisproduct;"
 #define PCCARD_PNP_INFO(t) \