summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorYang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>2009-07-14 10:22:55 +0800
committerYang-Rong Jerry Zhou <Yangrong.Zhou@Sun.COM>2009-07-14 10:22:55 +0800
commitf0109389f635b59e47ad74e20059ea4283d73103 (patch)
treec655a5d91d20d591ebc2cd0b583ab1cd7197da06 /usr/src
parent24492170008a257707ba12f4ae2f2af9bdf925a9 (diff)
downloadillumos-joyent-f0109389f635b59e47ad74e20059ea4283d73103.tar.gz
6831395 Loud noise from speakers on Dell Lattitude E6400
6858599 Audiohd codec vid should be reported if it is unknown
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/io/audio/drv/audiohd/audiohd.c11
-rw-r--r--usr/src/uts/common/io/audio/drv/audiohd/audiohd.h3
2 files changed, 10 insertions, 4 deletions
diff --git a/usr/src/uts/common/io/audio/drv/audiohd/audiohd.c b/usr/src/uts/common/io/audio/drv/audiohd/audiohd.c
index 53ae63e45f..4513b26630 100644
--- a/usr/src/uts/common/io/audio/drv/audiohd/audiohd.c
+++ b/usr/src/uts/common/io/audio/drv/audiohd/audiohd.c
@@ -3191,7 +3191,7 @@ audiohd_set_codec_info(hda_codec_t *codec)
break;
default:
(void) snprintf(buf, sizeof (buf),
- "Unkown HD codec");
+ "Unknown HD codec: 0x%x", codec->vid);
break;
}
@@ -3530,8 +3530,13 @@ audiohd_build_output_path(hda_codec_t *codec)
int mnum = 0;
uint8_t mixer_allow = 1;
- /* work around for hp mini 1000 laptop */
- if (codec->vid == AUDIOHD_CODECID_HP)
+ /*
+ * work around for laptops which have IDT audio chipset, such as
+ * HP mini 1000 laptop, Dell Lattitude 6400. We don't allow mixer
+ * widget on such path, which leads to speaker loud hiss noise.
+ */
+ if (codec->vid == AUDIOHD_CODEC_IDT7608 ||
+ codec->vid == AUDIOHD_CODEC_IDT76B2)
mixer_allow = 0;
/* search an exclusive mixer widget path. This is preferred */
audiohd_do_build_output_path(codec, mixer_allow, &mnum, 1, 0);
diff --git a/usr/src/uts/common/io/audio/drv/audiohd/audiohd.h b/usr/src/uts/common/io/audio/drv/audiohd/audiohd.h
index a5acee53df..64362b165f 100644
--- a/usr/src/uts/common/io/audio/drv/audiohd/audiohd.h
+++ b/usr/src/uts/common/io/audio/drv/audiohd/audiohd.h
@@ -40,7 +40,8 @@ extern "C" {
/*
* specific codec id used by specific vendors
*/
-#define AUDIOHD_CODECID_HP 0x111d7608
+#define AUDIOHD_CODEC_IDT7608 0x111d7608
+#define AUDIOHD_CODEC_IDT76B2 0x111d76b2
#define AUDIOHD_CODECID_ALC888 0x10ec0888
#define AUDIOHD_CODECID_SONY1 0x10ec0260
#define AUDIOHD_CODECID_SONY2 0x10ec0262