Buildroot를 사용하여 최소 운영 체제를 구축했습니다. 유틸리티를 사용한 구성 단계에서 menuconfig
I2C 도구를 설치하도록 지정했습니다. 옵션은 다음과 같습니다
Target Package -> Hardware handling -> i2c-tools
하지만 해당 모듈을 로드하면 다음 오류가 발생합니다.
$sudo modprobe i2c-dev
modprobe: module i2c-dev not found in modules.dep
또한 파일의 목록이 modules.dep
비어 있습니다.
$ cat /lib/modules/$(uname -r)/modules.dep
$
제가 중요한 것을 놓쳤을 수도 있습니다.
Buildroot 설치 폴더에서 대상 시스템으로 커널 모듈을 수동으로 복사해야 합니까? i2c 도구를 올바르게 작동시키는 방법은 무엇입니까?
답변1
내가 아는 한, Target Package -> Hardware handling -> i2c-tools
이는 사용자 공간 i2c 유틸리티를 의미합니다.
누락된 것은 커널 공간 i2c 모듈이므로 make linux-menuconfig
.
답변2
Mali가 제안한 대로 SPI 및 I2C 전송 프로토콜에 대한 커널 지원을 활성화해야 합니다. 커널을 별도로 컴파일했지만 실행의 Buildroot 폴더에서 수행할 수 있습니다.make linux-menuconfig
커널 3.8.13 구성 중에 다음을 추가하십시오.
linux-3.8.13$ make menuconfig
가다장치 드라이버메뉴와 확인I2C 지원"Y"를 누르세요.
I2C 메뉴에 들어가서 들어갑니다.I2C 장치 인터페이스그리고 '를 누르세요.중간 사이즈' 모듈 지원을 위해.
입력하다I2C 하드웨어 버스 지원메뉴를 선택하고 "M"을 누르세요BCM2708 균형성과표
조사하다SPI 지원"Y"를 누르고 하위 메뉴로 들어갑니다.
근처에서 "M"을 누르세요BCM2708 SPI 컨트롤러 드라이버
크로스 컴파일하고 완료되면 모듈을 로드할 수 있습니다.
modprobe i2c-dev
modprobe i2c-bcm2708
modprobe spi-bcm2708