;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 David Craven <david@craven.ch>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
-;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/qca/open-ath9k-htc-firmware.git")
+ (url "https://github.com/qca/open-ath9k-htc-firmware")
(commit version)))
(sha256
(base32
by the b43-open driver of Linux-libre.")
(license license:gpl2)))
-(define* (make-opensbi-package platform variant #:optional (arch "riscv64"))
+(define* (make-opensbi-package platform name #:optional (arch "riscv64"))
(package
- (name (string-replace-substring
- (string-append "opensbi-" platform "-" variant)
- "_" "-"))
- (version "0.6")
+ (name name)
+ (version "0.8")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/riscv/opensbi.git")
+ (url "https://github.com/riscv/opensbi")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "129ypdga0fzn657n2f42g2a1vx3hf8x7sd78h06d35pgkry0jkl7"))))
+ (base32 "1y9z0b6q6wpw7mgy31wml4djc6m8ydm71a9f1asnks4ragc7m98b"))))
(build-system gnu-build-system)
(native-inputs
`(,@(if (and (not (string-prefix? "riscv64" (%current-system)))
'())))
(arguments
`(#:tests? #f ; no check target
- #:make-flags (list (string-append "PLATFORM=" ,platform "/" ,variant)
+ #:make-flags (list (string-append "PLATFORM=" ,platform)
,@(if (and (not (string-prefix? "riscv64"
(%current-system)))
(string-prefix? "riscv64" arch))
;; platform/ariane-fpga/* is gpl2.
license:gpl2))))
+(define-public opensbi-qemu-generic
+ (make-opensbi-package "generic" "opensbi-qemu-generic"))
+
(define-public opensbi-qemu-virt
- (make-opensbi-package "qemu" "virt"))
+ (deprecated-package "opensbi-qemu-virt" opensbi-qemu-generic))
(define-public opensbi-sifive-fu540
- (make-opensbi-package "sifive" "fu540"))
+ (make-opensbi-package "sifive/fu540" "opensbi-sifive-fu540"))
(define-public opensbi-qemu-sifive-u
;; Dropped upstream, as all functionality is present in the sifive-fu540
(define-public seabios
(package
(name "seabios")
- (version "1.13.0")
+ (version "1.14.0")
(source
(origin
(method git-fetch)
(commit (string-append "rel-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1n1bd6msfs7xn8844sz2qnm7hb5x2qfl3zb06kp4bx9vdc3i6619"))))
+ (base32 "0jp4rxsv9jdzvx4gjvkybj6g1yjg8pkd2wys4sdh6c029npp6y8p"))))
(build-system gnu-build-system)
(native-inputs
`(("python" ,python-wrapper)))
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
(package
(name (string-append "arm-trusted-firmware-" platform))
- (version "2.3")
+ (version "2.4")
(source
(origin
(method git-fetch)
(file-name (git-file-name "arm-trusted-firmware" version))
(sha256
(base32
- "113mcf1hwwl0i90cqh08lywxs1bfbg0nwqibay9wlkmx1a5v0bnj"))))
+ "12k0n79j156bdzqws18kpbli04kn00nh6dy42pjv6gakqrkx9px3"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(native-inputs
`(,@(if (and (not (string-prefix? "aarch64" (%current-system)))
(string-prefix? "aarch64" arch))
- ;; gcc-7 since it is used for u-boot, which needs gcc-7.
- `(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu" #:xgcc gcc-7))
+ ;; Needs newer gcc version for some targets
+ `(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu" #:xgcc gcc-9))
("cross-binutils" ,(cross-binutils "aarch64-linux-gnu")))
'())
,@(if (and (not (string-prefix? "armhf" (%current-system)))
(string-prefix? "armhf" arch))
- ;; gcc-7 since it is used for u-boot, which needs gcc-7.
- `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf" #:xgcc gcc-7))
+ ;; Needs newer gcc version for some targets
+ `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf" #:xgcc gcc-9))
("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf")))
'())
- ))
+ ;; Needs newer gcc version for some targets
+ ("gcc" ,gcc-9)))
(home-page "https://www.trustedfirmware.org/")
(synopsis "Implementation of \"secure world software\"")
(description
(define-public arm-trusted-firmware-rk3328
(make-arm-trusted-firmware "rk3328"))
-(define-public arm-trusted-firmware-puma-rk3399
- (let ((base (make-arm-trusted-firmware "rk3399"))
- ;; Vendor's arm trusted firmware branch hasn't been upstreamed yet.
- (commit "d71e6d83612df896774ec4c03d49500312d2c324")
- (revision "1"))
- (package
- (inherit base)
- (name "arm-trusted-firmware-puma-rk3399")
- (version (git-version "1.3" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.theobroma-systems.com/arm-trusted-firmware.git")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0vqhwqqh8h9qlkpybg2v94911091c1418bc4pnzq5fd7zf0fjkf8")))))))
-
(define-public arm-trusted-firmware-rk3399
(let ((base (make-arm-trusted-firmware "rk3399")))
(package
`(("cross32-gcc" ,(cross-gcc "arm-none-eabi"))
("cross32-binutils", (cross-binutils "arm-none-eabi"))
,@(package-native-inputs base))))))
-
-(define-public rk3399-cortex-m0
- (package
- (name "rk3399-cortex-m0")
- (version "1")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://git.theobroma-systems.com/rk3399-cortex-m0.git")
- (commit (string-append "v" version))))
- (file-name (git-file-name "rk3399-cortex-m0" version))
- (sha256
- (base32
- "02wz1vkf4j3zc8rx289z76xhrf71jhb2p05lvmygky393a9gjh9w"))))
- (home-page "https://git.theobroma-systems.com/rk3399-cortex-m0.git/about/")
- (synopsis "PMU Cortex M0 firmware for RK3399 Q7 (Puma)")
- (description
- "Cortex-M0 firmware used with the RK3399 to implement
-power-management functionality and helpers (e.g. DRAM frequency
-switching support).\n")
- (license license:bsd-3)
- (build-system gnu-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (delete 'check)
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out"))
- (mzerofiles (find-files "." "rk3399m0.(elf|bin)$")))
- (for-each
- (lambda (file)
- (install-file file out))
- mzerofiles))
- #t))
- (add-before 'build 'setenv
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "CROSS_COMPILE" "arm-none-eabi-")
- #t)))))
- (native-inputs `(("cross-gcc" ,(cross-gcc "arm-none-eabi" #:xgcc gcc-7))
- ("cross-binutils" ,(cross-binutils "arm-none-eabi"))))))