Install the nouveau gm206 firmware as used by my graphics card.

Also add the other gm20x nouveau firmwares to the source tree
to make it easier to add them for someone who can test them.

Installed if MKNOUVEAUFIRMWARE is set to 'yes'.
This defaults to no except on amd64 and i386 (like for radeon).
This commit is contained in:
wiz 2019-07-20 19:09:21 +00:00
parent dfefb900a0
commit c4e128da50
49 changed files with 187 additions and 8 deletions

View File

@ -1,4 +1,4 @@
# $NetBSD: mi,v 1.1206 2019/07/06 19:45:25 christos Exp $
# $NetBSD: mi,v 1.1207 2019/07/20 19:09:21 wiz Exp $
#
# Note: Don't delete entries from here - mark them as "obsolete" instead,
# unless otherwise stated below.
@ -258,6 +258,14 @@
./libdata/firmware/nvidia/tegra210 base-firmware-root
./libdata/firmware/nvidia/tegra210/LICENCE.nvidia base-firmware-root tegrafirmware
./libdata/firmware/nvidia/tegra210/xusb.bin base-firmware-root tegrafirmware
./libdata/firmware/nouveau base-firmware-usr
./libdata/firmware/nouveau/nvidia base-firmware-usr
./libdata/firmware/nouveau/nvidia/LICENCE.nvidia base-firmware-usr nouveaufirmware
./libdata/firmware/nouveau/nvidia/gm206 base-firmware-usr
./libdata/firmware/nouveau/nvidia/gm206/fecs_inst.bin base-firmware-usr nouveaufirmware
./libdata/firmware/nouveau/nvidia/gm206/gpccs_inst.bin base-firmware-usr nouveaufirmware
./libdata/firmware/nouveau/nvidia/gm206/fecs_data.bin base-firmware-usr nouveaufirmware
./libdata/firmware/nouveau/nvidia/gm206/gpccs_data.bin base-firmware-usr nouveaufirmware
./libdata/firmware/radeon base-firmware-usr
./libdata/firmware/radeon/ARUBA_me.bin base-firmware-usr radeonfirmware
./libdata/firmware/radeon/ARUBA_pfp.bin base-firmware-usr radeonfirmware

View File

@ -1,4 +1,4 @@
# $NetBSD: NetBSD.dist.base,v 1.197 2019/05/07 05:02:42 thorpej Exp $
# $NetBSD: NetBSD.dist.base,v 1.198 2019/07/20 19:09:21 wiz Exp $
# @(#)4.4BSD.dist 8.1 (Berkeley) 6/13/93
# Do not customize this file as it may be overwritten on upgrades.
@ -75,6 +75,9 @@
./libdata/firmware/if_rtwn
./libdata/firmware/if_urtwn
./libdata/firmware/if_wpi
./libdata/firmware/nouveau
./libdata/firmware/nouveau/nvidia
./libdata/firmware/nouveau/nvidia/gm206
./libdata/firmware/nvidia
./libdata/firmware/nvidia/tegra124
./libdata/firmware/nvidia/tegra210

View File

@ -1,7 +1,9 @@
# $NetBSD: Makefile,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
# $NetBSD: Makefile,v 1.2 2019/07/20 19:09:21 wiz Exp $
.include <bsd.own.mk>
SUBDIR+= gm20x
.if ${MKTEGRAFIRMWARE} != "no"
SUBDIR+= tegra
.endif

View File

@ -0,0 +1,5 @@
# $NetBSD: Makefile,v 1.1 2019/07/20 19:09:22 wiz Exp $
SUBDIR+= common gm206
.include <bsd.subdir.mk>

View File

@ -0,0 +1,5 @@
# $NetBSD: Makefile.inc,v 1.1 2019/07/20 19:09:22 wiz Exp $
includes:
clean:
cleandir:

View File

@ -0,0 +1,8 @@
# $NetBSD: Makefile,v 1.1 2019/07/20 19:09:22 wiz Exp $
NOMAN= # defined
FILES+= ${.CURDIR}/../dist/LICENCE.nvidia
FILESDIR= ${FIRMWAREDIR}/nouveau/nvidia
.include <bsd.files.mk>

View File

@ -0,0 +1,131 @@
License For Customer Use of NVIDIA Software
IMPORTANT NOTICE -- READ CAREFULLY: This License For Customer Use of
NVIDIA Software ("LICENSE") is the agreement which governs use of
the software of NVIDIA Corporation and its subsidiaries ("NVIDIA")
downloadable herefrom, including computer software and associated
printed materials ("SOFTWARE"). By downloading, installing, copying,
or otherwise using the SOFTWARE, you agree to be bound by the terms
of this LICENSE. If you do not agree to the terms of this LICENSE,
do not download the SOFTWARE.
RECITALS
Use of NVIDIA's products requires three elements: the SOFTWARE, the
hardware, and a personal computer. The SOFTWARE is protected by copyright
laws and international copyright treaties, as well as other intellectual
property laws and treaties. The SOFTWARE may be protected by various
patents, and is not sold, and instead is only licensed for use, strictly
in accordance with this document. The hardware is protected by various
patents, and is sold, but this agreement does not cover that sale, since
it may not necessarily be sold as a package with the SOFTWARE. This
agreement sets forth the terms and conditions of the SOFTWARE LICENSE only.
1. DEFINITIONS
1.1 Customer. Customer means the entity or individual that
downloads or otherwise obtains the SOFTWARE.
2. GRANT OF LICENSE
2.1 Rights and Limitations of Grant. NVIDIA hereby grants Customer
the following non-exclusive, non-transferable right to use the
SOFTWARE, with the following limitations:
2.1.1 Rights. Customer may install and use multiple copies of the
SOFTWARE on a shared computer or concurrently on different computers,
and make multiple back-up copies of the SOFTWARE, solely for Customer's
use within Customer's Enterprise. "Enterprise" shall mean individual use
by Customer or any legal entity (such as a corporation or university)
and the subsidiaries it owns by more than fifty percent (50%).
2.1.2 Open Source Exception. Notwithstanding the foregoing terms
of Section 2.1.1, SOFTWARE may be copied and redistributed solely for
use on operating systems distributed under the terms of an OSI-approved
open source license as listed by the Open Source Initiative at
http://opensource.org, provided that the binary files thereof are not
modified, and Customer provides a copy of this license with the SOFTWARE.
2.1.3 Limitations.
No Reverse Engineering. Customer may not reverse engineer,
decompile, or disassemble the SOFTWARE, nor attempt in any other
manner to obtain the source code.
Usage. SOFTWARE is licensed only for use with microprocessor(s) which have
been (i) designed by NVIDIA and (ii) either (a) sold by or (b) licensed by
NVIDIA. Customer shall not use SOFTWARE in conjunction with, nor cause
SOFTWARE to be executed by, any other microprocessor.
No Translation. Customer shall not translate SOFTWARE, nor cause or permit
SOFTWARE to be translated, from the architecture or language in which it is
originally provided by NVIDIA, into any other architecture or language.
No Rental. Customer may not rent or lease the SOFTWARE to someone
else.
3. TERMINATION
This LICENSE will automatically terminate if Customer fails to
comply with any of the terms and conditions hereof. In such event,
Customer must destroy all copies of the SOFTWARE and all of its
component parts.
Defensive Suspension. If Customer commences or participates in any legal
proceeding against NVIDIA, then NVIDIA may, in its sole discretion,
suspend or terminate all license grants and any other rights provided
under this LICENSE during the pendency of such legal proceedings.
4. COPYRIGHT
All title and copyrights in and to the SOFTWARE (including but
not limited to all images, photographs, animations, video, audio,
music, text, and other information incorporated into the SOFTWARE),
the accompanying printed materials, and any copies of the SOFTWARE,
are owned by NVIDIA, or its suppliers. The SOFTWARE is protected
by copyright laws and international treaty provisions. Accordingly,
Customer is required to treat the SOFTWARE like any other copyrighted
material, except as otherwise allowed pursuant to this LICENSE
and that it may make one copy of the SOFTWARE solely for backup or
archive purposes.
5. APPLICABLE LAW
This agreement shall be deemed to have been made in, and shall be
construed pursuant to, the laws of the State of California.
6. DISCLAIMER OF WARRANTIES AND LIMITATION ON LIABILITY
6.1 No Warranties. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE
LAW, THE SOFTWARE IS PROVIDED "AS IS" AND NVIDIA AND ITS SUPPLIERS
DISCLAIM ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT
NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE.
6.2 No Liability for Consequential Damages. TO THE MAXIMUM
EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL NVIDIA OR
ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR
CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION,
DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS
OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT
OF THE USE OF OR INABILITY TO USE THE SOFTWARE, EVEN IF NVIDIA HAS
BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
7. MISCELLANEOUS
The United Nations Convention on Contracts for the International
Sale of Goods is specifically disclaimed. If any provision of this
LICENSE is inconsistent with, or cannot be fully enforced under,
the law, such provision will be construed as limited to the extent
necessary to be consistent with and fully enforceable under the law.
This agreement is the final, complete and exclusive agreement between
the parties relating to the subject matter hereof, and supersedes
all prior or contemporaneous understandings and agreements relating
to such subject matter, whether oral or written. Customer agrees
that it will not ship, transfer or export the SOFTWARE into any
country, or use the SOFTWARE in any manner, prohibited by the
United States Bureau of Export Administration or any export laws,
restrictions or regulations. This LICENSE may only be modified in
writing signed by an authorized officer of NVIDIA.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,11 @@
# $NetBSD: Makefile,v 1.1 2019/07/20 19:09:23 wiz Exp $
NOMAN= # defined
FILES+= ${.CURDIR}/../dist/gm200/gr/fecs_inst.bin
FILES+= ${.CURDIR}/../dist/gm206/gr/fecs_data.bin
FILES+= ${.CURDIR}/../dist/gm200/gr/gpccs_inst.bin
FILES+= ${.CURDIR}/../dist/gm206/gr/gpccs_data.bin
FILESDIR= ${FIRMWAREDIR}/nouveau/nvidia/gm206
.include <bsd.files.mk>

View File

@ -1,4 +1,4 @@
# $NetBSD: bsd.README,v 1.391 2019/04/19 22:06:03 kamil Exp $
# $NetBSD: bsd.README,v 1.392 2019/07/20 19:09:23 wiz Exp $
# @(#)bsd.README 8.2 (Berkeley) 4/2/94
This is the README file for the make "include" files for the NetBSD
@ -352,6 +352,10 @@ MKNLS If "no", don't build or install the NLS files and locale
definition files.
Default: yes
MKNOUVEAUFIRMWARE If "yes", install the /libdata/firmware/nouveau directory,
which is necessary for the nouveau DRM driver.
Default: yes on i386 and amd64, no elsewhere.
MKNPF If "no", don't build or install the NPF and its modules.
Default: yes
@ -406,7 +410,7 @@ MKPOSTFIX If "no", don't build or install postfix(1).
MKPROFILE If "no", don't build or install the profiling (*_p.a) libraries.
Default: yes
MKRADEONFIRMWARE If "no", install the /libdata/firmware/radeon directory,
MKRADEONFIRMWARE If "yes", install the /libdata/firmware/radeon directory,
which is necessary for the radeon DRM driver.
Default: yes on i386 and amd64, no elsewhere.

View File

@ -1,4 +1,4 @@
# $NetBSD: bsd.own.mk,v 1.1146 2019/06/11 04:52:44 mrg Exp $
# $NetBSD: bsd.own.mk,v 1.1147 2019/07/20 19:09:23 wiz Exp $
# This needs to be before bsd.init.mk
.if defined(BSD_MK_COMPAT_FILE)
@ -1141,7 +1141,9 @@ MKFIRMWARE.macppc= yes
MKFIRMWARE.sandpoint= yes
MKFIRMWARE.sparc64= yes
# Only install the radeon firmware on DRM-happy systems.
# Only install the nouveau and radeon firmwares on DRM-happy systems.
MKNOUVEAUFIRMWARE.x86_64= yes
MKNOUVEAUFIRMWARE.i386= yes
MKRADEONFIRMWARE.x86_64= yes
MKRADEONFIRMWARE.i386= yes
@ -1181,7 +1183,7 @@ _MKVARS.no= \
MKKYUA \
MKLIBCXX MKLLD MKLLDB MKLLVM MKLLVMRT MKLINT \
MKMANZ MKMCLINKER \
MKNSD \
MKNOUVEAUFIRMWARE MKNSD \
MKOBJDIRS \
MKPCC MKPIGZGZIP \
MKRADEONFIRMWARE MKREPRO \