Asahi Linux 진행 보고서: Linux 7.2

3 weeks ago 27

Linux 7.2 시점의 Asahi Linux는 Apple Silicon의 CPU 전력 관리를 업스트림 요구사항에 맞추고, M3 공식 릴리스와 M4·M5 초기 지원을 준비하는 단계에 도달함 EL3가 없는 Apple CPU에서 PSCI를 사용하도록 UEFI Runtime Service 기반 호출 경로를 만들고, m1n1이 메모리에 상주하며 CPU 절전 서비스를 제공하는 방식을 RFC로 제안함 m1n1 하이퍼바이저가 SPTM·GXF·SPRR을 에뮬레이션하면서 M4 이상에서도 XNU와 Apple 펌웨어를 추적할 수 있게 돼 새 하드웨어 분석을 이어갈 수 있음 M3의 웹캠·마이크·USB 3.0·Thunderbolt·디스플레이 지원이 진전됐고, M4·M5에서는 NVMe와 PCIe 열거, 다중 CPU 부팅 문제가 개선됐지만 아직 Asahi Installer 대상은 아님 AVD 하드웨어 디코딩을 VA-API 소프트웨어에서 이용하는 변환 계층과 Interchange 포맷 기반 직접 스캔아웃을 개발 중이며, Firefox 샌드박스와 KWin의 다중 GPU 처리가 배포를 막는 제약으로 남아 있음 Apple Silicon CPU 전력 관리 Apple Silicon의 전력 관리는 SMC·PMGR·PMP 등 여러 하드웨어 블록에 나뉘지만, 배터리 수명 개선의 가장 큰 장애물은 애플리케이션 CPU 코어의 절전 방식이었음 ARM CPU의 기본 WFI(Wait For Interrupt) 명령은 인터럽트가 올 때까지 실행을 멈추되, 빠르게 복귀하도록 코어 전원과 상태를 유지함 실행 중인 시스템에서 코어를 잠시 대기시키는 용도로 주로 사용됨 Apple 코어의 deep WFI는 더 많은 부분을 끄는 대신 코어 상태를 잃음 기존 다운스트림 cpuidle 드라이버는 코어 상태를 저장한 뒤 deep WFI 루프에 들어감 공급업체별 전력 관리 차이를 커널이 직접 처리하지 않도록 ARM은 PSCI(Power State Coordination Interface) 를 정의함 Linux arm64 유지관리자는 업스트림 하드웨어가 CPU 전력 관리에 PSCI를 사용하도록 요구함 이 요구 때문에 Apple 전용 cpuidle 드라이버는 업스트림에 반영할 수 없음 EL3 없이 PSCI를 호출하는 방법 Linux가 지원하는 PSCI 호출 경로는 현재 SMC(Secure Monitor Call) 와 HVC(Hypervisor Call) 이며, 더 높은 Exceptio...

Read Entire Article