Sem olhar o código-fonte do kernel, isso dependeria do chip SD específico e de seu driver de kernel. Você deve olhar os dados e a fonte do kernel. Por exemplo, no meu laptop:
$ lspci | grep SD
15:00.2 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 21)
Presumivelmente, o chip implementa a máquina de estado SD no hardware e alguma interface chip-a-host (PCI, no caso da minha). As especificidades da conexão chip a cartão podem ser abstraídas pelo chip, mas é provável que a escolha possa ser influenciada pelo host. O kernel provavelmente irá com os meios mais rápidos disponíveis, a menos que haja um bug conhecido.
Atualização: verificou a fonte do kernel. Se uma placa suportar transferências de 4 bits, elas serão ativadas automaticamente. Você pode ver isso em drivers/mmc/core/mmc.c
, function mmc_init_card()
. Para o Linux 2.6.38, a linha 489 parece ativar transferências de alta velocidade, e a linha 535 parece ativar transferências de 4 bits. Não deixe o 'mmc' confundir você. Este diretório contém os drivers que lidam com cartões SD (incluindo SDIO), bem como com o MMC.