diff options
author | mav <mav@FreeBSD.org> | 2009-01-08 19:43:47 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2009-01-08 19:43:47 +0000 |
commit | 49b34fa613c7d0a33284acecf4bb37df66ee5ead (patch) | |
tree | 24b9ad67311c51a5c6d656752bfcaa468df3c749 | |
parent | d72b8ba20f3993d4517a73171cb5e4a269b103a6 (diff) | |
download | FreeBSD-src-49b34fa613c7d0a33284acecf4bb37df66ee5ead.zip FreeBSD-src-49b34fa613c7d0a33284acecf4bb37df66ee5ead.tar.gz |
Add external connector jack color into widget names.
It should help users to identify them while reading verbose messages.
-rw-r--r-- | sys/dev/sound/pci/hda/hdac.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c index 8ee7106..88844cd 100644 --- a/sys/dev/sound/pci/hda/hdac.c +++ b/sys/dev/sound/pci/hda/hdac.c @@ -2443,9 +2443,10 @@ hdac_widget_pin_parse(struct hdac_widget *w) { struct hdac_softc *sc = w->devinfo->codec->sc; uint32_t config, pincap; - const char *devstr, *connstr; + const char *devstr; nid_t cad = w->devinfo->codec->cad; nid_t nid = w->nid; + int conn, color; config = hdac_widget_pin_getconfig(w); w->wclass.pin.config = config; @@ -2467,13 +2468,19 @@ hdac_widget_pin_parse(struct hdac_widget *w) devstr = HDA_DEVS[(config & HDA_CONFIG_DEFAULTCONF_DEVICE_MASK) >> HDA_CONFIG_DEFAULTCONF_DEVICE_SHIFT]; - connstr = HDA_CONNS[(config & HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK) >> - HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_SHIFT]; + conn = (config & HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_MASK) >> + HDA_CONFIG_DEFAULTCONF_CONNECTIVITY_SHIFT; + color = (config & HDA_CONFIG_DEFAULTCONF_COLOR_MASK) >> + HDA_CONFIG_DEFAULTCONF_COLOR_SHIFT; strlcat(w->name, ": ", sizeof(w->name)); strlcat(w->name, devstr, sizeof(w->name)); strlcat(w->name, " (", sizeof(w->name)); - strlcat(w->name, connstr, sizeof(w->name)); + if (conn == 0 && color != 0 && color != 15) { + strlcat(w->name, HDA_COLORS[color], sizeof(w->name)); + strlcat(w->name, " ", sizeof(w->name)); + } + strlcat(w->name, HDA_CONNS[conn], sizeof(w->name)); strlcat(w->name, ")", sizeof(w->name)); } |