Bug#505250: linux-image-2.6.26-1-686: Acer Aspire One sound patch from post-2.6.26 git applies cleanly
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) (waldi@debian.org) (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
<tigran@aivazian.fsnet.co.uk>
[ 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 <kailang@realtek.com>
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 <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
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,
Reply to: