вторник, 25 декабря 2012 г.

Alsa Truble

Сегодня (как и несколько безмолвных дней до этого) решил потрахаться с alsa. Стоит и молчит, зараза.
Облазил половину интернета, но ничего в итоге не нашёл путного. У людей это чаще всего не настраивалось. У меня стоит вшитая звуковуха SiS SI7012.
Добавил:

cat /etc/modprobe.d/aliases.conf
# These are the standard aliases for devices and kernel drivers.
# This file does not need to be modified.
#
# No new aliases should be added to this file, please file a bug against
# the kernel for any aliases which are still not built-in.
# network protocols ##########################################################
# alias net-pf-1  unix
# alias net-pf-2  ipv4
# alias net-pf-3  ax25
# alias net-pf-4  ipx
# alias net-pf-5  appletalk
# alias net-pf-6  netrom
# 7 BRIDGE
# alias net-pf-8  atm
# alias net-pf-9  x25
# alias net-pf-10 ipv6
# alias net-pf-11 rose
# alias net-pf-12 decnet
# 13 NETBEUI
# alias net-pf-15 af_key
# alias net-pf-16 af_netlink
# alias net-pf-17 af_packet
# 18 ASH
# alias net-pf-19 econet
# alias net-pf-20 atm
# 22 SNA
# alias net-pf-23 irda
# alias net-pf-24 pppoe
# 25 WANROUTER
# alias net-pf-26 llc2
# alias net-pf-31 bluetooth
# alias net-pf-33 af_rxrpc
alias net-pf-16-proto-1 wire
alias net-pf-16-proto-3 ip_queue
# alias net-pf-16-proto-4 inet_diag
# alias net-pf-16-proto-5 ipt_ULOG
# alias net-pf-16-proto-6 xfrm_user
alias net-pf-16-proto-8 scsi_transport_iscsi
alias net-pf-16-proto-9 audit
alias net-pf-16-proto-11 cn
# alias net-pf-16-proto-12 nfnetlink
alias net-pf-16-proto-13 ip6_queue
# alias net-pf-16-proto-14 dn_rtmsg
# executables formats ########################################################
install binfmt-0000 /bin/true
alias binfmt-204 binfmt_aout
alias binfmt-263 binfmt_aout
alias binfmt-264 binfmt_aout
alias binfmt-267 binfmt_aout
alias binfmt-387 binfmt_aout
# block devices ##############################################################
alias block-major-3-*  ide_generic
alias block-major-22-* ide_generic
alias block-major-33-* ide_generic
alias block-major-34-* ide_generic
alias block-major-37-* ide_tape
alias block-major-44-* ftl
alias block-major-46-* pcd
alias block-major-47-* pf
alias block-major-56-* ide_generic
alias block-major-57-* ide_generic
alias block-major-58-* lvm_mod
alias block-major-88-* ide_generic
alias block-major-89-* ide_generic
alias block-major-90-* ide_generic
alias block-major-91-* ide_generic
alias block-major-93-* nftl
alias block-major-97-* pg
# character devices ##########################################################
alias char-major-10-1 psmouse
alias char-major-10-139 openprom
alias char-major-10-157 applicom
alias char-major-10-181 toshiba
alias char-major-10-183 hw_random
alias char-major-10-187 irnet
alias char-major-10-189 ussp
alias char-major-10-250 hci_vhci
alias char-major-13-0  joydev
alias char-major-13-1  joydev
alias char-major-13-2  joydev
alias char-major-13-3  joydev
alias char-major-13-32 mousedev
alias char-major-13-33 mousedev
alias char-major-13-34 mousedev
alias char-major-13-35 mousedev
alias char-major-13-63 mousedev
alias char-major-13-64 evdev
alias char-major-13-65 evdev
alias char-major-13-66 evdev
alias char-major-13-67 evdev
alias char-major-19-* cyclades
alias char-major-20-* cyclades
alias char-major-22-* pcxx
alias char-major-23-* pcxx
alias char-major-27-* ftape
alias char-major-34-* scc
alias char-major-35-* tclmidi
alias char-major-48-* riscom8
alias char-major-49-* riscom8
alias char-major-57-* esp
alias char-major-58-* esp
alias char-major-63-* kdebug
alias char-major-67-* coda
alias char-major-75-* specialix
alias char-major-76-* specialix
alias char-major-81-* videodev
alias char-major-83-* vtx
alias char-major-89-* i2c_dev
alias char-major-90-* mtdchar
alias char-major-96-* pt
alias char-major-97-* pg
alias char-major-107-* 3dfx
alias char-major-109-* lvm_mod
alias char-major-166-* cdc_acm
alias char-major-171-0 raw1394
alias char-major-171-1 video1394
alias char-major-171-2 dv1394
alias char-major-171-3 amdtp
alias char-major-180-* usbcore
alias char-major-195-* nvidia
alias char-major-200-* vxspec
alias char-major-202-* msr
alias char-major-203-* cpuid
alias char-major-206-* osst
alias char-major-208-* ussp
alias char-major-227-* tub3270
#alias char-major-240-* usb-serial
#alias char-major-240-* hsfserial
#alias char-major-241-* hsfserial
# misc #######################################################################
#alias bt-proto-0 l2cap
#alias bt-proto-2 sco
#alias bt-proto-3 rfcomm
#alias bt-proto-4 bnep
#alias bt-proto-5 cmtp
#alias bt-proto-6 hidp
alias bt-proto-7 avdtp
alias cipcb0 cipcb
alias cipcb1 cipcb
alias cipcb2 cipcb
alias cipcb3 cipcb
alias dummy0 dummy
alias dummy1 dummy
alias plip0 plip
alias plip1 plip
alias slip0 slip
alias slip1 slip
alias tunl0 ipip
alias gre0 ip_gre
alias usbdevfs usbcore
alias nfs4 nfs
# work around other kernel issues ############################################
# The EHCI driver should be loaded before the ones for low speed controllers
# or some devices may be confused when they are disconnected and reconnected.
softdep uhci-hcd pre: ehci-hcd
softdep ohci-hcd pre: ehci-hcd
Затем:
cat /etc/modprobe.d/alsa-base.conf
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7
# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd-ioctl32 ; /sbin/modprobe --quiet snd-seq ; }
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modprobe --quiet snd-seq-midi ; : ; }
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && { /sbin/modprobe --quiet snd-emu10k1-synth ; : ; }
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
# Keep snd-pcsp from beeing loaded as first soundcard
options snd-pcsp index=-2
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=-2
Но это не помогло и более того - alsamixer перестал запускаться. Переустановка не помогла.
Решил посмотреть в BIOS. Там ничего интересного не обнаружилось, но поменял настройки видио с AGP на PCI. Перезагрузился. И... О, чудо! Оно реально каким-то чудом вдруг заработало само собой. Не знаю даже, что именно сыграло роль - настройки, или BIOS, но, если вдруг оно кому надо, то попробуйте поковырять BIOS.