Package: linux-image-2.6.26-1-686 Version: 2.6.26-8 Severity: wishlist
On the Acer Aspire One A110 netbook computer, the default behaviour of the snd-hda-intel driver is to not set correctly the output gain. Depending on the boot lottery, there is either quite mute or no sound. When applying the classic "model=acer" modprobe tweak, the sound is loud and reasonably correct; this is good, EXCEPT that the sensor on the headphone jack is disabled: plugging in a headphone will fail to disable the internal loudspeakers, which may be bad for some users. A Realtek engineer, Kailang Yang, provided a patch for that. The patch is commit 8ef355da64ff087b6f26c4c28a14753861e83e4b in the git tree, from sometime between v2.6.26 and v2.6.28-rc4. I verified that this patch applies cleanly on the tree as provided by Debianin the 2.6.26 package (there is fuzz for a couple hundred lines on all 8 hunks, but it applies fine). After this patch is applied and the kernel rebuilt, providing options snd-hda-intel model=acer-aspire in a file in /etc/modprobe.d fixes the sound: it's loud when requested, and the loudspeaker's off when a headphone is plugged in. Please consider applying if a new rev of the 2.6.26 package is due. Please consider applying in 2.6.27 as well (if 8ef355da is after 2.6.27) otherwise. Thanks in advance -- Cyrille -- Package-specific info: ** Version: Linux version 2.6.26-1-686 (Debian 2.6.26-8) ([EMAIL PROTECTED]) (gcc version 4.1.3 20080623 (prerelease) (Debian 4.1.2-23)) #1 SMP Thu Oct 9 15:18:09 UTC 2008 ** Command line: root=/dev/mapper/sda5_crypt ro clocksource=hpet usb.autosuspend=1 elevator=deadline ** Tainted: P (1) ** Kernel log: [ 21.090856] uvcvideo: Found UVC 1.00 device USB 2.0 Camera (0c45:62c0) [ 21.114857] input: USB 2.0 Camera as /class/input/input9 [ 21.139048] usbcore: registered new interface driver uvcvideo [ 21.139139] USB Video Class driver (v0.1.0) [ 21.555044] wifi0: Atheros AR2425 chip found (MAC 14.2, PHY SChip 7.0, Radio 10.2) [ 21.687737] Synaptics Touchpad, model: 1, fw: 7.2, id: 0x1c0b1, caps: 0xd04771/0xa40000 [ 21.735263] ath_pci: wifi0: Atheros 5424/2424: mem=0x75200000, irq=18 [ 21.739159] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 16 (level, low) -> IRQ 16 [ 21.739159] PCI: Setting latency timer of device 0000:00:1b.0 to 64 [ 21.744125] input: SynPS/2 Synaptics TouchPad as /class/input/input10 [ 21.771408] hda_codec: Unknown model for ALC268, trying auto-probe from BIOS... [ 21.807602] ACPI: PCI Interrupt 0000:04:00.3[A] -> GSI 19 (level, low) -> IRQ 19 [ 21.807602] PCI: Setting latency timer of device 0000:04:00.3 to 64 [ 21.810565] ACPI: PCI Interrupt 0000:00:1f.3[B] -> GSI 17 (level, low) -> IRQ 17 [ 28.242522] loop: module loaded [ 28.595641] pci_hotplug: PCI Hot Plug PCI Core version: 0.5 [ 36.476787] fuse init (API version 7.9) [ 36.869975] ReiserFS: dm-1: found reiserfs format "3.6" with standard journal [ 36.869975] ReiserFS: dm-1: using ordered data mode [ 36.870713] ReiserFS: dm-1: journal params: device dm-1, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30 [ 36.870713] ReiserFS: dm-1: checking transaction log (dm-1) [ 36.877358] ReiserFS: dm-1: Using r5 hash to sort names [ 44.988428] firmware: requesting intel-ucode/06-1c-02 [ 45.006182] firmware: requesting intel-ucode/06-1c-02 [ 45.030675] IA-32 Microcode Update Driver: v1.14a <[EMAIL PROTECTED]> [ 45.198341] microcode: CPU0 updated from revision 0x208 to 0x20a, date = 06042008 [ 45.199084] microcode: CPU1 updated from revision 0x208 to 0x20a, date = 06042008 [ 46.415089] NET: Registered protocol family 10 [ 46.415089] lo: Disabled Privacy Extensions [ 50.194954] lp: driver loaded but no devices found [ 50.312209] ppdev: user-space parallel port driver [ 52.487281] warning: `ntpd' uses 32-bit capabilities (legacy support in use) [ 59.752574] r8169: eth1: link down [ 59.752574] ADDRCONF(NETDEV_UP): eth1: link is not ready [ 61.516521] [drm] Initialized drm 1.1.0 20060810 [ 61.532507] ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 16 [ 61.532507] PCI: Setting latency timer of device 0000:00:02.0 to 64 [ 61.532629] [drm] Initialized i915 1.6.0 20060119 on minor 0 [ 61.752374] mtrr: no more MTRRs available [ 70.354308] ath0: no IPv6 routers present [ 175.964421] ACPI: PCI interrupt for device 0000:00:1b.0 disabled [ 183.943549] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 16 (level, low) -> IRQ 16 [ 183.943549] PCI: Setting latency timer of device 0000:00:1b.0 to 64 [ 185.169148] hda_intel: azx_get_response timeout, switching to polling mode: last cmd=0x003ba000 [ 257.080721] ACPI: PCI interrupt for device 0000:00:1b.0 disabled [ 293.197010] ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 16 (level, low) -> IRQ 16 [ 293.197010] PCI: Setting latency timer of device 0000:00:1b.0 to 64 [ 332.059279] mtrr: no more MTRRs available [ 396.732865] ACPI: PCI interrupt for device 0000:03:00.0 disabled [ 422.531606] ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 18 (level, low) -> IRQ 18 [ 422.531606] PCI: Setting latency timer of device 0000:03:00.0 to 64 [ 423.027582] MadWifi: ath_attach: Switching rfkill capability off. [ 423.034484] wifi0: Atheros AR2425 chip found (MAC 14.2, PHY SChip 7.0, Radio 10.2) [ 423.036562] ath_pci: wifi0: Atheros 5424/2424: mem=0x75200000, irq=18 [ 437.281421] ath0: no IPv6 routers present [ 483.787891] mmc0: new SDHC card at address b368 [ 483.868261] mmcblk0: mmc0:b368 SDC 3906560KiB [ 483.868261] mmcblk0: p1 [ 503.866415] kjournald starting. Commit interval 5 seconds [ 503.868391] EXT3-fs warning: maximal mount count reached, running e2fsck is recommended [ 504.054404] EXT3 FS on mmcblk0p1, internal journal [ 504.054404] EXT3-fs: recovery complete. [ 504.054637] EXT3-fs: mounted filesystem with ordered data mode. [ 747.592383] bogofilter[4639]: segfault at 0 ip 00000000 sp bfee761c error 4 in bogofilter[8048000+26000] [ 748.147110] bogofilter[4640]: segfault at 0 ip 00000000 sp bfdae15c error 4 in bogofilter[8048000+26000] [ 3291.992749] bogofilter[6616]: segfault at 0 ip 00000000 sp bfd7eefc error 4 in bogofilter[8048000+26000] [ 3292.399953] bogofilter[6617]: segfault at 0 ip 00000000 sp bfe5467c error 4 in bogofilter[8048000+26000] [ 3898.271598] bogofilter[6759]: segfault at 0 ip 00000000 sp bfa788dc error 4 in bogofilter[8048000+26000] [ 5107.967241] bogofilter[7232]: segfault at 0 ip 00000000 sp bfadec5c error 4 in bogofilter[8048000+26000] [ 5316.333038] r8169: eth1: link down [ 5316.333713] ADDRCONF(NETDEV_UP): eth1: link is not ready [ 5316.343116] ADDRCONF(NETDEV_UP): ath0: link is not ready [ 5416.513411] mtrr: no more MTRRs available [ 5454.259322] ADDRCONF(NETDEV_CHANGE): ath0: link becomes ready [ 5464.791122] ath0: no IPv6 routers present [ 5693.310007] usb 5-1: new high speed USB device using ehci_hcd and address 4 [ 5693.446462] usb 5-1: configuration #1 chosen from 1 choice [ 5693.449324] usb 5-1: New USB device found, idVendor=05e3, idProduct=0702 [ 5693.449358] usb 5-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0 [ 5693.449373] usb 5-1: Product: USB TO IDE [ 5693.693706] Initializing USB Mass Storage driver... [ 5693.693706] scsi2 : SCSI emulation for USB Mass Storage devices [ 5693.693706] usbcore: registered new interface driver usb-storage [ 5693.693706] USB Mass Storage support registered. [ 5693.705689] usb-storage: device found at 4 [ 5693.705702] usb-storage: waiting for device to settle before scanning [ 5698.730018] usb-storage: device scan complete [ 5698.730445] scsi 2:0:0:0: Direct-Access ST312002 6A 0811 PQ: 0 ANSI: 0 [ 5698.734175] sd 2:0:0:0: [sdb] 234441648 512-byte hardware sectors (120034 MB) [ 5698.734850] sd 2:0:0:0: [sdb] Test WP failed, assume Write Enabled [ 5698.734850] sd 2:0:0:0: [sdb] Assuming drive cache: write through [ 5698.737051] sd 2:0:0:0: [sdb] 234441648 512-byte hardware sectors (120034 MB) [ 5698.737971] sd 2:0:0:0: [sdb] Test WP failed, assume Write Enabled [ 5698.737971] sd 2:0:0:0: [sdb] Assuming drive cache: write through [ 5698.737971] sdb: sdb1 [ 5698.759172] sd 2:0:0:0: [sdb] Attached SCSI disk [ 5708.266418] kjournald starting. Commit interval 5 seconds [ 5708.266418] EXT3-fs warning: checktime reached, running e2fsck is recommended [ 5708.267136] EXT3 FS on sdb1, internal journal [ 5708.267136] EXT3-fs: mounted filesystem with ordered data mode. ** Loaded modules: Module Size Used by usb_storage 75936 1 ext3 105256 2 jbd 39444 1 ext3 mmc_block 8932 2 wlan_tkip 10272 1 wlan_ccmp 6336 1 ath_pci 202168 0 snd_hda_intel 313340 2 i915 25280 2 drm 65256 3 i915 binfmt_misc 7528 1 ppdev 6468 0 parport_pc 22500 0 lp 8164 0 parport 30988 3 ppdev,parport_pc,lp ipv6 235300 28 acpi_cpufreq 6796 1 cpufreq_powersave 1856 0 cpufreq_stats 3776 0 cpufreq_userspace 3172 0 cpufreq_ondemand 6476 1 cpufreq_conservative 5960 0 freq_table 4224 3 acpi_cpufreq,cpufreq_stats,cpufreq_ondemand microcode 8524 0 firmware_class 6816 1 microcode ext2 54344 1 mbcache 7108 2 ext3,ext2 fuse 42908 1 pci_hotplug 23460 0 loop 12748 0 wlan_scan_sta 11232 1 uvcvideo 45608 0 compat_ioctl32 1312 1 uvcvideo videodev 27520 1 uvcvideo v4l1_compat 12260 2 uvcvideo,videodev psmouse 32336 0 i2c_i801 7920 0 serio_raw 4740 0 i2c_core 19828 1 i2c_i801 rng_core 3940 0 pcspkr 2432 0 iTCO_wdt 9508 0 snd_pcm_oss 32800 0 snd_mixer_oss 12320 1 snd_pcm_oss video 16400 0 output 2912 1 video snd_pcm 62628 2 snd_hda_intel,snd_pcm_oss snd_timer 17800 1 snd_pcm battery 10180 0 jmb38x_ms 7460 0 ath_rate_sample 11008 1 ac 4196 0 button 6064 0 snd 45604 9 snd_hda_intel,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer memstick 9468 1 jmb38x_ms wlan 193168 6 wlan_tkip,wlan_ccmp,ath_pci,wlan_scan_sta,ath_rate_sample ath_hal 300672 3 ath_pci,ath_rate_sample soundcore 6368 1 snd snd_page_alloc 7816 2 snd_hda_intel,snd_pcm intel_agp 22300 1 agpgart 28776 3 drm,intel_agp acer_wmi 8852 0 led_class 3908 1 acer_wmi wmi 6440 1 acer_wmi joydev 8480 0 evdev 8000 9 reiserfs 189920 2 sha256_generic 11360 0 aes_i586 7744 2 aes_generic 29256 1 aes_i586 cbc 3264 1 usbhid 35904 0 hid 33184 1 usbhid ff_memless 4392 1 usbhid dm_crypt 11172 1 crypto_blkcipher 15236 3 cbc,dm_crypt dm_mirror 15104 0 dm_log 8452 1 dm_mirror dm_snapshot 14340 0 dm_mod 46184 11 dm_crypt,dm_mirror,dm_log,dm_snapshot sd_mod 22200 6 ide_pci_generic 3908 0 [permanent] ide_core 96168 1 ide_pci_generic ata_generic 4676 0 ata_piix 14180 3 libata 140384 2 ata_generic,ata_piix scsi_mod 129356 3 usb_storage,sd_mod,libata dock 8272 1 libata sdhci 13060 0 mmc_core 39932 2 mmc_block,sdhci ehci_hcd 28428 0 uhci_hcd 18672 0 usbcore 118160 6 usb_storage,uvcvideo,usbhid,ehci_hcd,uhci_hcd r8169 23684 0 thermal 15228 0 processor 32576 4 acpi_cpufreq,thermal fan 4164 0 thermal_sys 10856 4 video,thermal,processor,fan nilfs2 135684 0 ** PCI devices: 00:00.0 Host bridge [0600]: Intel Corporation Mobile 945GME Express Memory Controller Hub [8086:27ac] (rev 03) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- INTx- Latency: 0 Capabilities: <access denied> Kernel driver in use: agpgart-intel Kernel modules: intel-agp 00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile 945GME Express Integrated Graphics Controller [8086:27ae] (rev 03) (prog-if 00 [VGA controller]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 16 Region 0: Memory at 78480000 (32-bit, non-prefetchable) [size=512K] Region 1: I/O ports at 60c0 [size=8] Region 2: Memory at 60000000 (32-bit, prefetchable) [size=256M] Region 3: Memory at 78500000 (32-bit, non-prefetchable) [size=256K] Capabilities: <access denied> 00:02.1 Display controller [0380]: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller [8086:27a6] (rev 03) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Region 0: Memory at 78400000 (32-bit, non-prefetchable) [size=512K] Capabilities: <access denied> 00:1b.0 Audio device [0403]: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller [8086:27d8] (rev 02) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 16 Region 0: Memory at 78540000 (64-bit, non-prefetchable) [size=16K] Capabilities: <access denied> Kernel driver in use: HDA Intel Kernel modules: snd-hda-intel 00:1c.0 PCI bridge [0604]: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 [8086:27d0] (rev 02) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Bus: primary=00, secondary=01, subordinate=01, sec-latency=0 I/O behind bridge: 00005000-00005fff Memory behind bridge: 77300000-783fffff Prefetchable memory behind bridge: 0000000070000000-0000000070ffffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> Kernel driver in use: pcieport-driver Kernel modules: shpchp 00:1c.1 PCI bridge [0604]: Intel Corporation 82801G (ICH7 Family) PCI Express Port 2 [8086:27d2] (rev 02) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 I/O behind bridge: 00003000-00004fff Memory behind bridge: 76300000-772fffff Prefetchable memory behind bridge: 0000000071000000-00000000720fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> Kernel driver in use: pcieport-driver Kernel modules: shpchp 00:1c.2 PCI bridge [0604]: Intel Corporation 82801G (ICH7 Family) PCI Express Port 3 [8086:27d4] (rev 02) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Bus: primary=00, secondary=03, subordinate=03, sec-latency=0 I/O behind bridge: 00002000-00002fff Memory behind bridge: 75200000-762fffff Prefetchable memory behind bridge: 0000000072100000-00000000730fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> Kernel driver in use: pcieport-driver Kernel modules: shpchp 00:1c.3 PCI bridge [0604]: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 [8086:27d6] (rev 02) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Bus: primary=00, secondary=04, subordinate=04, sec-latency=0 I/O behind bridge: 00001000-00001fff Memory behind bridge: 74100000-751fffff Prefetchable memory behind bridge: 0000000073100000-00000000740fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> Kernel driver in use: pcieport-driver Kernel modules: shpchp 00:1d.0 USB Controller [0c03]: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #1 [8086:27c8] (rev 02) (prog-if 00 [UHCI]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 16 Region 4: I/O ports at 6080 [size=32] Kernel driver in use: uhci_hcd Kernel modules: uhci-hcd 00:1d.1 USB Controller [0c03]: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #2 [8086:27c9] (rev 02) (prog-if 00 [UHCI]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin B routed to IRQ 17 Region 4: I/O ports at 6060 [size=32] Kernel driver in use: uhci_hcd Kernel modules: uhci-hcd 00:1d.2 USB Controller [0c03]: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #3 [8086:27ca] (rev 02) (prog-if 00 [UHCI]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin C routed to IRQ 18 Region 4: I/O ports at 6040 [size=32] Kernel driver in use: uhci_hcd Kernel modules: uhci-hcd 00:1d.3 USB Controller [0c03]: Intel Corporation 82801G (ICH7 Family) USB UHCI Controller #4 [8086:27cb] (rev 02) (prog-if 00 [UHCI]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin D routed to IRQ 19 Region 4: I/O ports at 6020 [size=32] Kernel driver in use: uhci_hcd Kernel modules: uhci-hcd 00:1d.7 USB Controller [0c03]: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller [8086:27cc] (rev 02) (prog-if 20 [EHCI]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 16 Region 0: Memory at 78544400 (32-bit, non-prefetchable) [size=1K] Capabilities: <access denied> Kernel driver in use: ehci_hcd Kernel modules: ehci-hcd 00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev e2) (prog-if 01 [Subtractive decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Bus: primary=00, secondary=05, subordinate=05, sec-latency=32 Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> 00:1f.0 ISA bridge [0601]: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge [8086:27b9] (rev 02) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Capabilities: <access denied> Kernel modules: intel-rng, iTCO_wdt 00:1f.2 IDE interface [0101]: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller [8086:27c4] (rev 02) (prog-if 80 [Master]) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin B routed to IRQ 17 Region 0: I/O ports at 01f0 [size=8] Region 1: I/O ports at 03f4 [size=1] Region 2: I/O ports at 0170 [size=8] Region 3: I/O ports at 0374 [size=1] Region 4: I/O ports at 60a0 [size=16] Capabilities: <access denied> Kernel driver in use: ata_piix Kernel modules: ata_piix 00:1f.3 SMBus [0c05]: Intel Corporation 82801G (ICH7 Family) SMBus Controller [8086:27da] (rev 02) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Interrupt: pin B routed to IRQ 17 Region 4: I/O ports at 6000 [size=32] Kernel driver in use: i801_smbus Kernel modules: i2c-i801 02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 219 Region 0: I/O ports at 3000 [size=256] Region 2: Memory at 71010000 (64-bit, prefetchable) [size=4K] Region 4: Memory at 71000000 (64-bit, prefetchable) [size=64K] Expansion ROM at 71020000 [disabled] [size=128K] Capabilities: <access denied> Kernel driver in use: r8169 Kernel modules: r8169 03:00.0 Ethernet controller [0200]: Atheros Communications Inc. AR242x 802.11abg Wireless PCI Express Adapter [168c:001c] (rev 01) Subsystem: Foxconn International, Inc. Device [105b:e008] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 18 Region 0: Memory at 75200000 (64-bit, non-prefetchable) [size=64K] Capabilities: <access denied> Kernel driver in use: ath_pci Kernel modules: ath_pci, ath5k 04:00.0 System peripheral [0880]: JMicron Technologies, Inc. Device [197b:2382] Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 11 Region 0: Memory at 74100300 (32-bit, non-prefetchable) [size=256] Expansion ROM at 73100000 [disabled] [size=32K] Capabilities: <access denied> 04:00.2 SD Host controller [0805]: JMicron Technologies, Inc. Device [197b:2381] (prog-if 01) Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 19 Region 0: Memory at 74100200 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> Kernel driver in use: sdhci Kernel modules: sdhci 04:00.3 System peripheral [0880]: JMicron Technologies, Inc. Device [197b:2383] Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 19 Region 0: Memory at 74100100 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> Kernel driver in use: jmb38x_ms Kernel modules: jmb38x_ms 04:00.4 System peripheral [0880]: JMicron Technologies, Inc. Device [197b:2384] Subsystem: Acer Incorporated [ALI] Device [1025:015b] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 11 Region 0: Memory at 74100000 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> -- System Information: Debian Release: lenny/sid APT prefers testing APT policy: (800, 'testing'), (600, 'unstable') Architecture: i386 (i686) Kernel: Linux 2.6.26-1-686 (SMP w/2 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages linux-image-2.6.26-1-686 depends on: ii debconf [debconf-2.0] 1.5.22 Debian configuration management sy ii initramfs-tools [linux-initra 0.92j tools for generating an initramfs ii module-init-tools 3.4-1 tools for managing Linux kernel mo Versions of packages linux-image-2.6.26-1-686 recommends: ii libc6-i686 2.7-14 GNU C Library: Shared libraries [i Versions of packages linux-image-2.6.26-1-686 suggests: ii grub 0.97-47 GRand Unified Bootloader (Legacy v pn linux-doc-2.6.26 <none> (no description available) -- debconf information excluded
commit 8ef355da64ff087b6f26c4c28a14753861e83e4b Author: Kailang Yang <[EMAIL PROTECTED]> Date: Tue Aug 26 13:10:22 2008 +0200 ALSA: hda - Add support of Acer Aspire One Added the support of Acer Aspire One with ALC269 codec chip. Signed-off-by: Kailang Yang <[EMAIL PROTECTED]> Signed-off-by: Takashi Iwai <[EMAIL PROTECTED]> Signed-off-by: Jaroslav Kysela <[EMAIL PROTECTED]> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index e558264..99c1de6 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -113,6 +113,7 @@ enum { ALC268_3ST, ALC268_TOSHIBA, ALC268_ACER, + ALC268_ACER_ASPIRE_ONE, ALC268_DELL, ALC268_ZEPTO, #ifdef CONFIG_SND_DEBUG @@ -10358,6 +10359,14 @@ static struct hda_verb alc268_toshiba_verbs[] = { { } /* end */ }; +static struct hda_input_mux alc268_acer_lc_capture_source = { + .num_items = 2, + .items = { + { "i-Mic", 0x6 }, + { "E-Mic", 0x0 }, + }, +}; + /* Acer specific */ /* bind volumes of both NID 0x02 and 0x03 */ static struct hda_bind_ctls alc268_acer_bind_master_vol = { @@ -10410,6 +10419,21 @@ static int alc268_acer_master_sw_put(struct snd_kcontrol *kcontrol, return change; } +static struct snd_kcontrol_new alc268_acer_aspire_one_mixer[] = { + /* output mixer control */ + HDA_BIND_VOL("Master Playback Volume", &alc268_acer_bind_master_vol), + { + .iface = SNDRV_CTL_ELEM_IFACE_MIXER, + .name = "Master Playback Switch", + .info = snd_hda_mixer_amp_switch_info, + .get = snd_hda_mixer_amp_switch_get, + .put = alc268_acer_master_sw_put, + .private_value = HDA_COMPOSE_AMP_VAL(0x14, 3, 0, HDA_OUTPUT), + }, + HDA_CODEC_VOLUME("Mic Boost Capture Volume", 0x18, 0, HDA_INPUT), + { } +}; + static struct snd_kcontrol_new alc268_acer_mixer[] = { /* output mixer control */ HDA_BIND_VOL("Master Playback Volume", &alc268_acer_bind_master_vol), @@ -10427,6 +10451,16 @@ static struct snd_kcontrol_new alc268_acer_mixer[] = { { } }; +static struct hda_verb alc268_acer_aspire_one_verbs[] = { + {0x12, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, + {0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP}, + {0x15, AC_VERB_SET_UNSOLICITED_ENABLE, ALC880_HP_EVENT | AC_USRSP_EN}, + {0x18, AC_VERB_SET_UNSOLICITED_ENABLE, AC_USRSP_EN | ALC880_MIC_EVENT}, + {0x23, AC_VERB_SET_CONNECT_SEL, 0x06}, + {0x23, AC_VERB_SET_AMP_GAIN_MUTE, 0xa017}, + { } +}; + static struct hda_verb alc268_acer_verbs[] = { {0x12, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, /* internal dmic? */ {0x13, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN}, @@ -10460,6 +10494,47 @@ static void alc268_acer_init_hook(struct hda_codec *codec) alc268_acer_automute(codec, 1); } +/* toggle speaker-output according to the hp-jack state */ +static void alc268_aspire_one_speaker_automute(struct hda_codec *codec) +{ + unsigned int present; + unsigned char bits; + + present = snd_hda_codec_read(codec, 0x15, 0, + AC_VERB_GET_PIN_SENSE, 0) & 0x80000000; + bits = present ? AMP_IN_MUTE(0) : 0; + snd_hda_codec_amp_stereo(codec, 0x0f, HDA_INPUT, 0, + AMP_IN_MUTE(0), bits); + snd_hda_codec_amp_stereo(codec, 0x0f, HDA_INPUT, 1, + AMP_IN_MUTE(0), bits); +} + + +static void alc268_acer_mic_automute(struct hda_codec *codec) +{ + unsigned int present; + + present = snd_hda_codec_read(codec, 0x18, 0, + AC_VERB_GET_PIN_SENSE, 0) & 0x80000000; + snd_hda_codec_write(codec, 0x23, 0, AC_VERB_SET_CONNECT_SEL, + present ? 0x0 : 0x6); +} + +static void alc268_acer_lc_unsol_event(struct hda_codec *codec, + unsigned int res) +{ + if ((res >> 26) == ALC880_HP_EVENT) + alc268_aspire_one_speaker_automute(codec); + if ((res >> 26) == ALC880_MIC_EVENT) + alc268_acer_mic_automute(codec); +} + +static void alc268_acer_lc_init_hook(struct hda_codec *codec) +{ + alc268_aspire_one_speaker_automute(codec); + alc268_acer_mic_automute(codec); +} + static struct snd_kcontrol_new alc268_dell_mixer[] = { /* output mixer control */ HDA_CODEC_VOLUME("Speaker Playback Volume", 0x02, 0x0, HDA_OUTPUT), @@ -10987,6 +11062,7 @@ static const char *alc268_models[ALC268_MODEL_LAST] = { [ALC268_3ST] = "3stack", [ALC268_TOSHIBA] = "toshiba", [ALC268_ACER] = "acer", + [ALC268_ACER_ASPIRE_ONE] = "acer-aspire", [ALC268_DELL] = "dell", [ALC268_ZEPTO] = "zepto", #ifdef CONFIG_SND_DEBUG @@ -11001,6 +11077,8 @@ static struct snd_pci_quirk alc268_cfg_tbl[] = { SND_PCI_QUIRK(0x1025, 0x012e, "Acer Aspire 5310", ALC268_ACER), SND_PCI_QUIRK(0x1025, 0x0130, "Acer Extensa 5210", ALC268_ACER), SND_PCI_QUIRK(0x1025, 0x0136, "Acer Aspire 5315", ALC268_ACER), + SND_PCI_QUIRK(0x1025, 0x015b, "Acer Aspire One", + ALC268_ACER_ASPIRE_ONE), SND_PCI_QUIRK(0x1028, 0x0253, "Dell OEM", ALC268_DELL), SND_PCI_QUIRK(0x103c, 0x30cc, "TOSHIBA", ALC268_TOSHIBA), SND_PCI_QUIRK(0x1043, 0x1205, "ASUS W7J", ALC268_3ST), @@ -11078,6 +11156,23 @@ static struct alc_config_preset alc268_presets[] = { .unsol_event = alc268_acer_unsol_event, .init_hook = alc268_acer_init_hook, }, + [ALC268_ACER_ASPIRE_ONE] = { + .mixers = { alc268_acer_aspire_one_mixer, + alc268_capture_alt_mixer }, + .init_verbs = { alc268_base_init_verbs, alc268_eapd_verbs, + alc268_acer_aspire_one_verbs }, + .num_dacs = ARRAY_SIZE(alc268_dac_nids), + .dac_nids = alc268_dac_nids, + .num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt), + .adc_nids = alc268_adc_nids_alt, + .capsrc_nids = alc268_capsrc_nids, + .hp_nid = 0x03, + .num_channel_mode = ARRAY_SIZE(alc268_modes), + .channel_mode = alc268_modes, + .input_mux = &alc268_acer_lc_capture_source, + .unsol_event = alc268_acer_lc_unsol_event, + .init_hook = alc268_acer_lc_init_hook, + }, [ALC268_DELL] = { .mixers = { alc268_dell_mixer, alc268_beep_mixer }, .init_verbs = { alc268_base_init_verbs, alc268_eapd_verbs,