lkml.org 
[lkml]   [2009]   [Jul]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: Commit 1e137f92 broke my Vaio VGN-FE550G's hda_intel driver.
    At Sun, 19 Jul 2009 17:55:38 -0500,
    Robin Holt wrote:
    >
    > > What about to pass model=vaio? Doesn't it work?
    >
    > That didn't change the behavior.
    >
    > > In anyways, please run alsa-info.sh with --no-upload option, and attach
    > > the generated file.
    >
    > Here is the output from alsa-info.sh. This was from the module load without
    > the model=vaio. Below, (search for ---Robin---) is the output from alsa-info.sh
    > with model=vaio.

    Thanks. This look really like a bug. The pin definition was wrongly
    placed. It should have been before the pin overrides.

    Could you try the patch below? With the patch, the driver would work
    even without any model option.


    Takashi

    ---
    diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
    index 41b5b3a..0a03b5c 100644
    --- a/sound/pci/hda/patch_sigmatel.c
    +++ b/sound/pci/hda/patch_sigmatel.c
    @@ -5854,6 +5854,8 @@ static unsigned int *stac9872_brd_tbl[STAC_9872_MODELS] = {
    };

    static struct snd_pci_quirk stac9872_cfg_tbl[] = {
    + SND_PCI_QUIRK_MASK(0x104d, 0xfff0, 0x81e0,
    + "Sony VAIO F/S", STAC_9872_VAIO),
    {} /* terminator */
    };

    @@ -5866,6 +5868,8 @@ static int patch_stac9872(struct hda_codec *codec)
    if (spec == NULL)
    return -ENOMEM;
    codec->spec = spec;
    + spec->num_pins = ARRAY_SIZE(stac9872_pin_nids);
    + spec->pin_nids = stac9872_pin_nids;

    spec->board_config = snd_hda_check_board_config(codec, STAC_9872_MODELS,
    stac9872_models,
    @@ -5877,8 +5881,6 @@ static int patch_stac9872(struct hda_codec *codec)
    stac92xx_set_config_regs(codec,
    stac9872_brd_tbl[spec->board_config]);

    - spec->num_pins = ARRAY_SIZE(stac9872_pin_nids);
    - spec->pin_nids = stac9872_pin_nids;
    spec->multiout.dac_nids = spec->dac_nids;
    spec->num_adcs = ARRAY_SIZE(stac9872_adc_nids);
    spec->adc_nids = stac9872_adc_nids;

    \
     
     \ /
      Last update: 2009-07-20 08:03    [W:0.027 / U:60.892 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site