🇰🇷 한글 설명
Linux 커널의 i.MX8MP VC8000E 전원 공급 시퀀스에서 타이밍 이슈로 인해 VPU_NOC 전원 차단 핸드셰이크가 중단될 수 있는 취약점이 발견되었습니다. 이 문제는 VC8000E 리셋 해제 시점과 AXI 클록 간의 타이밍 불일치로 인해 발생합니다.
💡 쉬운 설명
기기 내부의 영상 처리 장치(VC8000E)를 켜거나 끌 때, 신호 타이밍이 맞지 않아 시스템이 멈춰버릴 수 있는 문제입니다. 이로 인해 장치가 정상적으로 작동하지 않거나 응답이 없는 상태가 될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
pmdomain: imx: Fix i.MX8MP VC8000E power up sequence
Per errata[1]:
ERR050531: VPU_NOC power down handshake may hang during VC8000E/VPUMIX
power up/down cycling.
Description: VC8000E reset de-assertion edge and AXI clock may have a
timing issue.
Workaround: Set bit2 (vc8000e_clk_en) of BLK_CLK_EN_CSR to 0 to gate off
both AXI clock and VC8000E clock sent to VC8000E and AXI clock sent to
VPU_NOC m_v_2 interface during VC8000E power up(VC8000E reset is
de-asserted by HW)
Add a bool variable is_errata_err050531 in
'struct imx8m_blk_ctrl_domain_data' to represent whether the workaround
is needed. If is_errata_err050531 is true, first clear the clk before
powering up gpc, then enable the clk after powering up gpc.
[1] https://www.nxp.com/webapp/Download?colCode=IMX8MP_1P33A
📍 영향받는 시스템
i.MX8MP 프로세서를 사용하는 Linux 커널 기반 시스템
⚔️ 공격 벡터
물리적 장치 제어 또는 특정 전원 관리 시퀀스를 유도하여 시스템 프리징 유발
🛡️ 대응 방법
커널 패치를 적용하여 VC8000E 전원 공급 시 클록 제어 워크아라운드를 활성화해야 함
🔧 검증 코드
커널 버전 확인 후, 소스 코드 내에 해당 에라타 대응 변수가 포함되어 있는지 확인합니다.
uname -r && grep -r "is_errata_err050531" /lib/modules/$(uname -r)/build 2>/dev/null