1*4882a593Smuzhiyuncomment "nvidia-driver needs a glibc toolchain" 2*4882a593Smuzhiyun depends on BR2_i386 || BR2_x86_64 3*4882a593Smuzhiyun depends on !BR2_TOOLCHAIN_USES_GLIBC 4*4882a593Smuzhiyun 5*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER 6*4882a593Smuzhiyun bool "nvidia-driver" 7*4882a593Smuzhiyun depends on BR2_i386 || BR2_x86_64 8*4882a593Smuzhiyun depends on BR2_TOOLCHAIN_USES_GLIBC 9*4882a593Smuzhiyun help 10*4882a593Smuzhiyun The binary-only driver blob for NVidia cards. 11*4882a593Smuzhiyun This is the userland part only. 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun http://www.nvidia.com/ 14*4882a593Smuzhiyun 15*4882a593Smuzhiyunif BR2_PACKAGE_NVIDIA_DRIVER 16*4882a593Smuzhiyun 17*4882a593Smuzhiyuncomment "nvidia-driver X.org drivers needs a modular Xorg server" 18*4882a593Smuzhiyun depends on !BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR 19*4882a593Smuzhiyun 20*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_XORG 21*4882a593Smuzhiyun bool "X.org drivers" 22*4882a593Smuzhiyun default y 23*4882a593Smuzhiyun depends on BR2_PACKAGE_XSERVER_XORG_SERVER_MODULAR 24*4882a593Smuzhiyun select BR2_PACKAGE_MESA3D_HEADERS 25*4882a593Smuzhiyun select BR2_PACKAGE_XLIB_LIBX11 26*4882a593Smuzhiyun select BR2_PACKAGE_XLIB_LIBXEXT 27*4882a593Smuzhiyun select BR2_PACKAGE_HAS_LIBGL 28*4882a593Smuzhiyun select BR2_PACKAGE_HAS_LIBEGL 29*4882a593Smuzhiyun select BR2_PACKAGE_HAS_LIBEGL_WAYLAND 30*4882a593Smuzhiyun select BR2_PACKAGE_HAS_LIBGLES 31*4882a593Smuzhiyun 32*4882a593Smuzhiyunif BR2_PACKAGE_NVIDIA_DRIVER_XORG 33*4882a593Smuzhiyun 34*4882a593Smuzhiyunconfig BR2_PACKAGE_PROVIDES_LIBGL 35*4882a593Smuzhiyun default "nvidia-driver" 36*4882a593Smuzhiyun 37*4882a593Smuzhiyunconfig BR2_PACKAGE_PROVIDES_LIBEGL 38*4882a593Smuzhiyun default "nvidia-driver" 39*4882a593Smuzhiyun 40*4882a593Smuzhiyunconfig BR2_PACKAGE_PROVIDES_LIBGLES 41*4882a593Smuzhiyun default "nvidia-driver" 42*4882a593Smuzhiyun 43*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_PRIVATE_LIBS 44*4882a593Smuzhiyun bool "Install private libraries" 45*4882a593Smuzhiyun help 46*4882a593Smuzhiyun Two libraries require special agreement with NVidia to 47*4882a593Smuzhiyun develop code linking to those libraries: libnvidia-ifr.so 48*4882a593Smuzhiyun and libnvidia-fbc.so (to grab and encode an OpenGL buffer or 49*4882a593Smuzhiyun an X framebuffer.) 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun Say 'y' here if you plan on running a program that uses 52*4882a593Smuzhiyun those private libraries. 53*4882a593Smuzhiyun 54*4882a593Smuzhiyunendif # BR2_PACKAGE_NVIDIA_DRIVER_XORG 55*4882a593Smuzhiyun 56*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_CUDA 57*4882a593Smuzhiyun bool "CUDA support" 58*4882a593Smuzhiyun 59*4882a593Smuzhiyunif BR2_PACKAGE_NVIDIA_DRIVER_CUDA 60*4882a593Smuzhiyun 61*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_OPENCL 62*4882a593Smuzhiyun bool "OpenCL support" 63*4882a593Smuzhiyun select BR2_PACKAGE_MESA3D_HEADERS 64*4882a593Smuzhiyun select BR2_PACKAGE_HAS_LIBOPENCL 65*4882a593Smuzhiyun 66*4882a593Smuzhiyunconfig BR2_PACKAGE_PROVIDES_LIBOPENCL 67*4882a593Smuzhiyun default "nvidia-driver" if BR2_PACKAGE_NVIDIA_DRIVER_OPENCL 68*4882a593Smuzhiyun 69*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_CUDA_PROGS 70*4882a593Smuzhiyun bool "CUDA MPS server and control" 71*4882a593Smuzhiyun help 72*4882a593Smuzhiyun Say 'y' here if you need to run more than one program 73*4882a593Smuzhiyun doing CUDA at the same time. The MPS server will be 74*4882a593Smuzhiyun launched automatically when needed. 75*4882a593Smuzhiyun 76*4882a593Smuzhiyunendif # BR2_PACKAGE_NVIDIA_DRIVER_CUDA 77*4882a593Smuzhiyun 78*4882a593Smuzhiyuncomment "nvidia kernel module needs a kernel to be built" 79*4882a593Smuzhiyun depends on !BR2_LINUX_KERNEL 80*4882a593Smuzhiyun 81*4882a593Smuzhiyunconfig BR2_PACKAGE_NVIDIA_DRIVER_MODULE 82*4882a593Smuzhiyun bool "nvidia kernel module" 83*4882a593Smuzhiyun depends on BR2_LINUX_KERNEL 84*4882a593Smuzhiyun select BR2_LINUX_NEEDS_MODULES # not using kernel-module infra 85*4882a593Smuzhiyun help 86*4882a593Smuzhiyun Build the nvidia.ko kernel module. 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun If CUDA support (above) is set, and the target is x86_64, then 89*4882a593Smuzhiyun this will also build the nvidia-uvm.ko kernel module, which 90*4882a593Smuzhiyun provides Unified Memory access to the GPU and CPU memories for 91*4882a593Smuzhiyun CUDA programs. 92*4882a593Smuzhiyun 93*4882a593Smuzhiyunendif # BR2_PACKAGE_NVIDIA_DRIVER 94