aboutsummaryrefslogtreecommitdiff
path: root/rtl
diff options
context:
space:
mode:
Diffstat (limited to 'rtl')
-rw-r--r--rtl/Makefile16
m---------rtl/core/cipher/aes0
m---------rtl/core/cipher/chacha0
m---------rtl/core/comm/eim0
m---------rtl/core/hash/sha10
m---------rtl/core/hash/sha2560
m---------rtl/core/hash/sha5120
m---------rtl/core/math/modexp0
m---------rtl/core/platform/common0
m---------rtl/core/platform/novena0
m---------rtl/core/rng/avalanche_entropy0
m---------rtl/core/rng/rosc_entropy0
m---------rtl/core/rng/trng0
-rw-r--r--rtl/debian/compat1
-rw-r--r--rtl/debian/control14
-rw-r--r--rtl/debian/copyright27
-rwxr-xr-xrtl/debian/rules4
-rw-r--r--rtl/debian/source/format1
-rw-r--r--rtl/patches/01-config-cores.patch27
19 files changed, 90 insertions, 0 deletions
diff --git a/rtl/Makefile b/rtl/Makefile
new file mode 100644
index 0000000..79ebf76
--- /dev/null
+++ b/rtl/Makefile
@@ -0,0 +1,16 @@
+BUILD_DIR := core/platform/novena/eim/build
+
+# This business of patching files that are under revision control
+# because we can't be bothered to generate a proper configuration file
+# is kind of nasty.
+
+all:
+ patch -p1 --forward <patches/01-config-cores.patch
+ cd ${BUILD_DIR}; $(MAKE)
+ patch -p1 --reverse <patches/01-config-cores.patch
+
+clean:
+ cd ${BUILD_DIR}; $(MAKE) clean
+
+install:
+ install -D ${BUILD_DIR}/novena_eim.bit ${DESTDIR}/usr/share/cryptech/novena_eim.bit
diff --git a/rtl/core/cipher/aes b/rtl/core/cipher/aes
new file mode 160000
+Subproject fc8c9324320af3fc258df33f176583506ea5de3
diff --git a/rtl/core/cipher/chacha b/rtl/core/cipher/chacha
new file mode 160000
+Subproject 549b75a635817ce263c368c9b8b5b0b07f90ec2
diff --git a/rtl/core/comm/eim b/rtl/core/comm/eim
new file mode 160000
+Subproject 9ed8ee7596023a6f4e43d8468bbdd0473c6570e
diff --git a/rtl/core/hash/sha1 b/rtl/core/hash/sha1
new file mode 160000
+Subproject febb27562431216a080cb980fdcda09454e72c3
diff --git a/rtl/core/hash/sha256 b/rtl/core/hash/sha256
new file mode 160000
+Subproject ce56b11187b92572193fa9327841ad2ef2e792f
diff --git a/rtl/core/hash/sha512 b/rtl/core/hash/sha512
new file mode 160000
+Subproject 51ad57c37bb4a0f59e4af4ee069ac18f8fb9284
diff --git a/rtl/core/math/modexp b/rtl/core/math/modexp
new file mode 160000
+Subproject e61c65059054df407206e58b88a1b203f5ad3c3
diff --git a/rtl/core/platform/common b/rtl/core/platform/common
new file mode 160000
+Subproject f05a3c65ec65004b097cb63d5ac6d463a7a9dc2
diff --git a/rtl/core/platform/novena b/rtl/core/platform/novena
new file mode 160000
+Subproject 33cc55adaf9ff31473802414f9c0d6e4a553cdd
diff --git a/rtl/core/rng/avalanche_entropy b/rtl/core/rng/avalanche_entropy
new file mode 160000
+Subproject 4a0c59617c582ef3f0e558067f913309db772f7
diff --git a/rtl/core/rng/rosc_entropy b/rtl/core/rng/rosc_entropy
new file mode 160000
+Subproject 4c3b76c5b8d2809b236d2396ed6a8b36be4587e
diff --git a/rtl/core/rng/trng b/rtl/core/rng/trng
new file mode 160000
+Subproject d5974ed0d389f8953b23d98bb69b1576adad27b
diff --git a/rtl/debian/compat b/rtl/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/rtl/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/rtl/debian/control b/rtl/debian/control
new file mode 100644
index 0000000..84a4e91
--- /dev/null
+++ b/rtl/debian/control
@@ -0,0 +1,14 @@
+Source: cryptech-novena-rtl
+Maintainer: Paul Selkirk <paul@psgd.org>
+Section: misc
+Priority: optional
+Standards-Version: 3.9.6
+Build-Depends: debhelper (>= 9)
+Homepage: http://trac.cryptech.is/wiki
+
+Package: cryptech-novena-rtl
+Architecture: all
+Depends: libc6 (>= 2.13), ${misc:Depends}
+Description: Cryptech open-source crypto hardware
+ "cryptech-novena-rtl" contains FGPA configuration (RTL bitstream) for the Cryptech project on
+ the Novena PVT-1 development board.
diff --git a/rtl/debian/copyright b/rtl/debian/copyright
new file mode 100644
index 0000000..fd7518e
--- /dev/null
+++ b/rtl/debian/copyright
@@ -0,0 +1,27 @@
+Copyright (c) 2015, NORDUnet A/S All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+- Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+- Neither the name of the NORDUnet nor the names of its contributors may
+ be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/rtl/debian/rules b/rtl/debian/rules
new file mode 100755
index 0000000..2d33f6a
--- /dev/null
+++ b/rtl/debian/rules
@@ -0,0 +1,4 @@
+#!/usr/bin/make -f
+
+%:
+ dh $@
diff --git a/rtl/debian/source/format b/rtl/debian/source/format
new file mode 100644
index 0000000..89ae9db
--- /dev/null
+++ b/rtl/debian/source/format
@@ -0,0 +1 @@
+3.0 (native)
diff --git a/rtl/patches/01-config-cores.patch b/rtl/patches/01-config-cores.patch
new file mode 100644
index 0000000..245e8a3
--- /dev/null
+++ b/rtl/patches/01-config-cores.patch
@@ -0,0 +1,27 @@
+Description: configure core selectors for cryptech dnssec signer
+
+--- core/platform/common/core_selector/src/rtl/cipher_selector.v~
++++ core/platform/common/core_selector/src/rtl/cipher_selector.v
+@@ -67,7 +67,7 @@ module cipher_selector
+ //----------------------------------------------------------------
+ // Comment following lines to exclude cores from implementation.
+ `define USE_CORE_AES
+- `define USE_CORE_CHACHA
++// `define USE_CORE_CHACHA
+
+
+ //----------------------------------------------------------------
+--- core/platform/common/core_selector/src/rtl/hash_selector.v~
++++ core/platform/common/core_selector/src/rtl/hash_selector.v
+@@ -125,9 +125,9 @@ XXX move to `define in wrapper core??
+ // List of Available Cores
+ //----------------------------------------------------------------
+ // Comment following lines to exclude cores from implementation.
+- `define USE_CORE_SHA1
++// `define USE_CORE_SHA1
+ `define USE_CORE_SHA256
+- `define USE_CORE_SHA512
++// `define USE_CORE_SHA512
+
+
+ //----------------------------------------------------------------