At Tue, 17 Feb 2009 23:04:31 -0300, Paulo Cavalcanti wrote:
On Mon, Feb 16, 2009 at 7:55 AM, Takashi Iwai tiwai@suse.de wrote:
At Mon, 16 Feb 2009 06:13:35 -0300, Paulo Cavalcanti wrote: > > Hi, > > I received a patch form Fengguang that > made my Intel DG45ID (snd-hda-intel, codec IDT 92HD73E1X5) > behave the way it should, in my opinion. > > It just makes the blue jack behave as an input source by default (in alsa > 1.0.19 it is > an output jack). > > It is widespread that the green jack is output, the blue input and the pink > is mic. > Some cards allow reconfiguring the jacks in alsamixer, but the DG45ID > already has > an orange and black jacks for rear and center speakers, and a digital > output. > > Other people have also raised this problem some time ago: > > https://fcp.surfsite.org/modules/newbb/viewtopic.php?viewmode=threaded& order=ASC&topic_id=62855&forum=12&move=prev&topic_time=1224179600 > > Fengguang suggested me to direct my request to the development list, > so the other developers could decide what to do. > > I would like to add that I can use the input source and the mic just fine > now > (the mic could be a bit louder, but it works fine with skype). > > The patch is very simple and is attached. This would conclude the fix > for this card, Takashi started with me some time ago (I just made the > tests). It's fine to put a quirk there. But, you'd need to create a "model" for your device so that it won't interfere other devices. That is, define a new model type, and call stac92xx_set_config_reg() with the check of spec->board_config.
This is easy. The problem is that I am already using model "no-jd", remember? In this case, if I used
/* was 0x01113014 */ if (spec->board_config > STAC_92HD73XX_NO_JD ) { stac92xx_set_config_reg(codec, 0x0c, 0x01813021); }
would be fine to me.
Hm, now the question is why it's wrong. This patch changes the port-C. My concern is whether it's a cabling problem or if it's a BIOS thing. If it's a cabling problem (i.e. the cables don't match with the box), it's not a problem that the driver needs to fix in it. OTOH, if the cabling is OK but just the port-C is mislabeled by BIOS, it's an issue to be fixed as a quirk in the driver.
However, there is a possibility that all "stac92hd73xx" family needs this quirk. In this case, no additional code is needed.
Very unlikely. The pins can be freely assigned, and the port-C is a very basic port. The position, color, association, etc must be different from machine to machine.
thanks,
Takashi