Commit Graph

44 Commits

Author SHA1 Message Date
Sachi King
42903be7da ArmTrustedFirmwareRK3588: Don't include unused HDCP blob
The HDCP blob is only for the RK3399, so it is not needed on RK3588.
The blob being present during build pollutes the license with
"UnfreeRedistributable" unnecessary as it is not contained in the
output.

The SHA256 hash bl31.elf with HDCP.bin available and unavailable in the
build tree are identical.

cf1c4e4e8c6803a1e8185af8b45318729167cee0336c105f19037edfb9b2d956 removed/bl31.elf
cf1c4e4e8c6803a1e8185af8b45318729167cee0336c105f19037edfb9b2d956 available/bl31.elf
2024-08-09 10:01:23 +10:00
Alexis Hildebrandt
755b915a15 treewide: Remove indefinite article from meta.description
nix run nixpkgs#silver-searcher -- -G '\.nix$' -0l 'description.*"[Aa]n?' pkgs \
  | xargs -0 nix run nixpkgs#gnused -- -i '' -Ee 's/(description.*")[Aa]n? (.)/\1\U\2/'
2024-06-09 23:07:45 +02:00
Pratham Patel
37205e51fd arm-trusted-firmware: add RK3588 2024-03-22 08:08:11 +03:00
Weijia Wang
1272341737
Merge pull request #269809 from r-ryantm/auto-update/armTrustedFirmwareTools
armTrustedFirmwareTools: 2.9.0 -> 2.10.0
2023-12-08 17:49:18 +01:00
Lorenz Brun
6568016fa3 u-boot: ROCK64 RAM init improvements
This switches the ROCK64 over to the open-source RAM init as it now
works flawlessly. It also removes the HDCP flag from the ATF for the
RK3328 as it cannot use it, it is only used in the RK3399. This makes
the ROCK64 u-boot now fully open.

There is also an issue with the ROCK64 v2 revision where the DRAM
routing is marginal, making some of them unstable. So also package a
variant which uses a lower-speed DDR3 timing configuration which is
stable on these boards.
2023-11-25 11:14:50 +01:00
R. Ryantm
80fdffb416 armTrustedFirmwareTools: 2.9.0 -> 2.10.0 2023-11-25 08:15:10 +00:00
sternenseemann
b1981b02e1 arm-trusted-firmware.armTrustedFirmwareTools: remove CC_FOR_BUILD
As explained in the new comment, we trick the build system here to build
its build tools for the host platform. To make this even more foolproof
/ reliable, stop adding CC_FOR_BUILD to the environment, so there can be
no mix up.
2023-08-17 09:57:18 +02:00
sternenseemann
994fcd68b9 arm-trusted-firmware: tell Makefile abt arm-embedded's targetPrefix
Some of the firmware requires an arm-embedded toolchain to be in PATH.
The Makefile offers a similar mechanism to CROSS_COMPILE for letting it
know what naming scheme is used for the accompanying tools.
2023-08-17 09:57:18 +02:00
sternenseemann
2fa0422405 arm-trusted-firmware: set HOSTCC to CC_FOR_BUILD
arm-trusted-firmware assumes that HOSTCC is `gcc` which is not
necessarily the case.
2023-08-17 09:57:18 +02:00
R. Ryantm
a60989cbc9 armTrustedFirmwareTools: 2.8 -> 2.9.0 2023-07-06 05:23:28 +00:00
Sergei Trofimovich
09bd016d6f
Merge pull request #204562 from lopsided98/arm-trusted-firmware-update
arm-trusted-firmware: 2.7 -> 2.8
2023-05-19 08:07:41 +01:00
Sergey Makarov
e97b960c4e u-Boot: add Orange Pi 3 support
Enable build of U-Boot for Orange Pi 3.

Signed-off-by: Sergey Makarov <setser200018@gmail.com>
2023-04-05 23:45:39 +03:00
Ben Wolsieffer
c01ab05512 arm-trusted-firmware: 2.7 -> 2.8
sptool was replaced by a Python script. It wouldn't be too hard to install/wrap
the new script, but I doubt anyone uses it. I made sptool part of the
armTrustedFirmwareTools package when I created it simply because it was trivial
to add, not because it was actually necessary.
2022-12-04 19:51:37 -05:00
Samuel Dionne-Riel
528fcc8762 armTrustedFirmware: Fix bintools 2.39 regression (LOAD segment with RWX)
Fixes:

```
.../aarch64-unknown-linux-gnu-ld.bfd: warning: /build/source/build/rk3399/release/bl31/bl31.elf has a LOAD segment with RWX permissions
.../aarch64-unknown-linux-gnu-ld.bfd: warning: /build/source/build/rk3399/release/bl31/bl31.elf has a LOAD segment with RWX permissions
.../aarch64-unknown-linux-gnu-ld.bfd: warning: /build/source/build/rk3399/release/bl31/bl31.elf has a LOAD segment with RWX permissions
make: *** [Makefile:1306: /build/source/build/rk3399/release/bl31/bl31.elf] Error 1
```

See: https://developer.trustedfirmware.org/T996
2022-10-09 15:52:43 -04:00
Adam Joseph
65e4d13554 arm-trusted-firmware: remove version parameter
The arm-trusted-firmware/default.nix expression exposes
`buildArmTrustedFirmware` and its `version?"2.7"` field to
`top-level/all-packages.nix`.  Unfortunately it doesn't work.
Changing the version field doesn't change what version of the ATF
source code is used.  Attempting to "lock" an installation to a
specific version by overriding this field (e.g. version="2.7") won't
work either; when nixpkgs bumps the version to 2.8 the user will end
up building the 2.8 source code but the resulting expression will be
labeled misleadingly in the store:

```
  /nix/store/eeee...-arm-trusted-firmware-2.7/
```

**using the 2.8 source code**.  So not only does `version` not lock
the version, it will actually *conceal* the fact that the underlying
source code has been upgraded!

Let's just remove the `version` field.  It doesn't work and never did.

https://github.com/NixOS/nixpkgs/pull/185004#discussion_r939526830

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-08-12 18:45:17 -07:00
Ben Wolsieffer
208af5a599 arm-trusted-firmware: 2.6 -> 2.7 2022-06-11 22:47:31 -04:00
Adam Joseph
8485bfc9bf arm-trusted-firmware: unfree only if hdcp.bin used; otherwise delete it
The `unfreeIncludeHDCPBlob` parameter was introduced as a result of
this reviewer request:

  https://github.com/NixOS/nixpkgs/issues/148890#issuecomment-1032002903

The default value `unfreeIncludeHDCPBlob?true` causes a change in the
`meta.license` field for all of the subpackages within
`pkgs/misc/arm-trusted-firmware/`, and results in them needing
`NIXPKGS_ALLOW_NONFREE=1`.

For non-Rockchip platforms the file hdcp.bin does not get included in
the output; the blob is for a Synopsys HDCP core that is currently
used only by Rockchip (although other companies could license it from
Synopsys in the future). Therefore on non-Rockchip we can delete
hdcp.bin before building instead of changing the license. This
preserves the ability to build them without NIXPKGS_ALLOW_NONFREE=1.

Let's do that.

Deleting hdcp.bin ensures that we won't be caught by surprise if some
future non-Rockchip Arm CPU licenses the same Synopsys HDCP core that
Rockchip is using.

Use easier-to-follow names for controlling the blob
inclusion/exclusion.  Also, if the blob is believed to be unnecessary,
delete it beforehand so we will know if we were wrong about that belief.

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-05-29 16:07:15 -07:00
Adam Joseph
d94759023d make meta.license be a list rather than a single value 2022-02-08 01:53:25 -08:00
Adam Joseph
a5b8650f8d arm-trusted-firmware: add unfreeIncludeHDCPBlob?true to control license and blob-removal patch
This change implements @lukegb's idea:

  https://github.gitop.top/NixOS/nixpkgs/issues/148890#issuecomment-1032002903

Specifically, it introduces a new parameter unfreeIncludeHDCPBlob
(defaults to true):

* If unfreeIncludeHDCPBlob==true then the license is changed to
  unfreeRedistributable, which will alert the user to the fact that
  the blob is being included (unless they set NIXPKGS_ALLOW_UNFREE=1).

* If unfreeIncludeHDCPBlob==false then the license is kept as bsd3, but
  a patch is applied to remove the HDCP blob from the build.
2022-02-08 01:44:21 -08:00
Adam Joseph
bb0a925a76 remove unfree HDCP blob from arm-trusted-firmware, closes #148890
This patch comes from https://gitlab.com/vicencb/kevinboot/-/blob/master/atf.patch

I have been running firmware with this patch on my daily driver rk3399
laptop for the past four months.
2022-02-05 16:38:47 -08:00
Felix Buehler
a4cf5b79fd treewide: rename name to pname&version 2022-01-27 17:29:01 +01:00
R. Ryantm
30149a0856 armTrustedFirmwareTools: 2.5 -> 2.6 2021-12-11 22:59:11 +00:00
Markus S. Wamser
b0249fdf99 pkgs.misc: remove unused args 2021-11-13 23:09:33 +01:00
Samuel Dionne-Riel
db8ab32efd
Merge pull request #125743 from novmar/novmar/orange_pi_zero2_support
ubootOrangePiZero2: init
2021-10-04 21:55:24 -04:00
Florian Klink
1cbe006fb4 armTrustedFirmware*: fix hash
Either this was republished with another hash, or the hash was wrong
before all ready. Now I'm able to fetch and build it :-)
2021-06-22 12:33:21 +02:00
Marcel Novotny
25a4ef905f armTrustedFirmwareAllwinnerH616: init 2021-06-14 00:29:15 +02:00
R. RyanTM
8ac72be1ab armTrustedFirmwareTools: 2.4 -> 2.5 2021-05-22 09:08:02 +00:00
R. RyanTM
0cbb80e7f1 armTrustedFirmwareTools: 2.3 -> 2.4 2020-11-22 19:57:06 +00:00
Pavol Rusnak
84ff95a95a
arm-trusted-firmware: 2.2 -> 2.3 2020-04-22 12:11:28 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
R. RyanTM
26165d98df armTrustedFirmwareTools: 2.1 -> 2.2 2020-01-15 06:48:02 +00:00
Ben Wolsieffer
d00a38aa70 armTrustedFirmwareS905: init
This supports the Amlogic S905, otherwise known as Meson GXBB.
2019-12-05 21:59:07 -05:00
Ben Wolsieffer
b5ec2b5c63 armTrustedFirmwareTools: init
This package currently contains fiptool, cert_create and sptool.
2019-12-05 21:59:07 -05:00
volth
08f68313a4 treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
Samuel Dionne-Riel
b64a5cfc72 arm-trusted-firmware: Switch Allwinner to upstream 2019-05-18 13:41:52 -04:00
Samuel Dionne-Riel
b69c4744e3 arm-trusted-firmware: 2.0 -> 2.1 2019-05-18 13:41:27 -04:00
Ben Wolsieffer
7edd0389e1 arm-trusted-firmware: add RK3399 2019-01-18 17:53:21 -05:00
Ben Wolsieffer
8a816723ce arm-trusted-firmware: 1.5 -> 2.0 2019-01-18 17:53:21 -05:00
Patrick Hilhorst
0e381e084e
arm-trusted-firmware: correctly handle version overrides 2018-11-06 00:06:22 +01:00
Tuomas Tynkkynen
bab5a0664c armTrustedFirmware: Disable parallel build
I think https://hydra.nixos.org/build/71541345 is parallel build
related.
2018-03-23 19:03:26 +02:00
Tuomas Tynkkynen
107eaa8780 armTrustedFirmwareQemu: 1.4 -> 1.5, fixes build with GCC7 2018-03-23 19:03:04 +02:00
Tuomas Tynkkynen
a2d8a9aad7 armTrustedFirmware: Remove targetPlatforms like was done in U-Boot
Should also fix Hydra attempting to build this stuff on x86, like
https://hydra.nixos.org/build/71533289
2018-03-20 02:33:40 +02:00
Samuel Dionne-Riel
f2175e1bd4 arm-trusted-firmware: Inits at various versions
For qemu, at 1.4 from upstream.

For Sopine / Pine A64-LTS, at 1.0 from fork.
2018-03-18 18:53:12 +02:00
Ben Wolsieffer
0ab76c5a4e arm-trusted-firmware: init
ARM trusted firmware is required as part of the boot process on some ARMv8-A
boards. Currently, only the RK3328 is supported in nixpkgs.

This makes the Rock64 u-boot image bootable.
2018-03-18 18:53:12 +02:00