Update dos drivers alsa

S.T.E.E.L.

Power Member
Alguém sabe como é que se faz o update dos drivers alsa (julgo não ser assim tão simples, já que estão embutidos no kernel, se percebi bem)?

cumps
 
das 2 uma:
- ou a tua distro suporta os 2 funcionamentos dos drivers alsa (in-kernel e out-of-kernel)
- ou so suporta um dos metodos.

De qualquer das maneiras, ou actualizas o kernel para uma versão mais recente, ou actualizas o driver externo, agora tudo depende da distro k usas.
 
Ontem tentei compilar o kernel mas primeiro disse-me que faltava um header (sound.h). Após descobrir que era um header da lib dos alsa, deu-me um erro de compilação ("pointer to incomplete type").

O problema é que fazendo apenas ./configure; make ; make install não consigo que o kernel utilize a versão mais recente (julgo?).
 
das 2 uma:
- ou a tua distro suporta os 2 funcionamentos dos drivers alsa (in-kernel e out-of-kernel)
- ou so suporta um dos metodos.

De qualquer das maneiras, ou actualizas o kernel para uma versão mais recente, ou actualizas o driver externo, agora tudo depende da distro k usas.
Não percebi.. Conheces alguma distro que não permita utilizar drivers como módulos do kernel?

Quanto ao tópico, o procedimento geral é colocares os drivers alsa como módulos na configuraçao do kernel, recompilares o kernel, instalares (pela source ou pelo package manager de eleição - provavelmente o apt se estás em ubuntu) o pacote com os drivers ALSA e fazeres reboot para o novo kernel.

Só não percebi o que estás a tentar instalar com ./configure, etc.
 
Estes passos são para um sistema Gentoo, não trabalho suficientemente com Ubuntu para saber os passos exactos. Aconselho a leitura de um tutorial para Ubuntu para o caso de os comandos não serem exactamente iguais.

Em primeiro lugar vais ao kernel e colocas os drivers ALSA como módulos.
Código:
# cd /usr/src/linux/
# make menuconfig
Algures em [i]Device drivers[/i] há de estar a opção ALSA. Colocas como módulo ([M] em vez de [*]).
Recompilas o kernel
Código:
make && make modules_install
e copias para a partição de boot (ou onde está localizada) a imagem do kernel e
Código:
# cp arch/i386/bzImage /local/do/kernel/compilado
# cp System.map /boot/System.map-x.xx.xx
# cp .config /boot/config-x.xx.xx
Se não copiaste a nova imagem para cima da anterior, tens que alterar o grub.conf e criar uma entrada para o novo kernel.

De seguida instalas o driver alsa (tar -xvzf, ./configure, make, make install - ou então utilizas o apt-get que há de ser mais fácil para quem não está habituado). Colocas o driver a ser carregado durante o boot e fazes reboot. Voilá.
 
Bem... não consegui fazer nada disto... :( falta sempre alguma coisa... bah... vou esperar por um update oficial. Obrigado na mesma pelas dicas, sempre fiquei a saber mais alguma coisa.
 
E é necessário ter problemas de hardware para querer a versão mais recente? ;)

r3p3k disse:
podes usar os modulos do kernel (built-in ou não) ou podes usar o package alsa-drivers.
Eu sei disso, mas conheces alguma distro que não funcione assim?
 
A placa é uma e-mu 1212m.

Mas sinceramente, não me apetece andar mais de volta disto...
Tentei umas vezes no fds e não consegui nada. E dps falta um header qualquer ou lib e eu não sei que package ir buscar, é um pouco irritante (pelo menos para mim). Não vale a pena, é para fins "educativos", mas sem stresses. :D

Prefiro tentar outra vez daqui a uns meses, entretanto já deve ter aparecido algum update oficial.

cumps
 
Em linux "dá um erro qualquer" ou "falta uma lib manhosa" não fornece grandes dados para que te possamos ajudar. Posta os erros que te aparecem, quando e o que estavas a fazer quando eles apareceram, etc, e provavelmente resolve-se o teu problema. E sempre ficas com mais conhecimentos para quando for alguma coisa que precises mesmo e não apenas os drivers de som.
 
Ontem ainda fiz uma última tentativa, e acho que consegui.

O erro nos headers resolvi apagando tudo o que estava dentro da pasta include/alsa (deviam ser da anterior versão 1.014). Não foi uma solução muito elegante, mas resolveu o problema.

O erro da lib resolvi instalando o ncurses 5.6...

o cat proc/asound/version já me mostra a versão 1.015.

Mas agora o jackd não funciona, suponho (correndo o risco de estar a dizer uma grande bacorada) que seja por causa desta versão ser diferente daquela com que que o kernel foi compilado.
 
A placa é uma e-mu 1212m.

Mas sinceramente, não me apetece andar mais de volta disto...
Tentei umas vezes no fds e não consegui nada. E dps falta um header qualquer ou lib e eu não sei que package ir buscar, é um pouco irritante (pelo menos para mim). Não vale a pena, é para fins "educativos", mas sem stresses. :D

Prefiro tentar outra vez daqui a uns meses, entretanto já deve ter aparecido algum update oficial.

cumps

procura na head-fi..andava la algo para essa placa e linux senão me engano...já não vou la ha bastante tempo...abc
 
Hum, não funciona mesmo... é detectada, dá para alterar definições do hardware (routing, samplerate, etc), mas não há som. Não sou o único com esse problema, pelo que li. Talvez na próxima versão dos drivers já funcione...
 
Back
Topo