Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src Import NVIDIA Tegra XUSB firmware for Tegra124 and Tegra210....



details:   https://anonhg.NetBSD.org/src/rev/e8b0bb9c4430
branches:  trunk
changeset: 828859:e8b0bb9c4430
user:      jmcneill <jmcneill%NetBSD.org@localhost>
date:      Sun Jan 07 20:59:24 2018 +0000

description:
Import NVIDIA Tegra XUSB firmware for Tegra124 and Tegra210. Installation
of this firmware is controlled by the MKTEGRAFIRMWARE option, which
defaults to yes on evbarm and evbarm64 and no everywhere else.

diffstat:

 distrib/sets/lists/base/mi                            |    9 +-
 etc/mtree/NetBSD.dist.base                            |    5 +-
 external/nvidia-firmware/Makefile                     |    9 +
 external/nvidia-firmware/tegra/Makefile               |    5 +
 external/nvidia-firmware/tegra/Makefile.inc           |    5 +
 external/nvidia-firmware/tegra/dist/LICENCE.nvidia    |  131 ++++++++++++++++++
 external/nvidia-firmware/tegra/dist/tegra124/xusb.bin |  Bin 
 external/nvidia-firmware/tegra/dist/tegra210/xusb.bin |  Bin 
 external/nvidia-firmware/tegra/tegra124/Makefile      |    8 +
 external/nvidia-firmware/tegra/tegra210/Makefile      |    8 +
 share/mk/bsd.README                                   |    6 +-
 share/mk/bsd.own.mk                                   |    9 +-
 12 files changed, 190 insertions(+), 5 deletions(-)

diffs (286 lines):

diff -r cef46147be7e -r e8b0bb9c4430 distrib/sets/lists/base/mi
--- a/distrib/sets/lists/base/mi        Sun Jan 07 20:02:52 2018 +0000
+++ b/distrib/sets/lists/base/mi        Sun Jan 07 20:59:24 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1165 2017/12/10 20:38:13 bouyer Exp $
+# $NetBSD: mi,v 1.1166 2018/01/07 20:59:24 jmcneill Exp $
 #
 # Note:        Don't delete entries from here - mark them as "obsolete" instead,
 #      unless otherwise stated below.
@@ -247,6 +247,13 @@
 ./libdata/firmware/if_wpi/README.iwlwifi-3945-ucode    base-firmware-root
 ./libdata/firmware/if_wpi/ipw3945.ucode                base-obsolete   obsolete
 ./libdata/firmware/if_wpi/iwlwifi-3945.ucode           base-firmware-root
+./libdata/firmware/nvidia                      base-firmware-root
+./libdata/firmware/nvidia/tegra124             base-firmware-root
+./libdata/firmware/nvidia/tegra124/LICENCE.nvidia      base-firmware-root      tegrafirmware
+./libdata/firmware/nvidia/tegra124/xusb.bin    base-firmware-root      tegrafirmware
+./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/radeon                      base-firmware-usr
 ./libdata/firmware/radeon/ARUBA_me.bin         base-firmware-usr       radeonfirmware
 ./libdata/firmware/radeon/ARUBA_pfp.bin                base-firmware-usr       radeonfirmware
diff -r cef46147be7e -r e8b0bb9c4430 etc/mtree/NetBSD.dist.base
--- a/etc/mtree/NetBSD.dist.base        Sun Jan 07 20:02:52 2018 +0000
+++ b/etc/mtree/NetBSD.dist.base        Sun Jan 07 20:59:24 2018 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: NetBSD.dist.base,v 1.164 2017/12/10 20:38:14 bouyer Exp $
+#      $NetBSD: NetBSD.dist.base,v 1.165 2018/01/07 20:59:25 jmcneill Exp $
 #      @(#)4.4BSD.dist 8.1 (Berkeley) 6/13/93
 
 # Do not customize this file as it may be overwritten on upgrades.
@@ -78,6 +78,9 @@
 ./libdata/firmware/if_rtwn
 ./libdata/firmware/if_urtwn
 ./libdata/firmware/if_wpi
+./libdata/firmware/nvidia
+./libdata/firmware/nvidia/tegra124
+./libdata/firmware/nvidia/tegra210
 ./libdata/firmware/radeon
 ./libdata/firmware/ral
 ./libdata/firmware/rum
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/Makefile Sun Jan 07 20:59:24 2018 +0000
@@ -0,0 +1,9 @@
+# $NetBSD: Makefile,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
+
+.include <bsd.own.mk>
+
+.if ${MKTEGRAFIRMWARE} != "no"
+SUBDIR+=       tegra
+.endif
+
+.include <bsd.subdir.mk>
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/tegra/Makefile   Sun Jan 07 20:59:24 2018 +0000
@@ -0,0 +1,5 @@
+# $NetBSD: Makefile,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
+
+SUBDIR+=       tegra124 tegra210
+
+.include <bsd.subdir.mk>
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/Makefile.inc
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/tegra/Makefile.inc       Sun Jan 07 20:59:24 2018 +0000
@@ -0,0 +1,5 @@
+# $NetBSD: Makefile.inc,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
+
+includes:
+clean:
+cleandir:
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/dist/LICENCE.nvidia
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/tegra/dist/LICENCE.nvidia        Sun Jan 07 20:59:24 2018 +0000
@@ -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.
+
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/dist/tegra124/xusb.bin
Binary file external/nvidia-firmware/tegra/dist/tegra124/xusb.bin has changed
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/dist/tegra210/xusb.bin
Binary file external/nvidia-firmware/tegra/dist/tegra210/xusb.bin has changed
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/tegra124/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/tegra/tegra124/Makefile  Sun Jan 07 20:59:24 2018 +0000
@@ -0,0 +1,8 @@
+# $NetBSD: Makefile,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
+
+NOMAN= # defined
+
+FILES=         ${.CURDIR}/../dist/LICENCE.nvidia ${.CURDIR}/../dist/tegra124/xusb.bin
+FILESDIR=      /libdata/firmware/nvidia/tegra124
+
+.include <bsd.files.mk>
diff -r cef46147be7e -r e8b0bb9c4430 external/nvidia-firmware/tegra/tegra210/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/external/nvidia-firmware/tegra/tegra210/Makefile  Sun Jan 07 20:59:24 2018 +0000
@@ -0,0 +1,8 @@
+# $NetBSD: Makefile,v 1.1 2018/01/07 20:59:25 jmcneill Exp $
+
+NOMAN= # defined
+
+FILES=         ${.CURDIR}/../dist/LICENCE.nvidia ${.CURDIR}/../dist/tegra210/xusb.bin
+FILESDIR=      /libdata/firmware/nvidia/tegra210
+
+.include <bsd.files.mk>
diff -r cef46147be7e -r e8b0bb9c4430 share/mk/bsd.README
--- a/share/mk/bsd.README       Sun Jan 07 20:02:52 2018 +0000
+++ b/share/mk/bsd.README       Sun Jan 07 20:59:24 2018 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: bsd.README,v 1.365 2017/11/25 23:22:41 jmcneill Exp $
+#      $NetBSD: bsd.README,v 1.366 2018/01/07 20:59:25 jmcneill Exp $
 #      @(#)bsd.README  8.2 (Berkeley) 4/2/94
 
 This is the README file for the make "include" files for the NetBSD
@@ -415,6 +415,10 @@
                loading shared libraries.
                Default: yes
 
+MKTEGRAFIRMWARE        If "no", install the /libdata/firmware/nvidia directory,
+               which is necessary for the NVIDIA Tegra XHCI driver.
+               Default: yes on evbarm and evbarm64, no elsewhere.
+
 MKTOOLSDEBUG   If "yes" build the tools with debugging symbols.
                Default: no
 
diff -r cef46147be7e -r e8b0bb9c4430 share/mk/bsd.own.mk
--- a/share/mk/bsd.own.mk       Sun Jan 07 20:02:52 2018 +0000
+++ b/share/mk/bsd.own.mk       Sun Jan 07 20:59:24 2018 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: bsd.own.mk,v 1.1025 2017/12/01 22:48:00 mrg Exp $
+#      $NetBSD: bsd.own.mk,v 1.1026 2018/01/07 20:59:25 jmcneill Exp $
 
 # This needs to be before bsd.init.mk
 .if defined(BSD_MK_COMPAT_FILE)
@@ -1111,7 +1111,7 @@
        MKPCC MKPIGZGZIP \
        MKRADEONFIRMWARE MKREPRO \
        MKSLJIT MKSOFTFLOAT MKSTRIPIDENT \
-       MKTPM \
+       MKTEGRAFIRMWARE MKTPM \
        MKUNPRIVED MKUPDATE \
        MKX11 MKX11MOTIF MKXORG_SERVER \
        MKZFS
@@ -1166,6 +1166,11 @@
 MKRADEONFIRMWARE=              yes
 .endif
 
+# Only install the tegra firmware on evbarm and evbarm64.
+.if ${MACHINE} == "evbarm" || ${MACHINE} == "evbarm64"
+MKTEGRAFIRMWARE=               yes
+.endif
+
 #
 # Force some options off if their dependencies are off.
 #



Home | Main Index | Thread Index | Old Index