ตั้งแต่ Apple เปิดตัว M1 เมื่อสองปีที่แล้วในฐานะ Apple Silicon สำหรับแล็ปท็อปและเดสก์ท็อปที่มีโปรเซสเซอร์ AArch64 อันทรงพลังและโปรเซสเซอร์กราฟิกที่ออกแบบเอง มีการคาดเดากันมากมายว่ากราฟิก Apple M1 (และตอนนี้คือ M2) นั้นสะอาด-แผ่นงานออกแบบของ Apple หรือมาจากกราฟิก Imagination PowerVR ที่ Apple ใช้กับ SoC รุ่นก่อนหน้า มีความคล้ายคลึงกันอยู่บ้างก่อนหน้านี้กับทีม Asahi Linux ที่ทำงานเพื่อเปิดใช้งาน Apple M1/​​M2 ภายใต้ Linux ในขณะที่กิจกรรมไดรเวอร์ Mesa ล่าสุดชี้ไปที่บิตทั่วไประหว่างฮาร์ดแวร์กราฟิก PowerVR และกราฟิก Apple AGX

ต้องขอบคุณการทำงานโดยทีม Asahi Linux และการทำงานของพวกเขาในวิศวกรรมย้อนกลับสำหรับการสนับสนุน Apple Silicon สำหรับ Linux รวมถึงความทะเยอทะยานของพวกเขาในการสนับสนุนไดรเวอร์ GPU โอเพ่นซอร์ส ยังคงมีสัญญาณของกราฟิก Apple ที่นำเชื้อสายกลับมา สู่ PowerVR

การดึงดูดความสนใจของฉันเมื่อวานนี้คือคำขอรวม Mesa นี้: asahi: เขียนสถานะใหม่ปล่อยรหัสโดยใช้ ข้อมูลจากไดรเวอร์ Mesa PowerVR Alyssa Rosenzweig ผู้นำด้านการสนับสนุนไดรเวอร์ Mesa Gallium3D/OpenGL โอเพ่นซอร์สของ Apple อธิบายไว้ใน MR นั้นว่า

การดูคำจำกัดความ PPP ของ PowerVR ในแผนผังใน Mesa (src/imagination/csbgen/) เราพบว่าโครงสร้างข้อมูล”ติดแท็ก”ของ AGX เป็นลำดับของรายการสถานะที่นำหน้าด้วยส่วนหัวที่ระบุสถานะที่ตามมา แทนที่จะฮาร์ดโค้ดสำหรับลำดับที่ไดรเวอร์ของ Apple เลือกที่จะรวมสถานะ เราต้องการให้ XML มีความยืดหยุ่นเพียงพอที่จะเข้ารหัสหรือถอดรหัสชุดค่าผสมของสถานะที่ถูกต้อง นั่นหมายถึงการทำ XML ใหม่ ขณะทำเช่นนั้น เราจะพบฟิลด์จำนวนหนึ่งที่เหมือนกันระหว่าง RGX และ AGX และแก้ไขชื่อในขณะนั้น (เช่น จุดลอยตัวของ W Clamp)

ชื่อมาจากรหัส PowerVR ใน Mesa ซึ่งสมเหตุสมผล

ข้อมูลเชิงลึกนี้เป็นไปได้ตั้งแต่ต้นปีนี้ Imagination เผยแพร่ไดรเวอร์ PowerVR Vulkan แบบโอเพนซอร์สที่รวมเข้ากับ Mesa เมนไลน์ (จินตนาการยังได้ทำงานกับไดรเวอร์กราฟิกเคอร์เนล DRM โอเพ่นซอร์สสำหรับ PowerVR Rogue ด้วย) จากการดูรหัส PowerVR Mesa นั้นพบว่ามีความคล้ายคลึงกันล่าสุดกับฮาร์ดแวร์กราฟิกของ Apple จริงอยู่ที่ มันมีขอบเขตจำกัดและยังไม่ชัดเจนว่าในที่สุดกราฟิก Apple M1/M2 นั้นมาจาก PowerVR IP ในระดับใด

ปัจจุบันใช้งาน Linux (Asahi) Linux บน Apple M1/M2 หมายถึงการแรสเตอร์ของซอฟต์แวร์ที่ใช้ LLVMpipe CPU จนกว่าไดรเวอร์ GPU แบบโอเพ่นซอร์สจะทำงานต่อไปทั้งสำหรับโค้ด Mesa และไดรเวอร์เคอร์เนล Direct Rendering Manager ที่กำลังพัฒนา

งานเขียนโปรแกรมควบคุมกราฟิกโอเพนซอร์สของ Apple ยังคงดำเนินต่อไป เป้าหมายที่แสดงออกมาล่าสุดหวังว่าจะได้รับการสนับสนุน OpenGL 2.1 ภายในสิ้นปี 2565 แม้ว่าอาจต้องใช้เวลามากกว่านั้นก่อนที่ไดรเวอร์เคอร์เนล DRM จะถูกอัพสตรีมในเคอร์เนล mainline