On Sun, Jan 31, 2010 at 03:00:24AM +0000, Jacob Meuser wrote:
> On Sun, Jan 31, 2010 at 01:53:50AM +0000, Jacob Meuser wrote:
> > On Sat, Jan 30, 2010 at 07:22:35PM +0100, Holger Mikolon wrote:
> > > Hi,
> > >
> > > a similar fix works for my Dell Studio 1555 (details below).
> > > I only had to adjust the subid.
> >
> > I guess this should probably apply to all Dell with IDT 92HD73* codecs.
> > that seems to be what linux is doing.
>
> please test this if you have a Dell machine with an azalia with an IDT
> codec.
>
> --
> [email protected]
> SDF Public Access UNIX System - http://sdf.lonestar.org
This works well on the Dell E4300
ok drahn@
>
> Index: azalia_codec.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/pci/azalia_codec.c,v
> retrieving revision 1.139
> diff -u -p azalia_codec.c
> --- azalia_codec.c 3 Nov 2009 17:31:30 -0000 1.139
> +++ azalia_codec.c 31 Jan 2010 02:57:39 -0000
> @@ -166,6 +166,9 @@ azalia_codec_init_vtbl(codec_t *this)
> break;
> case 0x111d7675:
> this->name = "IDT 92HD73C1"; /* aka 92HDW74C1 */
> + if ((this->subid & 0x0000ffff) == 0x00001028) { /* DELL */
> + this->qrks |= AZ_QRK_GPIO_UNMUTE_0;
> + }
> break;
> case 0x111d7676:
> this->name = "IDT 92HD73E1"; /* aka 92HDW74E1 */
> @@ -175,10 +178,7 @@ azalia_codec_init_vtbl(codec_t *this)
> break;
> case 0x111d76b2:
> this->name = "IDT 92HD71B7";
> - if (this->subid == 0x02631028 || /* DELL_E5500 */
> - this->subid == 0x02501028 || /* DELL_M4400 */
> - this->subid == 0x02331028 || /* DELL_E6400 */
> - this->subid == 0x024f1028) { /* DELL_E6500 */
> + if ((this->subid & 0x0000ffff) == 0x00001028) { /* DELL */
> this->qrks |= AZ_QRK_GPIO_UNMUTE_0;
> }
> break;
>
Dale Rahn [email protected]