Buildroot - faltando módulos do kernel i2c

1

Eu usei o Buildroot para construir um sistema operacional mínimo. Durante a etapa de configuração com o utilitário menuconfig especificado para instalar ferramentas I2C. A opção foi é

Target Package -> Hardware handling -> i2c-tools

Mas quando eu carrego o módulo correspondente, recebo o seguinte erro:

$sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep

Além disso, a lista no arquivo modules.dep está vazia.

$ cat /lib/modules/$(uname -r)/modules.dep
$

Eu provavelmente perdi algo importante.

Eu tenho que copiar manualmente os módulos do kernel da pasta de instalação do Buildroot para o sistema de destino? Como fazer as ferramentas i2c funcionando?

    
por UserK 16.02.2015 / 02:02

2 respostas

1

Pelo que entendi, Target Package -> Hardware handling -> i2c-tools refere-se a utilitários do espaço do usuário i2c.

O que você sente falta são os módulos i2c do kernel space, você precisa adicioná-los em make linux-menuconfig .

    
por 17.02.2015 / 09:30
1

Como sugerido pelo Mali, precisamos ativar o suporte ao kernel para o protocolo de transmissão SPI e I2C. Eu fiz isso compilando o kernel separadamente, mas podemos fazê-lo a partir da pasta Buildroot runnning make linux-menuconfig

Durante a configuração do kernel 3.8.13, adicione:

linux-3.8.13$ make menuconfig    
  • Vá para o menu Drivers de dispositivo e verifique o suporte I2C pressionando "Y".

  • Entre no menu I2C, vá para interface do dispositivo I2C e pressione ‘ M ’ para suporte ao módulo.

  • Entre no menu Suporte ao barramento de hardware I2C e pressione ‘M’ BCM2708 BSC

  • Verifique o suporte a SPI pressionando "Y" e insira o submenu

  • Pressione ‘M’ perto do driver do controlador SPI BCM2708

Cross compile e uma vez feito você pode carregar os módulos com

modprobe i2c-dev
modprobe i2c-bcm2708
modprobe spi-bcm2708
    
por 18.02.2015 / 01:52