compilando este driver como um módulo no linux, sem uma recompilação completa do kernel

0

Eu tenho usado um mbox2 como uma placa de som externa no windows - ele soa melhor do que a minha placa de som onboard ou meu ipod, e praticamente balança minhas meias. Há alguns pequenos problemas - ele só funciona com aplicativos que suportam ASIO e suporta apenas um único fluxo de cada vez - o que não é tão ruim - os sons do sistema funcionam sobre a placa de som normal e a música sobre o mbox2.

Agora, há um driver experimental para o linux que, apesar de incompleto e sem suporte, e possivelmente não será atualizado no futuro, que vai me deixar usar o mbox2 no linux, e não tem algumas das deficiências do driver do windows. No entanto, isso significa compilar um kernel totalmente novo, e prefiro não fazer isso. Eu estou querendo saber se há uma maneira de compilar isso como um módulo (os comentários sugerem isso) por conta própria, em vez de compilar um kernel inteiro.

    
por Journeyman Geek 25.06.2010 / 08:23

2 respostas

0

Existem algumas possibilidades. Se é algo que adiciona uma nova opção ao kernel, você precisa corrigir uma fonte do kernel (provavelmente a mais antiga) e executar make menuconfig . Lá você pode ativá-lo apenas como um módulo. Claro, você tem que recompilar seu kernel. (Se a caixa que está rodando o crappy do linux ( cough lenta), você pode apenas compilar e copiar o kernel lá. Se você sabe como, ou tem vontade para isso.)

Ah, verifiquei a fonte. Sim, somente o kernel de correção funciona, já que isso não é um módulo. Ele modifica o comportamento básico da ALSA se eu puder ver isso corretamente. Então, sim, você pode querer compilá-lo como um módulo, mas duvido que seja possível. (Tente usar a árvore -git, talvez ele tenha corrigido isso ... pois isso NÃO é uma maneira aceitável de consertar as coisas.)

    
por 25.06.2010 / 08:46
0

Embora seja possível construí-lo como um módulo, ele é destinado a substituir um módulo existente fornecido pelo pacote do kernel para sua distribuição. Como tal, você perderá todos os avanços feitos nesse módulo no kernel da linha principal.

A maneira correta de lidar com isso seria pegar o pacote fonte do kernel para sua distro, encontrar o código específico da placa de som na fonte que ele fornece, fazer o patch no pacote fonte e reconstruir o pacote binário. É um caminho mais difícil, mas terá melhores resultados.

    
por 25.06.2010 / 08:53

Tags