커널 구성을 다른 아키텍처로 포팅

커널 구성을 다른 아키텍처로 포팅

.config나는 만족스러운 x86용 커널 설정을 갖고 있습니다 .

이제 기본적으로 사전 구성된 설정이 포함된 몇 가지 ARM 기반 장치(일부는 비디오 출력 없음)가 있습니다.

모든 대상의 구성을 가능한 한 가깝게 가져오고 싶습니다. 예를 들어 모두 동일한 파일 시스템을 활성화하는 등입니다.

단순히 .config주변을 복사하는 것은 하드웨어에 따라 작동하지 않으며 중요한 설정(기본 구성과 함께 제공됨)이 손실됩니다.

기본적으로 낮은 수준 설정(프로세서 세부 정보, I/O 매핑 등)은 그대로 두어야 하며 높은 수준 설정(활성화된 파일 시스템, USB 장치 드라이버, 보안 옵션 및 그렇지 않은 수많은 설정)은 그대로 두어야 합니다. 지금 생각해보면)는 모든 구성에서 공유되어야 합니다.

그러한 상황에 대한 일종의 "모범 사례"가 있습니까? 아니면 실제로 3000개 이상의 설정을 수동으로 확인해야 합니까?

답변1

Linux 커널 구성에는 장치용 드라이버 활성화와 같은 하드웨어 관련 세부 정보가 많이 포함되어 있습니다. 한 아키텍처에서 다른 아키텍처로 이동할 수 있는 가능성은 거의 없습니다(x86 및 x86_64와 같이 밀접하게 관련된 아키텍처는 제외). 게다가 ARM 칩은 온칩 장치 메뉴에서 구성되므로 특별한 구성 처리가 필요합니다. 이로 인해 ARM은 x86_64 및 SPARC64보다 PC의 구성 처리가 훨씬 더 다릅니다.

특정 용도에 맞게 구성을 한 번 조정해야 합니다. 많은 작업 없이도 구성 영역을 그대로 유지할 수 있는 메뉴 기반 구성 도구 중 하나를 사용해야 합니다.

답변2

파티에 늦었다는 건 알지만 제 답변이 다른 사람에게 도움이 되기를 바랍니다.

  1. .configx86이 내부에 있는 ARM SoC에 커널 소스를 복사합니다.
  2. run , x86의 값 과 ARM의 기본 값을 가져와 make olddefconfig새 값을 생성합니다..config.config
  3. 이제 커널을 빌드하면 ARM의 일부 기본 설정과 x86 설정의 일부가 모두 포함되므로 아무 것도 묻지 않습니다.

관련 정보