Δημοσιεύτηκε: 11 Ιουν 2009, 17:42
από thelf
simosx έγραψε:@thelf

Μόλις παρατήρησα μια μικρή βελτίωση στη διόρθωση. Μπορείς να δοκιμάσεις με το παρακάτω,
Κώδικας: Επιλογή όλων
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 42f944b..d1acb7d 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -2344,6 +2344,8 @@ static struct snd_pci_quirk stac9205_cfg_tbl[] = {
                      "DFI LanParty", STAC_9205_REF),
        SND_PCI_QUIRK(PCI_VENDOR_ID_DFI, 0x3101,
                      "DFI LanParty", STAC_9205_REF),
+        SND_PCI_QUIRK(PCI_VENDOR_ID_INTEL, 0xfb30,
+                    "SigmaTel",STAC_9205_REF),
        /* Dell */
        SND_PCI_QUIRK(PCI_VENDOR_ID_DELL, 0x01f1,
                      "unknown Dell", STAC_9205_DELL_M42),
@@ -5938,6 +5940,7 @@ static struct hda_codec_preset snd_hda_preset_sigmatel[] = {
        { .id = 0x83847661, .name = "CXD9872RD/K", .patch = patch_stac9872 },
        { .id = 0x83847662, .name = "STAC9872AK", .patch = patch_stac9872 },
        { .id = 0x83847664, .name = "CXD9872AKD", .patch = patch_stac9872 },
+       { .id = 0x83847698, .name = "STAC9205", .patch = patch_stac9205 },
        { .id = 0x838476a0, .name = "STAC9205", .patch = patch_stac9205 },
        { .id = 0x838476a1, .name = "STAC9205D", .patch = patch_stac9205 },
        { .id = 0x838476a2, .name = "STAC9204", .patch = patch_stac9205 },


Η διαφορά είναι ότι βάζουμε την πρώτη αλλαγή (SND_PCI_QUIRK...) γύρω στη γραμμή 2344, όπου υπάρχει η δομή
Κώδικας: Επιλογή όλων
static struct snd_pci_quirk stac9205_cfg_tbl[] = {


Προηγουμένως υπήρχε στο κομμάτι με τη δομή

Κώδικας: Επιλογή όλων
static struct snd_pci_quirk stac9200_cfg_tbl[] = {


Επειδή στον κώδικα που προσθέτουμε γίνεται αναφορά για stac9205, ίσως να είναι καλύτερο να βάλουμε την αλλαγή στο τμήμα που κάνει αναφορά για stac9205. Μπορείς να δοκιμάσεις και να μου πεις αν δουλεύει.



Το δοκίμασα και δουλεύει κι έτσι. Όμως δεν ξέρω αν έκανα κάτι λάθος γιατί προσπαθώ να φτιάξω το patch με git diff αλλά μου εμφανίζει αυτό
fatal: git diff [--no-index] takes two paths
Βασικά δεν κατέβασα πάλι τον πυρήνα της alsa απλώς έκανα edit το αρχείο sigmatel_patch.c - save - και μετά
./AlsaUpgrade-1.0.x-rev-1.17.sh -c
./AlsaUpgrade-1.0.x-rev-1.17.sh -i
και επανεκκίνηση. Αν ανοίξω το αρχείο φαίνεται ότι είναι αποθηκευμένες οι αλλαγές, απλώς δεν μπορώ να φτιάξω το patch.