Yocto는 무엇이고 왜 필요하게 되었을까?미리 설명하자면, 임베디드 리눅스 시스템을 제품에 맞게 구성하는데 불편함이 있었기 때문이다.하드웨어를 구성한 뒤, 그 하드웨어에 맞는 툴체인을 구성한다. 그리고 부트로더로 커널을 메모리로 로드하고 커널 빌드를 진행. 파일시스템
1편에 이어 이제 본격적으로 Yocto에 대해 알아보자.Yocto Project는 임베디드 리눅스 시스템을 자동으로 빌드하는 통합 빌드 프레임워크.하나의 명령으로,툴체인 (크로스 컴파일러)부트로더 (U-Boot 등)커널루트파일시스템 (BusyBox, 라이브러리, 드라이

안녕하세요.이 게시글을 시작으로 디바이스 드라이버 + Yocto 프로젝트를 진행해보려 합니다.기본적인 커널 메시지를 찍는 모듈을 만들어보는 것부터 시작하여, 카메라 디바이스 드라이버를 만들고 만들어진 디바이스 드라이버를 레이어로 올려 yocto를 통해 이미지를 빌드해보

안녕하세요. 오늘은 캐릭터 디바이스 드라이버를 개발하는 실습을 진행해보도록 하겠습니다.개발환경은 라즈베리파이4 보드(linux) 에서 진행하였습니다.우선 저번에 진행한 사항과 크게 다르지 않습니다만, 캐릭터 디바이스 드라이버는 해당 장치에 대한 동작을 정의해야한다는 점

안녕하세요.오늘은 I2C driver 실습을 진행해보도록 하겠습니다.우선 교육을 진행하며 사용한 PCF8591 모듈(이하 PCF)을 이용하여 라즈베리파이와 I2C 통신 드라이버를 구현할 것임을 말씀드립니다.PCF8591 = I2C 기반 ADC(4채널) + DAC(1채널
안녕하세요.전편에서까지는 I2C 드라이버 설계를 진행해보았습니다.하지만, probe() 함수에서 ADC 값을 하나 받아오는 것에 그치고, 이후 추가적인 사용이 불가능해서 불편한 부분이 있었습니다.오늘은 이 I2C 드라이버를 캐릭터 디바이스 드라이버에 결합시켜서, 장치파

안녕하세요.오늘은 PCF8591 디바이스의 또 다른 기능인 DAC 를 드라이버에 추가하고 실제 출력을 확인해보는 시간을 가지도록 하겠습니다.코드에서 보이는 바와 같이, 본 드라이버에서는 pcf8591 디바이스 노드뿐만 아니라 pcf8591_dac이라는 별도의 디바이스
이번 게시글에서는 디바이스 트리 오버레이 방식을 통해 PCF8591 디바이스를 라즈베리파이가 자동적으로 인식할 수 있게끔 하고, UART 연결을 통해 부팅로그를 확인해보도록 하겠습니다.디바이스 트리는 “이 보드에 어떤 하드웨어가 어떻게 연결되어 있는지”를 커널에게 알려

안녕하세요. 오늘은 UART 통신으로 라즈베리파이의 부팅 로그를 확인하는 과정을 진행해보도록 하겠습니다.사실 교육을 진행할 당시에도 UART를 이용해 커널의 부팅 로그를 확인하는 과정을 진행했습니다. 하지만 그 당시에는 UART 선 연결하고 간단한 세팅을 해주면 볼 수