Kể từ khi Apple giới thiệu M1 cách đây hai năm với tên gọi Apple Silicon nội bộ của họ dành cho máy tính xách tay và máy tính để bàn với bộ xử lý AArch64 mạnh mẽ và bộ xử lý đồ họa được thiết kế riêng, đã có nhiều suy đoán về việc liệu đồ họa của Apple M1 (và bây giờ là M2) có sạch sẽ không-bảng thiết kế của Apple hoặc bắt nguồn từ đồ họa PowerVR của Imagination mà Apple đã sử dụng với các SoC trước đó. Đã có một số điểm tương đồng được đưa ra trước đây khi nhóm Asahi Linux làm việc để kích hoạt Apple M1/M2 trong Linux trong khi hoạt động trình điều khiển Mesa mới nhất chỉ ra các bit chung hơn giữa phần cứng đồ họa PowerVR và đồ họa AGX của Apple.
Nhờ công trình của nhóm Asahi Linux và công việc của họ để thiết kế ngược hỗ trợ Apple Silicon dành cho Linux, bao gồm cả tham vọng của họ về hỗ trợ trình điều khiển GPU nguồn mở, tiếp tục có dấu hiệu cho thấy đồ họa của Apple mang một số dòng dõi trở lại sang PowerVR.
Thu hút sự chú ý của tôi ngày hôm qua là yêu cầu hợp nhất Mesa này: asahi: Viết lại trạng thái phát ra mã bằng cách sử dụng thông tin từ trình điều khiển Mesa PowerVR . Alyssa Rosenzweig, người đã lãnh đạo công việc hỗ trợ trình điều khiển mã nguồn mở Mesa Gallium3D/OpenGL của Apple đã giải thích trong MR đó:
Xem xét các định nghĩa PPP của PowerVR trong cây trong Mesa (src/Tưởng tượng/csbgen/), chúng tôi thấy rằng cấu trúc dữ liệu”được gắn thẻ”của AGX thực sự là chuỗi các mục trạng thái được đặt trước bởi một tiêu đề chỉ định trạng thái nào theo sau. Thay vì mã hóa cứng các trình tự mà trình điều khiển của Apple chọn để đóng gói trạng thái, chúng tôi cần XML đủ linh hoạt để mã hóa hoặc giải mã bất kỳ kết hợp trạng thái hợp lệ nào. Điều đó có nghĩa là làm lại XML. Trong khi làm như vậy, chúng tôi tìm thấy một số trường giống hệt nhau giữa RGX và AGX và sửa tên khi ở đó (ví dụ: dấu chấm động W Clamp).
Các tên lấy từ mã PowerVR trong Mesa ở nơi hợp lý.
…
Thông tin chi tiết này hiện có thể thực hiện được kể từ đầu năm nay, Imagination đã xuất bản trình điều khiển PowerVR Vulkan mã nguồn mở được hợp nhất vào dòng chính Mesa. (Imagination cũng đang làm việc trên trình điều khiển đồ họa nhân DRM mã nguồn mở cho PowerVR Rogue.) Từ việc xem xét mã PowerVR Mesa đó, những điểm tương đồng mới nhất với phần cứng đồ họa của Apple đã được phát hiện. Tuy nhiên, nó có phạm vi hạn chế và vẫn chưa rõ ràng rằng đồ họa Apple M1/M2 có nguồn gốc từ PowerVR IP ở mức độ nào.
Hiện đang chạy (Asahi) Linux trên Apple M1/M2 có nghĩa là phân loại phần mềm dựa trên CPU LLVMpipe cho đến khi nỗ lực trình điều khiển GPU nguồn mở được tiến hành thêm cho cả mã Mesa và trình điều khiển Trình quản lý kết xuất trực tiếp hạt nhân đang phát triển.
Công việc kỹ thuật và viết trình điều khiển đồ họa nguồn mở của Apple vẫn đang tiếp tục. Mục tiêu mới nhất được bày tỏ là hy vọng rằng OpenGL 2.1 được hỗ trợ vào cuối năm 2022 mặc dù có thể mất nhiều thời gian hơn trước khi trình điều khiển hạt nhân DRM được ngược dòng trong hạt nhân dòng chính.