عن المشروع
يحتوي هذا المستودع على الإصدار المصدر لوحدات نواة GPU المفتوحة من NVIDIA، بما في ذلك طبقات واجهة النواة لـ nvidia.ko و nvidia-drm.ko و nvidia-modeset.ko و nvidia-uvm.ko. يتم بناء الوحدات باستخدام الأمر "make modules" وتثبيتها باستخدام "make modules_install" بعد إزالة وحدات نواة NVIDIA الموجودة. يجب استخدامها مع برنامج GSP الثابت ومكونات برنامج تشغيل NVIDIA في مساحة المستخدم من الإصدار المطابق 615.71.09؛ يمكن تشغيل مثبت .run المقابل مع الخيار --no-kernel-modules لتوفير تلك المكونات.
يدعم المصدر عمليات البناء المحلية أو عبر التجميع لـ x86_64 و aarch64. يستخدم التجميع المتقاطع TARGET_ARCH بالإضافة إلى إعدادات CC و LD و AR و CXX و OBJCOPY. يمكن استخدام GCC أو Clang الحديث، على الرغم من أن طبقة واجهة النواة يجب أن تُبنى باستخدام سلسلة الأدوات المستخدمة للنواة المستهدفة. تبدأ نوى Linux المدعومة من الإصدار 4.15. تتضمن خيارات البناء NV_VERBOSE=1 لإخراج الأوامر الكامل و DEBUG=1 لبناءات التصحيح والتسجيل الإضافي.
يتم تنظيم الكود في kernel-open لرمز واجهة النواة الخاص بـ Linux، و src للكود المستقل عن نظام التشغيل والأدوات المساعدة المشتركة، و nouveau لبرنامج Python النصي الذي يستخرج صور برنامج GSP الثابت والبيانات ذات الصلة لاستخدامها بواسطة برنامج تشغيل Nouveau. يوثق ملف README أن nvidia.ko و nvidia-modeset.ko يحتويان على مكونات مستقلة عن نظام التشغيل، بينما nvidia-drm.ko و nvidia-uvm.ko لا يحتويان على ذلك.
يتم وصف الأجهزة المتوافقة على أنها وحدات GPU من NVIDIA من سلسلة Turing أو أحدث، مع جدول معرفات PCI المقدم في المستودع. يتم توجيه قيود الميزات وتفاصيل vGPU إلى وثائق برنامج تشغيل NVIDIA. تتم معالجة المساهمات من خلال طلبات السحب على GitHub وتتطلب اتفاقية ترخيص مساهم (CLA). تشير NVIDIA إلى أن المستودع هو إلى حد كبير لقطة لكل إصدار برنامج تشغيل من كود برنامج التشغيل الخاص المشترك، لذا قد يكون التاريخ محدودًا وقد تتطلب عمليات إعادة الهيكلة الكبيرة التنسيق. يمكن الإبلاغ عن المشكلات على GitHub أو منتدى Linux الخاص بـ NVIDIA أو عبر البريد الإلكتروني linux-bugs@nvidia.com، مع تغطية ملف SECURITY.md للإبلاغ عن الثغرات.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.