Apple AGX G13 ve G14 için Rust'ta yazılmış bir GPU sürücüsünün uygulanmasını öneriyorlar.

Linux Elma Rustu

Bu, Apple AGX G13 ve G14 serisi GPU'lar için oldukça kapsamlı bir sürücüdür.
Bugünün denetleyicisi SoC'lerle uyumludur

Son zamanlarda çıkan haber drm-asahi sürücüsünün bir ön uygulaması önerildi seri GPU'lar için Apple M13 ve M14 yongalarında kullanılan Apple AGX G1 ve G2 Linux çekirdeği geliştirici posta listesinde.

Denetleyici Rust dilinde yazılmıştır artı, DRM alt sistemi hakkında bir dizi evrensel bağlantı içerir (Direct Rendering Manager), Rust'ta diğer grafik sürücülerini geliştirmek için kullanılabilir.

Yayınlanan yama seti şimdiye kadar sadece tartışma için önerildi çekirdek geliştiriciler (RFC) tarafından, ancak inceleme tamamlandıktan ve belirlenen eksiklikler giderildikten sonra çekirdek ekibe kabul edilebilir.

Bu benim DRM için Rust soyutlamalarının ilk versiyonu alt sistem. Soyutlamaların kendilerini içerir, bazıları küçük C tarafında ve ayrıca drm-asahi GPU sürücüsünde önkoşul değişiklikleri (soyutlamaların nasıl kullanıldığına ilişkin referans için, ancak mutlaka birlikte inmek için tasarlanmıştır).

Bu yamalar [1]'deki ağacın tepesine uygulanır. 6.3-rc1, çok fazla soyutlama/Rust desteği taahhüdü eklendi üstünde. Bunların çoğu, DRM soyutlamaları için ön koşul değildir. kendileri, ancak yalnızca sürücüden.

Aralık ayından bu yana, denetleyici çekirdek ile paket Asahi Linux dağıtımı için ve bu projenin kullanıcıları tarafından test edilmiştir.

Sürücü, Linux dağıtımlarında şu amaçlarla kullanılabilir: d grafik ortamı düzenlemekSoC M1, M1 Pro, M1 Max, M1 Ultra ve M2'ye sahip Apple cihazları. Sürücüyü geliştirirken, yalnızca CPU tarafında yürütülen kodda bellekle çalışırken hataları en aza indirerek güvenliği artırmaya değil, aynı zamanda bellenim ile etkileşimde ortaya çıkan sorunlara karşı kısmen koruma sağlamaya çalışıldı.

Özellikle sürücü, paylaşılan bellek yapıları için belirli bağlamalar sağlar aygıt yazılımında denetleyiciyle etkileşim kurmak için kullanılan karmaşık işaretçi dizileriyle güvenli değil. Önerilen sürücü, kullanıcı alanı OpenGL desteği sağlayan ve OpenGL ES 2 uyumluluk testinden geçen asahi Mesa sürücüsü ile birlikte kullanılır. ve OpenGL ES 3.0'ı desteklemeye neredeyse hazır.

Aynı zamanda çekirdek seviyesinde çalışan sürücü başlangıçta Vulkan API için gelecekteki destek düşünülerek geliştirilmiştirve kullanıcı alanıyla etkileşime yönelik programlama arabirimi, yeni Intel Xe sürücüsü tarafından sağlanan UAPI düşünülerek tasarlanmıştır.

Üzerinde Bilinen Sorunlar aşağıdakilerden bahsedilmektedir:

  • Mevcut Rust entegrasyonu şu anda modüller olarak bina soyutlamalarını desteklememektedir, bu nedenle Rust soyutlamaları yalnızca gömülü DRM bileşenleri için mevcuttur.
  • DRM, denetleyici nesneleri için büyük ölçüde "alt sınıflama" modeline dayanır ve bu, Rust ile pek uyumlu değildir.
  • Şu anda, yalnızca denetleyici için gerekli olan uygulanmaktadır (artı az miktarda
    daha iyi API bütünlüğünün mantıklı olduğu bariz ekstralar).
  • drm::mm, bunun yerine soyutlamada yerleşik bir muteks gerektirerek sona erer
    bunu kullanıcıya her zamanki Rust değişebilirlik kurallarıyla devretmek için.
    Bunun nedeni, düğümlerin herhangi bir zamanda bırakılabilmesi ve bu işlemlerin
    senkronize olması gerekiyor.
  • Mesa tarafında şu anda çoğunlukla yukarı akışta olan Gallium sürücüsüne sahipsiniz (UAPI bitleri çoğunlukla eksik) ve
    dEQP GLES2/EGL testlerini geçer, GLES3.0'ın çoğu geçer
    Yukarı yönlü çalışma kolları devam ediyor. Bu bir topluluk sürücüsü tersine mühendisliktir, bu nedenle bu konuda yapılacak daha çok şey olduğundan bahsedilmektedir.

sonunda sen varsan onun hakkında daha fazla bilgi edinmekle ilgileniyor, ayrıntıları kontrol edebilirsiniz aşağıdaki bağlantı.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.