Wow isso levou muito tempo para resolver.
A partir do Linux 3.10 (agora uso o ArchLinux em vez do Ubuntu), o driver snd-hda-intel
funcionará automaticamente corretamente com os conectores de fone de ouvido (ou seja, os alto-falantes internos serão desativados corretamente quando os fones de ouvido estiverem conectados), mas o subwoofer será assumido para ser conectado à porta errada. Você pode corrigir isso manipulando manualmente a porta em que o woofer está conectado usando hdajackretask
in alsa-tools-gui
(para mim, era 0x10). A ferramenta também fornece os meios para tornar isso uma opção de inicialização, para que esse processo não precise ser repetido.