From e2306904ab970791096002be52239def3a25e466 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Fri, 25 Aug 2023 20:08:56 -0400 Subject: [PATCH 01/27] nerves_system_br: bump to v1.23.3 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 5e733e8..b2eaeb6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.23.2 - elixir: 1.15.2-otp-26 + version: 1.23.3 + elixir: 1.15.4-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index ac08e20..c90a3c9 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.23.2", runtime: false}, + {:nerves_system_br, "1.23.3", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 1.8.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index de62041..cd8bd31 100644 --- a/mix.lock +++ b/mix.lock @@ -2,13 +2,13 @@ "castore": {:hex, :castore, "1.0.3", "7130ba6d24c8424014194676d608cb989f62ef8039efd50ff4b3f33286d06db8", [:mix], [], "hexpm", "680ab01ef5d15b161ed6a95449fac5c6b8f60055677a8e79acf01b27baa4390b"}, "earmark_parser": {:hex, :earmark_parser, "1.4.33", "3c3fd9673bb5dcc9edc28dd90f50c87ce506d1f71b70e3de69aa8154bc695d44", [:mix], [], "hexpm", "2d526833729b59b9fdb85785078697c72ac5e5066350663e5be6a1182da61b8f"}, "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, - "ex_doc": {:hex, :ex_doc, "0.30.3", "bfca4d340e3b95f2eb26e72e4890da83e2b3a5c5b0e52607333bf5017284b063", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "fbc8702046c1d25edf79de376297e608ac78cdc3a29f075484773ad1718918b6"}, + "ex_doc": {:hex, :ex_doc, "0.30.6", "5f8b54854b240a2b55c9734c4b1d0dd7bdd41f71a095d42a70445c03cf05a281", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "bd48f2ddacf4e482c727f9293d9498e0881597eae6ddc3d9562bd7923375109f"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.0", "6b67c8bc2882a6b6a445859952a602afc1a41c2e08379ca057c0f525366fc3ca", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "0a45ed501f4a8897f580eabf99a2e5234ea3e75a4373c8a52824f6e873be57a6"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, "nerves": {:hex, :nerves, "1.10.3", "31e29aaee9d9a4e7aa396a926d646c251cacf7c9e5f96b312dc23486dcd2231e", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "84ff7f82bd9fb313af90bf5c6230825fa90f2e159d0355584a9d0ff1d29f4e56"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.23.2", "1e9ef3b384e3b325ab5cc4a0767c6cbfdc8dcac1040b7a8c9b762e73db0cbfde", [:mix], [], "hexpm", "da32bde1c0746055ce12618798967dc2449c3af2e1f10d04d288b511a0ce12dd"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.23.3", "9ea1fa4df627e4cf5b498d506a6f4ac94654c82a5d259386bb4d5d2cab91eccc", [:mix], [], "hexpm", "fd28e1d92151fdd61bd5db06f11cd9e0b252592315fd9be774643f659206af52"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "1.8.0", "40f7fe58737aaa9c6beee0e3599cca2265d1b4e40d7ab2713d7ad872349f21c2", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.9.3", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "c06a16b54634bbab7348ee7686e3b02574e0af742144c406b0f196b5b374349c"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.9.3", "60e87fde05988c4264babc8d68a9221c7b8fe5dc195b7d1526f29b8e626c735c", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "2b6edb0687b7f78d3fa49958d759f647e351b23c1f59f637c617a6dc179994ae"}, From 6c1b0f9818f8712c755a0d4d44e925fc2902089c Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Wed, 20 Sep 2023 11:50:04 -0400 Subject: [PATCH 02/27] v1.23.2 release --- CHANGELOG.md | 9 +++++++++ VERSION | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 051f9ff..cbc132e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,15 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.23.2 + +* Fixes + * This fixes a rare aarch64 Erlang JIT bug that affects NervesKey users. See + `nerves_system_br` notes. + +* Updated dependencies + * [nerves_system_br v1.23.3](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.23.3) + ## v1.23.1 This is a bug and security fix update. It should be a low risk upgrade. diff --git a/VERSION b/VERSION index 49e0a31..14bee92 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.23.1 +1.23.2 From 577979fc3c3ac73471b021065c2d25b210f461c2 Mon Sep 17 00:00:00 2001 From: Jon Carstens Date: Fri, 8 Sep 2023 11:38:33 -0600 Subject: [PATCH 03/27] Upgrade `fwup-revert.conf` to more capable `fwup-ops.conf` --- fwup-revert.conf => fwup-ops.conf | 115 ++++++++++++++++++++++++------ mix.exs | 2 +- post-build.sh | 8 ++- 3 files changed, 101 insertions(+), 24 deletions(-) rename fwup-revert.conf => fwup-ops.conf (68%) diff --git a/fwup-revert.conf b/fwup-ops.conf similarity index 68% rename from fwup-revert.conf rename to fwup-ops.conf index 788dc6b..012432c 100644 --- a/fwup-revert.conf +++ b/fwup-ops.conf @@ -1,17 +1,25 @@ -# Revert firmware for the Raspberry Pi 4 +# # Post-installation firmware operations for the Raspberry Pi 4 +# +# Tasks include: +# +# * `factory-reset` - Clear out the writable filesystem and any other writable +# areas so that they can be re-initialized on the next boot. +# * `prevent-revert` - Prevent `revert` from working until the next firmware +# * `revert` - Revert to the previous firmware if it's still available +# * `validate` - Mark this firmware as a good update. +# * `status` - Print out which partition is active (`a` or `b`) # # To use: -# 1. Run `fwup -c -f fwup-revert.conf -o revert.fw` and copy revert.fw to -# the device. This is done automatically as part of the Nerves system -# build process. The file is stored in `/usr/share/fwup/revert.fw`. -# 2. On the device, run `fwup -t revert revert.fw -d $NERVES_FW_DEVPATH`. If -# it succeeds, reboot. If not, then it's possible that there isn't a previous -# firmware or the metadata about what's stored where is corrupt or out of -# sync. +# +# 1. Run `fwup -c -f fwup-ops.conf -o ops.fw` and copy ops.fw to +# the device. This is done automatically as part of the Nerves system +# build process. The file is stored in `/usr/share/fwup/ops.fw`. +# 2. On the device, run `fwup -t -d /dev/rootdisk0 --enable-trim /usr/share/fwup/ops.fw`. +# 3. Reboot after running `revert` or `factory-reset`. # # It is critical that this is kept in sync with the main fwup.conf. -require-fwup-version="0.19.0" +require-fwup-version="1.0.0" # # Firmware metadata @@ -30,16 +38,8 @@ define(NERVES_FW_PLATFORM, "rpi4") define(NERVES_FW_ARCHITECTURE, "arm") define(NERVES_FW_AUTHOR, "The Nerves Team") -define(NERVES_FW_DEVPATH, "/dev/mmcblk0") -define(NERVES_FW_APPLICATION_PART0_DEVPATH, "/dev/mmcblk0p3") # Linux part number is 1-based -define(NERVES_FW_APPLICATION_PART0_FSTYPE, "f2fs") -define(NERVES_FW_APPLICATION_PART0_TARGET, "/root") - -# Default paths if not specified via the commandline -define(ROOTFS, "${NERVES_SYSTEM}/images/rootfs.squashfs") - -# This configuration file will create an image that has an MBR and the -# following 3 partitions: +# This configuration file will create an image that +# has an MBR and the following layout: # # +----------------------------+ # | MBR | @@ -150,6 +150,65 @@ uboot-environment uboot-env { block-count = ${UBOOT_ENV_COUNT} } +## +# factory-reset +## +task factory-reset { + on-init { + info("Erasing all writable data") + # This requires --enable-trim + # Trim may not work on MicroSD card, so don't rely on it + trim(${APP_PART_OFFSET}, ${APP_PART_COUNT}) + raw_memset(${APP_PART_OFFSET}, 256, 0xff) + } +} + +## +# prevent-revert +# +# Pass `--enable-trim` to also clear out the partition that no longer should be used. +## +task prevent-revert.a { + # Check that we're running on B + require-partition-offset(0, ${BOOT_B_PART_OFFSET}) + require-partition-offset(1, ${ROOTFS_B_PART_OFFSET}) + require-uboot-variable(uboot-env, "nerves_fw_active", "b") + + on-init { + info("Preventing reverts to partition A") + # Remove U-Boot variables that fwup uses to allow reverting images + uboot_unsetenv(uboot-env, "a.nerves_fw_platform") + uboot_unsetenv(uboot-env, "a.nerves_fw_architecture") + # Clear out the old image using TRIM. This requires --enable-trim + trim(${ROOTFS_A_PART_OFFSET}, ${ROOTFS_A_PART_COUNT}) + trim(${BOOT_A_PART_OFFSET}, ${BOOT_A_PART_COUNT}) + } +} +task prevent-revert.b { + # Check that we're running on A + require-partition-offset(0, ${BOOT_A_PART_OFFSET}) + require-partition-offset(1, ${ROOTFS_A_PART_OFFSET}) + require-uboot-variable(uboot-env, "nerves_fw_active", "a") + + on-init { + info("Preventing reverts to partition B") + # Remove U-Boot variables that fwup uses to allow reverting images + uboot_unsetenv(uboot-env, "b.nerves_fw_platform") + uboot_unsetenv(uboot-env, "b.nerves_fw_architecture") + # Clear out the image using TRIM. This requires --enable-trim + trim(${ROOTFS_B_PART_OFFSET}, ${ROOTFS_B_PART_COUNT}) + trim(${BOOT_B_PART_OFFSET}, ${BOOT_B_PART_COUNT}) + } +} +task prevent-revert.fail { + on-init { + error("Error detecting active partition") + } +} + +## +# revert +## task revert.a { # This task reverts to the A partition, so check that we're running on B require-partition-offset(0, ${BOOT_B_PART_OFFSET}) @@ -211,7 +270,11 @@ task revert.wrongplatform { } } -# Run "fwup /usr/share/fwup/revert.fw -t status -d /dev/mmcblk0 -q -U" to check the status. +## +# status +# +# Run "fwup /usr/share/fwup/ops.fw -t status -d /dev/rootdisk0 -q -U" to check the status. +## task status.aa { require-path-at-offset("/", ${ROOTFS_A_PART_OFFSET}) require-uboot-variable(uboot-env, "nerves_fw_active", "a") @@ -235,3 +298,15 @@ task status.ba { task status.fail { on-init { error("fail") } } + +## +# validate +# +# The fwup configuration for this device always validates, so this doesn't do anything. +## +task validate { + on-init { + info("Validate") + uboot_setenv(uboot-env, "nerves_fw_validated", "1") + } +} diff --git a/mix.exs b/mix.exs index c90a3c9..4183cca 100644 --- a/mix.exs +++ b/mix.exs @@ -104,7 +104,7 @@ defmodule NervesSystemRpi4.MixProject do "CHANGELOG.md", "cmdline.txt", "config.txt", - "fwup-revert.conf", + "fwup-ops.conf", "fwup.conf", "LICENSE", "linux-6.1.defconfig", diff --git a/post-build.sh b/post-build.sh index 894f099..8da89ba 100755 --- a/post-build.sh +++ b/post-build.sh @@ -19,10 +19,12 @@ function slim_down_dri_libs() { slim_down_dri_libs -# Create the revert script for manually switching back to the previously -# active firmware. +# Create the fwup ops script to handling MicroSD/eMMC operations at runtime +# NOTE: revert.fw is the previous, more limited version of this. ops.fw is +# backwards compatible. mkdir -p $TARGET_DIR/usr/share/fwup -$HOST_DIR/usr/bin/fwup -c -f $NERVES_DEFCONFIG_DIR/fwup-revert.conf -o $TARGET_DIR/usr/share/fwup/revert.fw +$HOST_DIR/usr/bin/fwup -c -f $NERVES_DEFCONFIG_DIR/fwup-ops.conf -o $TARGET_DIR/usr/share/fwup/ops.fw +ln -sf ops.fw $TARGET_DIR/usr/share/fwup/revert.fw # Copy the fwup includes to the images dir cp -rf $NERVES_DEFCONFIG_DIR/fwup_include $BINARIES_DIR From 2f740cfa2a3092904c91dd9cc4b82677de36afdf Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Tue, 26 Sep 2023 22:43:06 -0400 Subject: [PATCH 04/27] nerves_system_br: bump to v1.24.0 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index b2eaeb6..2558f6d 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.23.3 - elixir: 1.15.4-otp-26 + version: 1.24.0 + elixir: 1.15.6-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 4183cca..94c1dfc 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.23.3", runtime: false}, + {:nerves_system_br, "1.24.0", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 1.8.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index cd8bd31..c8c1af9 100644 --- a/mix.lock +++ b/mix.lock @@ -1,14 +1,14 @@ %{ "castore": {:hex, :castore, "1.0.3", "7130ba6d24c8424014194676d608cb989f62ef8039efd50ff4b3f33286d06db8", [:mix], [], "hexpm", "680ab01ef5d15b161ed6a95449fac5c6b8f60055677a8e79acf01b27baa4390b"}, - "earmark_parser": {:hex, :earmark_parser, "1.4.33", "3c3fd9673bb5dcc9edc28dd90f50c87ce506d1f71b70e3de69aa8154bc695d44", [:mix], [], "hexpm", "2d526833729b59b9fdb85785078697c72ac5e5066350663e5be6a1182da61b8f"}, + "earmark_parser": {:hex, :earmark_parser, "1.4.36", "487ea8ef9bdc659f085e6e654f3c3feea1d36ac3943edf9d2ef6c98de9174c13", [:mix], [], "hexpm", "a524e395634bdcf60a616efe77fd79561bec2e930d8b82745df06ab4e844400a"}, "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, "ex_doc": {:hex, :ex_doc, "0.30.6", "5f8b54854b240a2b55c9734c4b1d0dd7bdd41f71a095d42a70445c03cf05a281", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "bd48f2ddacf4e482c727f9293d9498e0881597eae6ddc3d9562bd7923375109f"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.0", "6b67c8bc2882a6b6a445859952a602afc1a41c2e08379ca057c0f525366fc3ca", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "0a45ed501f4a8897f580eabf99a2e5234ea3e75a4373c8a52824f6e873be57a6"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, - "nerves": {:hex, :nerves, "1.10.3", "31e29aaee9d9a4e7aa396a926d646c251cacf7c9e5f96b312dc23486dcd2231e", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "84ff7f82bd9fb313af90bf5c6230825fa90f2e159d0355584a9d0ff1d29f4e56"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.23.3", "9ea1fa4df627e4cf5b498d506a6f4ac94654c82a5d259386bb4d5d2cab91eccc", [:mix], [], "hexpm", "fd28e1d92151fdd61bd5db06f11cd9e0b252592315fd9be774643f659206af52"}, + "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.24.0", "f8cc877b2b5cb469d52af149ebd4a194c6caf1892b3676fc7943c437037b9a93", [:mix], [], "hexpm", "bd9828a7ef3edbfda0a594b362c8ecd668ea6a51f950dbb35de4d13b9d6fda74"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "1.8.0", "40f7fe58737aaa9c6beee0e3599cca2265d1b4e40d7ab2713d7ad872349f21c2", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.9.3", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "c06a16b54634bbab7348ee7686e3b02574e0af742144c406b0f196b5b374349c"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.9.3", "60e87fde05988c4264babc8d68a9221c7b8fe5dc195b7d1526f29b8e626c735c", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "2b6edb0687b7f78d3fa49958d759f647e351b23c1f59f637c617a6dc179994ae"}, From 5a813d57a3b88f71b350c843f9cebb9b0db6ad9a Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Wed, 27 Sep 2023 07:22:18 -0400 Subject: [PATCH 05/27] v1.24.0 release --- CHANGELOG.md | 13 +++++++++++++ VERSION | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cbc132e..d6e3bb4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,19 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.24.0 + +This is a Buildroot version update that appears to mostly contain bug and +security fixes. It should be a low risk upgrade from v1.23.2. + +* New features + * Support factory reset, preventing firmware reverts. See [Nerves.Runtime.FwupOps](https://hexdocs.pm/nerves_runtime/Nerves.Runtime.FwupOps.html) + +* Updated dependencies + * [nerves_system_br v1.24.0](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.24.0) + * [Buildroot 2023.05.2](https://lore.kernel.org/buildroot/87ledrkrpp.fsf@48ers.dk/T/), [2023.05.1](https://lore.kernel.org/buildroot/87351m8qm4.fsf@48ers.dk/T/), [2023.05](https://lore.kernel.org/buildroot/87r0qn2c77.fsf@48ers.dk/T/) + * [Erlang/OTP 26.1](https://erlang.org/download/OTP-26.1.README) + ## v1.23.2 * Fixes diff --git a/VERSION b/VERSION index 14bee92..53cc1a6 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.23.2 +1.24.0 From d42debbba5db0315eb3807b620602f35416b8f83 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 5 Oct 2023 22:36:25 -0400 Subject: [PATCH 06/27] nerves_system_br: bump to v1.24.1 --- .circleci/config.yml | 2 +- mix.exs | 2 +- mix.lock | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 2558f6d..833e7b8 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,6 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.24.0 + version: 1.24.1 elixir: 1.15.6-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 94c1dfc..066c217 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.24.0", runtime: false}, + {:nerves_system_br, "1.24.1", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 1.8.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index c8c1af9..0d76efc 100644 --- a/mix.lock +++ b/mix.lock @@ -1,6 +1,6 @@ %{ - "castore": {:hex, :castore, "1.0.3", "7130ba6d24c8424014194676d608cb989f62ef8039efd50ff4b3f33286d06db8", [:mix], [], "hexpm", "680ab01ef5d15b161ed6a95449fac5c6b8f60055677a8e79acf01b27baa4390b"}, - "earmark_parser": {:hex, :earmark_parser, "1.4.36", "487ea8ef9bdc659f085e6e654f3c3feea1d36ac3943edf9d2ef6c98de9174c13", [:mix], [], "hexpm", "a524e395634bdcf60a616efe77fd79561bec2e930d8b82745df06ab4e844400a"}, + "castore": {:hex, :castore, "1.0.4", "ff4d0fb2e6411c0479b1d965a814ea6d00e51eb2f58697446e9c41a97d940b28", [:mix], [], "hexpm", "9418c1b8144e11656f0be99943db4caf04612e3eaecefb5dae9a2a87565584f8"}, + "earmark_parser": {:hex, :earmark_parser, "1.4.37", "2ad73550e27c8946648b06905a57e4d454e4d7229c2dafa72a0348c99d8be5f7", [:mix], [], "hexpm", "6b19783f2802f039806f375610faa22da130b8edc21209d0bff47918bb48360e"}, "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, "ex_doc": {:hex, :ex_doc, "0.30.6", "5f8b54854b240a2b55c9734c4b1d0dd7bdd41f71a095d42a70445c03cf05a281", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "bd48f2ddacf4e482c727f9293d9498e0881597eae6ddc3d9562bd7923375109f"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, @@ -8,7 +8,7 @@ "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.24.0", "f8cc877b2b5cb469d52af149ebd4a194c6caf1892b3676fc7943c437037b9a93", [:mix], [], "hexpm", "bd9828a7ef3edbfda0a594b362c8ecd668ea6a51f950dbb35de4d13b9d6fda74"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.24.1", "2c9df0bee3bc01a971e1d72a5b137fe9448a74ba1fdd0da02c52e291b468f8a7", [:mix], [], "hexpm", "d13ce0501f4db51869628d138edf5bffbb4fe38f3afa9f9f1e5371f7501535ff"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "1.8.0", "40f7fe58737aaa9c6beee0e3599cca2265d1b4e40d7ab2713d7ad872349f21c2", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.9.3", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "c06a16b54634bbab7348ee7686e3b02574e0af742144c406b0f196b5b374349c"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.9.3", "60e87fde05988c4264babc8d68a9221c7b8fe5dc195b7d1526f29b8e626c735c", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "2b6edb0687b7f78d3fa49958d759f647e351b23c1f59f637c617a6dc179994ae"}, From 8a3ffb8feabb34d7efb00c37ec2712409b03260f Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Mon, 9 Oct 2023 16:46:19 -0400 Subject: [PATCH 07/27] v1.24.1 release --- CHANGELOG.md | 9 +++++++++ VERSION | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d6e3bb4..9ef5aae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,15 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.24.1 + +This is a security/bug fix update. + +* Package updates + * [nerves_system_br v1.24.1](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.24.1) + * [Erlang/OTP 26.1.1](https://erlang.org/download/OTP-26.1.1.README) + * [Buildroot 2023.05.3](https://lore.kernel.org/buildroot/87h6ngup34.fsf@48ers.dk/T/) + ## v1.24.0 This is a Buildroot version update that appears to mostly contain bug and diff --git a/VERSION b/VERSION index 53cc1a6..f9e8384 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.24.0 +1.24.1 From d6ca210e326188d30fb3432949d388abc831e21f Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Tue, 24 Oct 2023 23:09:58 -0400 Subject: [PATCH 08/27] nerves_system_br: bump to v1.25.0 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 4 ++-- nerves_defconfig | 2 ++ 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 833e7b8..8e7e5eb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.24.1 - elixir: 1.15.6-otp-26 + version: 1.25.0 + elixir: 1.15.7-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 066c217..fa44165 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.24.1", runtime: false}, + {:nerves_system_br, "1.25.0", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 1.8.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index 0d76efc..3f342e0 100644 --- a/mix.lock +++ b/mix.lock @@ -2,13 +2,13 @@ "castore": {:hex, :castore, "1.0.4", "ff4d0fb2e6411c0479b1d965a814ea6d00e51eb2f58697446e9c41a97d940b28", [:mix], [], "hexpm", "9418c1b8144e11656f0be99943db4caf04612e3eaecefb5dae9a2a87565584f8"}, "earmark_parser": {:hex, :earmark_parser, "1.4.37", "2ad73550e27c8946648b06905a57e4d454e4d7229c2dafa72a0348c99d8be5f7", [:mix], [], "hexpm", "6b19783f2802f039806f375610faa22da130b8edc21209d0bff47918bb48360e"}, "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, - "ex_doc": {:hex, :ex_doc, "0.30.6", "5f8b54854b240a2b55c9734c4b1d0dd7bdd41f71a095d42a70445c03cf05a281", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "bd48f2ddacf4e482c727f9293d9498e0881597eae6ddc3d9562bd7923375109f"}, + "ex_doc": {:hex, :ex_doc, "0.30.9", "d691453495c47434c0f2052b08dd91cc32bc4e1a218f86884563448ee2502dd2", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "d7aaaf21e95dc5cddabf89063327e96867d00013963eadf2c6ad135506a8bc10"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.0", "6b67c8bc2882a6b6a445859952a602afc1a41c2e08379ca057c0f525366fc3ca", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "0a45ed501f4a8897f580eabf99a2e5234ea3e75a4373c8a52824f6e873be57a6"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.24.1", "2c9df0bee3bc01a971e1d72a5b137fe9448a74ba1fdd0da02c52e291b468f8a7", [:mix], [], "hexpm", "d13ce0501f4db51869628d138edf5bffbb4fe38f3afa9f9f1e5371f7501535ff"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.25.0", "9be7b035c685939550950e3e98f1e3290150217c4dc631edae9ef656bfbe2230", [:mix], [], "hexpm", "1993b4805a1da01dc4b06d2f1adce170439ee01d3e14f95cb20f407e8835553a"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "1.8.0", "40f7fe58737aaa9c6beee0e3599cca2265d1b4e40d7ab2713d7ad872349f21c2", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.9.3", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "c06a16b54634bbab7348ee7686e3b02574e0af742144c406b0f196b5b374349c"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.9.3", "60e87fde05988c4264babc8d68a9221c7b8fe5dc195b7d1526f29b8e626c735c", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "2b6edb0687b7f78d3fa49958d759f647e351b23c1f59f637c617a6dc179994ae"}, diff --git a/nerves_defconfig b/nerves_defconfig index 92e4ec3..3b49754 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -6,10 +6,12 @@ BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/nerves-project/toolchains/releases/download/v1.8.0/nerves_toolchain_aarch64_nerves_linux_gnu-linux_${shell uname -m}-1.8.0-E9F5B2A.tar.xz" BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="aarch64-nerves-linux-gnu" +BR2_TOOLCHAIN_EXTERNAL_GCC_12=y BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y # BR2_TOOLCHAIN_EXTERNAL_INET_RPC is not set BR2_TOOLCHAIN_EXTERNAL_CXX=y +BR2_TOOLCHAIN_EXTERNAL_FORTRAN=y BR2_TOOLCHAIN_EXTERNAL_OPENMP=y BR2_TAR_OPTIONS="--no-same-owner" BR2_BACKUP_SITE="http://dl.nerves-project.org" From 43c64c2090956b719a89ab95a42f1a5a8acdfe90 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Wed, 8 Nov 2023 10:12:54 -0500 Subject: [PATCH 09/27] Bump toolchain to GCC 13.2 --- mix.exs | 2 +- mix.lock | 4 ++-- nerves_defconfig | 5 ++--- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/mix.exs b/mix.exs index fa44165..2a1890e 100644 --- a/mix.exs +++ b/mix.exs @@ -68,7 +68,7 @@ defmodule NervesSystemRpi4.MixProject do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, {:nerves_system_br, "1.25.0", runtime: false}, - {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 1.8.0", runtime: false}, + {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} ] diff --git a/mix.lock b/mix.lock index 3f342e0..6b3c6a6 100644 --- a/mix.lock +++ b/mix.lock @@ -10,7 +10,7 @@ "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, "nerves_system_br": {:hex, :nerves_system_br, "1.25.0", "9be7b035c685939550950e3e98f1e3290150217c4dc631edae9ef656bfbe2230", [:mix], [], "hexpm", "1993b4805a1da01dc4b06d2f1adce170439ee01d3e14f95cb20f407e8835553a"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, - "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "1.8.0", "40f7fe58737aaa9c6beee0e3599cca2265d1b4e40d7ab2713d7ad872349f21c2", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.9.3", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "c06a16b54634bbab7348ee7686e3b02574e0af742144c406b0f196b5b374349c"}, - "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.9.3", "60e87fde05988c4264babc8d68a9221c7b8fe5dc195b7d1526f29b8e626c735c", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "2b6edb0687b7f78d3fa49958d759f647e351b23c1f59f637c617a6dc179994ae"}, + "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, + "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, "nimble_parsec": {:hex, :nimble_parsec, "1.3.1", "2c54013ecf170e249e9291ed0a62e5832f70a476c61da16f6aac6dca0189f2af", [:mix], [], "hexpm", "2682e3c0b2eb58d90c6375fc0cc30bc7be06f365bf72608804fb9cffa5e1b167"}, } diff --git a/nerves_defconfig b/nerves_defconfig index 3b49754..553c0f3 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -4,10 +4,9 @@ BR2_ARM_FPU_VFPV4=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y -BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/nerves-project/toolchains/releases/download/v1.8.0/nerves_toolchain_aarch64_nerves_linux_gnu-linux_${shell uname -m}-1.8.0-E9F5B2A.tar.xz" +BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/nerves-project/toolchains/releases/download/v13.2.0/nerves_toolchain_aarch64_nerves_linux_gnu-linux_${shell uname -m}-13.2.0-CE4B5F8.tar.xz" BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="aarch64-nerves-linux-gnu" -BR2_TOOLCHAIN_EXTERNAL_GCC_12=y -BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19=y +BR2_TOOLCHAIN_EXTERNAL_HEADERS_5_4=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y # BR2_TOOLCHAIN_EXTERNAL_INET_RPC is not set BR2_TOOLCHAIN_EXTERNAL_CXX=y From f503c7d289a1b76ab105db14ff1c5c143a7ee3a9 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 14 Dec 2023 13:08:37 -0500 Subject: [PATCH 10/27] nerves_system_br: bump to v1.25.2 --- .circleci/config.yml | 2 +- mix.exs | 2 +- mix.lock | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 8e7e5eb..2d3548f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,6 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.25.0 + version: 1.25.2 elixir: 1.15.7-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 2a1890e..675aaea 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.25.0", runtime: false}, + {:nerves_system_br, "1.25.2", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index 6b3c6a6..e7d068a 100644 --- a/mix.lock +++ b/mix.lock @@ -1,16 +1,16 @@ %{ - "castore": {:hex, :castore, "1.0.4", "ff4d0fb2e6411c0479b1d965a814ea6d00e51eb2f58697446e9c41a97d940b28", [:mix], [], "hexpm", "9418c1b8144e11656f0be99943db4caf04612e3eaecefb5dae9a2a87565584f8"}, - "earmark_parser": {:hex, :earmark_parser, "1.4.37", "2ad73550e27c8946648b06905a57e4d454e4d7229c2dafa72a0348c99d8be5f7", [:mix], [], "hexpm", "6b19783f2802f039806f375610faa22da130b8edc21209d0bff47918bb48360e"}, + "castore": {:hex, :castore, "1.0.5", "9eeebb394cc9a0f3ae56b813459f990abb0a3dedee1be6b27fdb50301930502f", [:mix], [], "hexpm", "8d7c597c3e4a64c395980882d4bca3cebb8d74197c590dc272cfd3b6a6310578"}, + "earmark_parser": {:hex, :earmark_parser, "1.4.39", "424642f8335b05bb9eb611aa1564c148a8ee35c9c8a8bba6e129d51a3e3c6769", [:mix], [], "hexpm", "06553a88d1f1846da9ef066b87b57c6f605552cfbe40d20bd8d59cc6bde41944"}, "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, - "ex_doc": {:hex, :ex_doc, "0.30.9", "d691453495c47434c0f2052b08dd91cc32bc4e1a218f86884563448ee2502dd2", [:mix], [{:earmark_parser, "~> 1.4.31", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "d7aaaf21e95dc5cddabf89063327e96867d00013963eadf2c6ad135506a8bc10"}, + "ex_doc": {:hex, :ex_doc, "0.31.0", "06eb1dfd787445d9cab9a45088405593dd3bb7fe99e097eaa71f37ba80c7a676", [:mix], [{:earmark_parser, "~> 1.4.39", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.1", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "5350cafa6b7f77bdd107aa2199fe277acf29d739aba5aee7e865fc680c62a110"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, - "makeup": {:hex, :makeup, "1.1.0", "6b67c8bc2882a6b6a445859952a602afc1a41c2e08379ca057c0f525366fc3ca", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "0a45ed501f4a8897f580eabf99a2e5234ea3e75a4373c8a52824f6e873be57a6"}, + "makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, - "makeup_erlang": {:hex, :makeup_erlang, "0.1.2", "ad87296a092a46e03b7e9b0be7631ddcf64c790fa68a9ef5323b6cbb36affc72", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f3f5a1ca93ce6e092d92b6d9c049bcda58a3b617a8d888f8e7231c85630e8108"}, + "makeup_erlang": {:hex, :makeup_erlang, "0.1.3", "d684f4bac8690e70b06eb52dad65d26de2eefa44cd19d64a8095e1417df7c8fd", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "b78dc853d2e670ff6390b605d807263bf606da3c82be37f9d7f68635bd886fc9"}, "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.25.0", "9be7b035c685939550950e3e98f1e3290150217c4dc631edae9ef656bfbe2230", [:mix], [], "hexpm", "1993b4805a1da01dc4b06d2f1adce170439ee01d3e14f95cb20f407e8835553a"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.25.2", "9eda8b2c7d4077684ca5f5417660da88b676c43d2163d46b3d3a9cfedccd277b", [:mix], [], "hexpm", "b532f4e639b38b6a25a52ed44199e3d93a29cc805f59752bb9e3f73b6a324523"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, - "nimble_parsec": {:hex, :nimble_parsec, "1.3.1", "2c54013ecf170e249e9291ed0a62e5832f70a476c61da16f6aac6dca0189f2af", [:mix], [], "hexpm", "2682e3c0b2eb58d90c6375fc0cc30bc7be06f365bf72608804fb9cffa5e1b167"}, + "nimble_parsec": {:hex, :nimble_parsec, "1.4.0", "51f9b613ea62cfa97b25ccc2c1b4216e81df970acd8e16e8d1bdc58fef21370d", [:mix], [], "hexpm", "9c565862810fb383e9838c1dd2d7d2c437b3d13b267414ba6af33e50d2d1cf28"}, } From f646e0fc702aec08f12ef80f58d23dcd816faf13 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 14 Dec 2023 18:54:44 -0500 Subject: [PATCH 11/27] Bump kernel to stable_20231123 (6.1.63) --- nerves_defconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nerves_defconfig b/nerves_defconfig index 553c0f3..209f5a5 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -29,7 +29,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="${NERVES_DEFCONFIG_DIR}/post-build.sh ${BR2_EXTERN BR2_ROOTFS_POST_IMAGE_SCRIPT="${NERVES_DEFCONFIG_DIR}/post-createfs.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/refs/tags/1.20230405.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/refs/tags/stable_20231123.tar.gz" BR2_LINUX_KERNEL_PATCH="${NERVES_DEFCONFIG_DIR}/linux" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${NERVES_DEFCONFIG_DIR}/linux-6.1.defconfig" @@ -49,7 +49,7 @@ BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D=y BR2_PACKAGE_MESA3D_OPENGL_ES=y BR2_PACKAGE_RPI_FIRMWARE=y -BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="1.20230405" +BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="93d3f791a28ab369a62d2baf06035fc533b00864" BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y BR2_PACKAGE_PIGPIO=y # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set From ba6c818339eac3c34c585a9480f00895bc6f518d Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 14 Dec 2023 18:57:03 -0500 Subject: [PATCH 12/27] Use ARMv8 floating point --- nerves_defconfig | 1 - 1 file changed, 1 deletion(-) diff --git a/nerves_defconfig b/nerves_defconfig index 209f5a5..13b67e5 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -1,6 +1,5 @@ BR2_aarch64=y BR2_cortex_a72=y -BR2_ARM_FPU_VFPV4=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y From 62e0d10e6fc546cfce93fa1c171d86f4dc4ad6bd Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sat, 16 Dec 2023 17:29:31 -0500 Subject: [PATCH 13/27] Remove more TV tuner drivers; resave Linux config --- linux-6.1.defconfig | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/linux-6.1.defconfig b/linux-6.1.defconfig index 7383376..12fe41b 100644 --- a/linux-6.1.defconfig +++ b/linux-6.1.defconfig @@ -224,7 +224,6 @@ CONFIG_TOUCHSCREEN_RASPBERRYPI_FW=m # CONFIG_SERIO is not set CONFIG_BRCM_CHAR_DRIVERS=y CONFIG_BCM_VCIO=y -CONFIG_BCM2835_DEVGPIOMEM=y CONFIG_RPIVID_MEM=m # CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_8250=y @@ -282,11 +281,11 @@ CONFIG_USB_VIDEO_CLASS=m CONFIG_V4L_PLATFORM_DRIVERS=y CONFIG_VIDEO_BCM2835_UNICAM=m CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_IMX477=m CONFIG_VIDEO_IMX708=m CONFIG_VIDEO_OV5647=m CONFIG_VIDEO_AD5398=m CONFIG_VIDEO_DW9807_VCM=m -CONFIG_VIDEO_IMX477=m CONFIG_VIDEO_TC358743=m CONFIG_VIDEO_TC358743_CEC=y # CONFIG_CXD2880_SPI_DRV is not set @@ -327,6 +326,7 @@ CONFIG_VIDEO_TC358743_CEC=y # CONFIG_MEDIA_TUNER_XC2028 is not set # CONFIG_MEDIA_TUNER_XC4000 is not set # CONFIG_MEDIA_TUNER_XC5000 is not set +# CONFIG_DVB_M88DS3103 is not set # CONFIG_DVB_MXL5XX is not set # CONFIG_DVB_STB0899 is not set # CONFIG_DVB_STB6100 is not set @@ -366,6 +366,7 @@ CONFIG_VIDEO_TC358743_CEC=y # CONFIG_DVB_VES1X93 is not set # CONFIG_DVB_ZL10036 is not set # CONFIG_DVB_ZL10039 is not set +# CONFIG_DVB_AF9013 is not set # CONFIG_DVB_CX22700 is not set # CONFIG_DVB_CX22702 is not set # CONFIG_DVB_CXD2820R is not set @@ -380,7 +381,11 @@ CONFIG_VIDEO_TC358743_CEC=y # CONFIG_DVB_L64781 is not set # CONFIG_DVB_MT352 is not set # CONFIG_DVB_NXT6000 is not set +# CONFIG_DVB_RTL2830 is not set +# CONFIG_DVB_RTL2832 is not set +# CONFIG_DVB_RTL2832_SDR is not set # CONFIG_DVB_S5H1432 is not set +# CONFIG_DVB_SI2168 is not set # CONFIG_DVB_SP887X is not set # CONFIG_DVB_STV0367 is not set # CONFIG_DVB_TDA10048 is not set @@ -397,6 +402,7 @@ CONFIG_VIDEO_TC358743_CEC=y # CONFIG_DVB_BCM3510 is not set # CONFIG_DVB_LG2160 is not set # CONFIG_DVB_LGDT3305 is not set +# CONFIG_DVB_LGDT3306A is not set # CONFIG_DVB_LGDT330X is not set # CONFIG_DVB_MXL692 is not set # CONFIG_DVB_NXT200X is not set From 56abc87aedd4798b9936330043cd3a55bec5cada Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sat, 16 Dec 2023 23:18:06 -0500 Subject: [PATCH 14/27] Enable /dev/fb0; remove unused simpledrm --- linux-6.1.defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/linux-6.1.defconfig b/linux-6.1.defconfig index 12fe41b..355ec61 100644 --- a/linux-6.1.defconfig +++ b/linux-6.1.defconfig @@ -447,9 +447,9 @@ CONFIG_DRM_TOSHIBA_TC358762=m CONFIG_DRM_V3D=m CONFIG_DRM_VC4=m CONFIG_DRM_VC4_HDMI_CEC=y -CONFIG_DRM_SIMPLEDRM=m CONFIG_TINYDRM_REPAPER=m CONFIG_FB=y +CONFIG_FB_MODE_HELPERS=y CONFIG_FB_BCM2708=y CONFIG_FB_RPISENSE=m CONFIG_BACKLIGHT_CLASS_DEVICE=m From b9165b2149d8bf72561c4d0fd28fecbb76e4356b Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sat, 16 Dec 2023 23:18:29 -0500 Subject: [PATCH 15/27] Enable libcairo for Scenic --- nerves_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/nerves_defconfig b/nerves_defconfig index 13b67e5..edcf791 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -61,6 +61,7 @@ BR2_PACKAGE_RPI_USERLAND=y BR2_PACKAGE_CA_CERTIFICATES=y BR2_PACKAGE_LIBP11=y BR2_PACKAGE_UNIXODBC=y +BR2_PACKAGE_CAIRO=y BR2_PACKAGE_DTC=y BR2_PACKAGE_LIBCAMERA_V4L2=y BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI=y From df7062cf0872a319ee4aa75da9df6aa6ec2b0b33 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sat, 16 Dec 2023 23:19:57 -0500 Subject: [PATCH 16/27] Don't let bootloader set kms parameters --- config.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/config.txt b/config.txt index baf1eb6..f76aa4c 100644 --- a/config.txt +++ b/config.txt @@ -41,6 +41,10 @@ display_auto_detect=1 dtoverlay=vc4-kms-v3d max_framebuffers=2 +# Don't have the firmware create an initial video= setting in cmdline.txt. +# Use the kernel's default instead. +disable_fw_kms_setup=1 + # Disable compensation for displays with overscan disable_overscan=1 From bb86650230e0f143b4aaa531e7a10d651a8652b6 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sun, 17 Dec 2023 13:54:04 -0500 Subject: [PATCH 17/27] v1.25.0 release --- CHANGELOG.md | 16 ++++++++++++++++ VERSION | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ef5aae..548288f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,22 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.25.0 + +This is a major Buildroot and toolchain update that also adds support for using +Scenic without customizing the system. + +Please see [nerves_system_br v1.25.0 release notes](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.25.0) +for upgrade instructions if you've forked this system. + +* New features + * Add libcairo for [Scenic](https://github.com/ScenicFramework/scenic) support + +* Updated dependencies + * [nerves_system_br v1.25.2](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.25.2) + * [Buildroot 2023.08.4](https://lore.kernel.org/buildroot/87o7f6t7fs.fsf@48ers.dk/T/) + * [Erlang/OTP 26.1.2](https://erlang.org/download/OTP-26.1.2.README) + ## v1.24.1 This is a security/bug fix update. diff --git a/VERSION b/VERSION index f9e8384..ad21919 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.24.1 +1.25.0 From 7fad82f53bb099f4215967a96f49642f79752d20 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 4 Jan 2024 14:33:17 -0500 Subject: [PATCH 18/27] nerves_system_br: bump to v1.25.3 --- .circleci/config.yml | 2 +- mix.exs | 2 +- mix.lock | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 2d3548f..3722fbe 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,6 +1,6 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.25.2 + version: 1.25.3 elixir: 1.15.7-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 675aaea..0b86853 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.25.2", runtime: false}, + {:nerves_system_br, "1.25.3", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index e7d068a..d08dd91 100644 --- a/mix.lock +++ b/mix.lock @@ -7,8 +7,8 @@ "makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.3", "d684f4bac8690e70b06eb52dad65d26de2eefa44cd19d64a8095e1417df7c8fd", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "b78dc853d2e670ff6390b605d807263bf606da3c82be37f9d7f68635bd886fc9"}, - "nerves": {:hex, :nerves, "1.10.4", "9c7e1f3e0e2896216c1b623dc05e05ec434d5f3f1d8291d4688b61b1a4f5540d", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "2e9c728f1d95e6ce998a4836d2f96f27777663953339d0f85fb68dc11ab48f1d"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.25.2", "9eda8b2c7d4077684ca5f5417660da88b676c43d2163d46b3d3a9cfedccd277b", [:mix], [], "hexpm", "b532f4e639b38b6a25a52ed44199e3d93a29cc805f59752bb9e3f73b6a324523"}, + "nerves": {:hex, :nerves, "1.10.5", "9c4296a5fd9c48858a92b17ae52cfcf1bc9acfefdc2da5c10ec79e4c139ecaec", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "a1309b6c56e2797f7514e89afc61b7c06803f359e94b00ac006bef4e611d95e9"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.25.3", "c7d9c2a14cff2283fdd59ecc2aeff54d9a0af04d86665884d0ca4481b5dd4095", [:mix], [], "hexpm", "56a1fd471c178477e39562c67d07f821b3dd5b3efc50200c15d143e0fe4c2963"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, From 298d6dfd003ecafce5f1e2727f9413b0be688fc2 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Fri, 5 Jan 2024 14:24:24 -0500 Subject: [PATCH 19/27] v1.25.1 release --- CHANGELOG.md | 8 ++++++++ VERSION | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 548288f..3c09f00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,14 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.25.1 + +This is a security/bug fix update. + + Package updates + * [Erlang/OTP 26.2.1](https://erlang.org/download/OTP-26.2.1.README) + * [nerves_heart 2.3.0](https://github.com/nerves-project/nerves_heart/releases/tag/v2.3.0) + ## v1.25.0 This is a major Buildroot and toolchain update that also adds support for using diff --git a/VERSION b/VERSION index ad21919..d905a6d 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.25.0 +1.25.1 From 2199794ada8a621aef5c4d11fc7d7d23a6ade254 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christopher=20Cot=C3=A9?= Date: Sat, 13 Jan 2024 13:01:30 -0500 Subject: [PATCH 20/27] Add the imx296 overlays for the Raspberry Pi Global Shutter Camera (#221) --- fwup.conf | 6 ++++++ linux-6.1.defconfig | 1 + 2 files changed, 7 insertions(+) diff --git a/fwup.conf b/fwup.conf index 33b31d3..f63908e 100644 --- a/fwup.conf +++ b/fwup.conf @@ -153,6 +153,9 @@ file-resource ramoops.dtbo { file-resource imx219.dtbo { host-path = "${NERVES_SYSTEM}/images/rpi-firmware/overlays/imx219.dtbo" } +file-resource imx296.dtbo { + host-path = "${NERVES_SYSTEM}/images/rpi-firmware/overlays/imx296.dtbo" +} file-resource imx477.dtbo { host-path = "${NERVES_SYSTEM}/images/rpi-firmware/overlays/imx477.dtbo" } @@ -275,6 +278,7 @@ task complete { on-resource dwc2.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/dwc2.dtbo") } on-resource ramoops.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/ramoops.dtbo") } on-resource imx219.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx219.dtbo") } + on-resource imx296.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx296.dtbo") } on-resource imx477.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx477.dtbo") } on-resource imx708.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx708.dtbo") } on-resource ov5647.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/ov5647.dtbo") } @@ -351,6 +355,7 @@ task upgrade.a { on-resource dwc2.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/dwc2.dtbo") } on-resource ramoops.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/ramoops.dtbo") } on-resource imx219.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx219.dtbo") } + on-resource imx296.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx296.dtbo") } on-resource imx477.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx477.dtbo") } on-resource imx708.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/imx708.dtbo") } on-resource ov5647.dtbo { fat_write(${BOOT_A_PART_OFFSET}, "overlays/ov5647.dtbo") } @@ -435,6 +440,7 @@ task upgrade.b { on-resource dwc2.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/dwc2.dtbo") } on-resource ramoops.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/ramoops.dtbo") } on-resource imx219.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/imx219.dtbo") } + on-resource imx296.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/imx296.dtbo") } on-resource imx477.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/imx477.dtbo") } on-resource imx708.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/imx708.dtbo") } on-resource ov5647.dtbo { fat_write(${BOOT_B_PART_OFFSET}, "overlays/ov5647.dtbo") } diff --git a/linux-6.1.defconfig b/linux-6.1.defconfig index 355ec61..8e0f2f6 100644 --- a/linux-6.1.defconfig +++ b/linux-6.1.defconfig @@ -281,6 +281,7 @@ CONFIG_USB_VIDEO_CLASS=m CONFIG_V4L_PLATFORM_DRIVERS=y CONFIG_VIDEO_BCM2835_UNICAM=m CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_IMX296=m CONFIG_VIDEO_IMX477=m CONFIG_VIDEO_IMX708=m CONFIG_VIDEO_OV5647=m From 5d3e50fb683057439a74124ecf38b091f4fd4a52 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sat, 27 Jan 2024 20:40:49 -0500 Subject: [PATCH 21/27] nerves_system_br: bump to v1.26.0 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 6 +++--- nerves_defconfig | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 3722fbe..958cfdd 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.25.3 - elixir: 1.15.7-otp-26 + version: 1.26.0 + elixir: 1.16.0-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 0b86853..55aa144 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.25.3", runtime: false}, + {:nerves_system_br, "1.26.0", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index d08dd91..fef3299 100644 --- a/mix.lock +++ b/mix.lock @@ -1,14 +1,14 @@ %{ "castore": {:hex, :castore, "1.0.5", "9eeebb394cc9a0f3ae56b813459f990abb0a3dedee1be6b27fdb50301930502f", [:mix], [], "hexpm", "8d7c597c3e4a64c395980882d4bca3cebb8d74197c590dc272cfd3b6a6310578"}, "earmark_parser": {:hex, :earmark_parser, "1.4.39", "424642f8335b05bb9eb611aa1564c148a8ee35c9c8a8bba6e129d51a3e3c6769", [:mix], [], "hexpm", "06553a88d1f1846da9ef066b87b57c6f605552cfbe40d20bd8d59cc6bde41944"}, - "elixir_make": {:hex, :elixir_make, "0.7.7", "7128c60c2476019ed978210c245badf08b03dbec4f24d05790ef791da11aa17c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}], "hexpm", "5bc19fff950fad52bbe5f211b12db9ec82c6b34a9647da0c2224b8b8464c7e6c"}, - "ex_doc": {:hex, :ex_doc, "0.31.0", "06eb1dfd787445d9cab9a45088405593dd3bb7fe99e097eaa71f37ba80c7a676", [:mix], [{:earmark_parser, "~> 1.4.39", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.1", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "5350cafa6b7f77bdd107aa2199fe277acf29d739aba5aee7e865fc680c62a110"}, + "elixir_make": {:hex, :elixir_make, "0.7.8", "505026f266552ee5aabca0b9f9c229cbb496c689537c9f922f3eb5431157efc7", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.0", [hex: :certifi, repo: "hexpm", optional: true]}], "hexpm", "7a71945b913d37ea89b06966e1342c85cfe549b15e6d6d081e8081c493062c07"}, + "ex_doc": {:hex, :ex_doc, "0.31.1", "8a2355ac42b1cc7b2379da9e40243f2670143721dd50748bf6c3b1184dae2089", [:mix], [{:earmark_parser, "~> 1.4.39", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.1", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "3178c3a407c557d8343479e1ff117a96fd31bafe52a039079593fb0524ef61b0"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, "makeup_erlang": {:hex, :makeup_erlang, "0.1.3", "d684f4bac8690e70b06eb52dad65d26de2eefa44cd19d64a8095e1417df7c8fd", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "b78dc853d2e670ff6390b605d807263bf606da3c82be37f9d7f68635bd886fc9"}, "nerves": {:hex, :nerves, "1.10.5", "9c4296a5fd9c48858a92b17ae52cfcf1bc9acfefdc2da5c10ec79e4c139ecaec", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "a1309b6c56e2797f7514e89afc61b7c06803f359e94b00ac006bef4e611d95e9"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.25.3", "c7d9c2a14cff2283fdd59ecc2aeff54d9a0af04d86665884d0ca4481b5dd4095", [:mix], [], "hexpm", "56a1fd471c178477e39562c67d07f821b3dd5b3efc50200c15d143e0fe4c2963"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.26.0", "1324ddeaa3ded59d188caf7330c19f3b25fd23c104ce8c02449f4336f3e4a24f", [:mix], [], "hexpm", "16499c2595eec7822eed2a1f94efa1074f03bcb035b77a28c66634ebca027500"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, diff --git a/nerves_defconfig b/nerves_defconfig index edcf791..a198aa3 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -64,7 +64,7 @@ BR2_PACKAGE_UNIXODBC=y BR2_PACKAGE_CAIRO=y BR2_PACKAGE_DTC=y BR2_PACKAGE_LIBCAMERA_V4L2=y -BR2_PACKAGE_LIBCAMERA_PIPELINE_RASPBERRYPI=y +BR2_PACKAGE_LIBCAMERA_PIPELINE_RPI_VC4=y BR2_PACKAGE_LIBCAMERA_APPS=y BR2_PACKAGE_LIBMNL=y BR2_PACKAGE_WIRELESS_REGDB=y From 9bf36741bb70fadbf3aa431f3de1aff5bc83dc73 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Fri, 9 Feb 2024 08:21:46 -0500 Subject: [PATCH 22/27] nerves_system_br: bump to v1.26.1 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 958cfdd..ace671c 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.26.0 - elixir: 1.16.0-otp-26 + version: 1.26.1 + elixir: 1.16.1-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 55aa144..3f58272 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.26.0", runtime: false}, + {:nerves_system_br, "1.26.1", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index fef3299..0395719 100644 --- a/mix.lock +++ b/mix.lock @@ -6,9 +6,9 @@ "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"}, "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, - "makeup_erlang": {:hex, :makeup_erlang, "0.1.3", "d684f4bac8690e70b06eb52dad65d26de2eefa44cd19d64a8095e1417df7c8fd", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "b78dc853d2e670ff6390b605d807263bf606da3c82be37f9d7f68635bd886fc9"}, + "makeup_erlang": {:hex, :makeup_erlang, "0.1.4", "29563475afa9b8a2add1b7a9c8fb68d06ca7737648f28398e04461f008b69521", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f4ed47ecda66de70dd817698a703f8816daa91272e7e45812469498614ae8b29"}, "nerves": {:hex, :nerves, "1.10.5", "9c4296a5fd9c48858a92b17ae52cfcf1bc9acfefdc2da5c10ec79e4c139ecaec", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "a1309b6c56e2797f7514e89afc61b7c06803f359e94b00ac006bef4e611d95e9"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.26.0", "1324ddeaa3ded59d188caf7330c19f3b25fd23c104ce8c02449f4336f3e4a24f", [:mix], [], "hexpm", "16499c2595eec7822eed2a1f94efa1074f03bcb035b77a28c66634ebca027500"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.26.1", "3fdea86844638e4e0419b3e28d5a71438c5d120b5e4038c8b3b0c3e8e17c3327", [:mix], [], "hexpm", "a619c79d38410f4a5950b4cfa2de74e937fef6c5b01f257422f3d2e0d0e9ba57"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, From 02ab421c0e502163ddc4d0baa9f16a6fc94fa22e Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sun, 18 Feb 2024 08:33:17 -0500 Subject: [PATCH 23/27] v1.26.0 release --- CHANGELOG.md | 15 +++++++++++++++ VERSION | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c09f00..3586075 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,21 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.26.0 + +This is a major Buildroot update. + +Please see the [nerves_system_br v1.26.0 release notes](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.26.0) +for upgrade instructions if you've forked this system. + +* New features + * Add the imx296 overlays for the Raspberry Pi Global Shutter Camera + +* Updated dependencies + * [Erlang/OTP 26.2.2](https://erlang.org/download/OTP-26.2.2.README) + * [nerves_system_br v1.26.1](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.26.1) + * [Buildroot 2023.11.1](https://lore.kernel.org/buildroot/87cyu2k2gu.fsf@48ers.dk/T/) + ## v1.25.1 This is a security/bug fix update. diff --git a/VERSION b/VERSION index d905a6d..5ff8c4f 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.25.1 +1.26.0 From 3b264a7756c41afcfa645db15f8603ae2cef274d Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 21 Mar 2024 00:05:02 -0400 Subject: [PATCH 24/27] nerves_system_br: bump to v1.27.0 --- .circleci/config.yml | 4 ++-- mix.exs | 2 +- mix.lock | 12 ++++++------ nerves_defconfig | 10 ++++------ 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index ace671c..8dfb5b3 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,7 +1,7 @@ exec: &exec name: build-tools/nerves-system-br - version: 1.26.1 - elixir: 1.16.1-otp-26 + version: 1.27.0 + elixir: 1.16.2-otp-26 version: 2.1 diff --git a/mix.exs b/mix.exs index 3f58272..05fd04a 100644 --- a/mix.exs +++ b/mix.exs @@ -67,7 +67,7 @@ defmodule NervesSystemRpi4.MixProject do defp deps do [ {:nerves, "~> 1.5.4 or ~> 1.6.0 or ~> 1.7.15 or ~> 1.8", runtime: false}, - {:nerves_system_br, "1.26.1", runtime: false}, + {:nerves_system_br, "1.27.0", runtime: false}, {:nerves_toolchain_aarch64_nerves_linux_gnu, "~> 13.2.0", runtime: false}, {:nerves_system_linter, "~> 0.4", only: [:dev, :test], runtime: false}, {:ex_doc, "~> 0.22", only: :docs, runtime: false} diff --git a/mix.lock b/mix.lock index 0395719..9e310e9 100644 --- a/mix.lock +++ b/mix.lock @@ -1,14 +1,14 @@ %{ - "castore": {:hex, :castore, "1.0.5", "9eeebb394cc9a0f3ae56b813459f990abb0a3dedee1be6b27fdb50301930502f", [:mix], [], "hexpm", "8d7c597c3e4a64c395980882d4bca3cebb8d74197c590dc272cfd3b6a6310578"}, + "castore": {:hex, :castore, "1.0.6", "ffc42f110ebfdafab0ea159cd43d31365fa0af0ce4a02ecebf1707ae619ee727", [:mix], [], "hexpm", "374c6e7ca752296be3d6780a6d5b922854ffcc74123da90f2f328996b962d33a"}, "earmark_parser": {:hex, :earmark_parser, "1.4.39", "424642f8335b05bb9eb611aa1564c148a8ee35c9c8a8bba6e129d51a3e3c6769", [:mix], [], "hexpm", "06553a88d1f1846da9ef066b87b57c6f605552cfbe40d20bd8d59cc6bde41944"}, - "elixir_make": {:hex, :elixir_make, "0.7.8", "505026f266552ee5aabca0b9f9c229cbb496c689537c9f922f3eb5431157efc7", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.0", [hex: :certifi, repo: "hexpm", optional: true]}], "hexpm", "7a71945b913d37ea89b06966e1342c85cfe549b15e6d6d081e8081c493062c07"}, - "ex_doc": {:hex, :ex_doc, "0.31.1", "8a2355ac42b1cc7b2379da9e40243f2670143721dd50748bf6c3b1184dae2089", [:mix], [{:earmark_parser, "~> 1.4.39", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.1", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "3178c3a407c557d8343479e1ff117a96fd31bafe52a039079593fb0524ef61b0"}, + "elixir_make": {:hex, :elixir_make, "0.8.2", "cd4a5a75891362e9207adaac7e66223fd256ec2518ae013af7f10c9c85b50b5c", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: true]}, {:certifi, "~> 2.0", [hex: :certifi, repo: "hexpm", optional: true]}], "hexpm", "9d9607d640c372a7291e5a56ce655aa2351897929be20bd211648fdb79e725dc"}, + "ex_doc": {:hex, :ex_doc, "0.31.2", "8b06d0a5ac69e1a54df35519c951f1f44a7b7ca9a5bb7a260cd8a174d6322ece", [:mix], [{:earmark_parser, "~> 1.4.39", [hex: :earmark_parser, repo: "hexpm", optional: false]}, {:makeup_c, ">= 0.1.1", [hex: :makeup_c, repo: "hexpm", optional: true]}, {:makeup_elixir, "~> 0.14", [hex: :makeup_elixir, repo: "hexpm", optional: false]}, {:makeup_erlang, "~> 0.1", [hex: :makeup_erlang, repo: "hexpm", optional: false]}], "hexpm", "317346c14febaba9ca40fd97b5b5919f7751fb85d399cc8e7e8872049f37e0af"}, "jason": {:hex, :jason, "1.4.1", "af1504e35f629ddcdd6addb3513c3853991f694921b1b9368b0bd32beb9f1b63", [:mix], [{:decimal, "~> 1.0 or ~> 2.0", [hex: :decimal, repo: "hexpm", optional: true]}], "hexpm", "fbb01ecdfd565b56261302f7e1fcc27c4fb8f32d56eab74db621fc154604a7a1"}, "makeup": {:hex, :makeup, "1.1.1", "fa0bc768698053b2b3869fa8a62616501ff9d11a562f3ce39580d60860c3a55e", [:mix], [{:nimble_parsec, "~> 1.2.2 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "5dc62fbdd0de44de194898b6710692490be74baa02d9d108bc29f007783b0b48"}, - "makeup_elixir": {:hex, :makeup_elixir, "0.16.1", "cc9e3ca312f1cfeccc572b37a09980287e243648108384b97ff2b76e505c3555", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "e127a341ad1b209bd80f7bd1620a15693a9908ed780c3b763bccf7d200c767c6"}, - "makeup_erlang": {:hex, :makeup_erlang, "0.1.4", "29563475afa9b8a2add1b7a9c8fb68d06ca7737648f28398e04461f008b69521", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "f4ed47ecda66de70dd817698a703f8816daa91272e7e45812469498614ae8b29"}, + "makeup_elixir": {:hex, :makeup_elixir, "0.16.2", "627e84b8e8bf22e60a2579dad15067c755531fea049ae26ef1020cad58fe9578", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}, {:nimble_parsec, "~> 1.2.3 or ~> 1.3", [hex: :nimble_parsec, repo: "hexpm", optional: false]}], "hexpm", "41193978704763f6bbe6cc2758b84909e62984c7752b3784bd3c218bb341706b"}, + "makeup_erlang": {:hex, :makeup_erlang, "0.1.5", "e0ff5a7c708dda34311f7522a8758e23bfcd7d8d8068dc312b5eb41c6fd76eba", [:mix], [{:makeup, "~> 1.0", [hex: :makeup, repo: "hexpm", optional: false]}], "hexpm", "94d2e986428585a21516d7d7149781480013c56e30c6a233534bedf38867a59a"}, "nerves": {:hex, :nerves, "1.10.5", "9c4296a5fd9c48858a92b17ae52cfcf1bc9acfefdc2da5c10ec79e4c139ecaec", [:make, :mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:elixir_make, "~> 0.6", [hex: :elixir_make, repo: "hexpm", optional: false]}, {:jason, "~> 1.2", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "a1309b6c56e2797f7514e89afc61b7c06803f359e94b00ac006bef4e611d95e9"}, - "nerves_system_br": {:hex, :nerves_system_br, "1.26.1", "3fdea86844638e4e0419b3e28d5a71438c5d120b5e4038c8b3b0c3e8e17c3327", [:mix], [], "hexpm", "a619c79d38410f4a5950b4cfa2de74e937fef6c5b01f257422f3d2e0d0e9ba57"}, + "nerves_system_br": {:hex, :nerves_system_br, "1.27.0", "95be1ddfe55554d45cd30c2e534a2090691ec94126f3bdc22cd507890adb0e32", [:mix], [], "hexpm", "95a89c478aa6a35cb8baf2554c1840f2057d93bc14cc8d5acce0124c8487c96c"}, "nerves_system_linter": {:hex, :nerves_system_linter, "0.4.0", "81e9a6f5018fe5fb67d7b43a04dca36156f62b55b5554eb2fa3964d3889d09cd", [:mix], [], "hexpm", "b5bd8480ce7a6317f4601ff41fd2f594bdf76aff0bdf6dcfac571c3fa1ec5f82"}, "nerves_toolchain_aarch64_nerves_linux_gnu": {:hex, :nerves_toolchain_aarch64_nerves_linux_gnu, "13.2.0", "68fcd2c21c86cceb9545948fae052d72f88b7c7c10205b252dac88559e2a3369", [:mix], [{:nerves, "~> 1.4", [hex: :nerves, repo: "hexpm", optional: false]}, {:nerves_toolchain_ctng, "~> 1.10.0", [hex: :nerves_toolchain_ctng, repo: "hexpm", optional: false]}], "hexpm", "f92212606919a062f975e7bd82ed8a1b95bd4864abb3444cd0d5d0e610e94cc5"}, "nerves_toolchain_ctng": {:hex, :nerves_toolchain_ctng, "1.10.0", "c6b35377a0b7a93633a8673a788f1580fe1fa06083374b0e4df36da65828d2ef", [:mix], [{:nerves, "~> 1.0", [hex: :nerves, repo: "hexpm", optional: false]}], "hexpm", "e4ae1a2b84de3502ecac195765819be0ce2834eb276553163a7c03133f1760f1"}, diff --git a/nerves_defconfig b/nerves_defconfig index a198aa3..0be929f 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -14,7 +14,6 @@ BR2_TOOLCHAIN_EXTERNAL_OPENMP=y BR2_TAR_OPTIONS="--no-same-owner" BR2_BACKUP_SITE="http://dl.nerves-project.org" BR2_ENABLE_DEBUG=y -BR2_OPTIMIZE_2=y BR2_GLOBAL_PATCH_DIR="${BR2_EXTERNAL_NERVES_PATH}/patches" BR2_REPRODUCIBLE=y BR2_ROOTFS_SKELETON_CUSTOM=y @@ -28,7 +27,7 @@ BR2_ROOTFS_POST_BUILD_SCRIPT="${NERVES_DEFCONFIG_DIR}/post-build.sh ${BR2_EXTERN BR2_ROOTFS_POST_IMAGE_SCRIPT="${NERVES_DEFCONFIG_DIR}/post-createfs.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/refs/tags/stable_20231123.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/raspberrypi/linux/archive/refs/tags/stable_20240124.tar.gz" BR2_LINUX_KERNEL_PATCH="${NERVES_DEFCONFIG_DIR}/linux" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="${NERVES_DEFCONFIG_DIR}/linux-6.1.defconfig" @@ -48,7 +47,7 @@ BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D=y BR2_PACKAGE_MESA3D_OPENGL_ES=y BR2_PACKAGE_RPI_FIRMWARE=y -BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="93d3f791a28ab369a62d2baf06035fc533b00864" +BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="d1fcc26038186aecc1501a0b749833300afba801" BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y BR2_PACKAGE_PIGPIO=y # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set @@ -63,9 +62,6 @@ BR2_PACKAGE_LIBP11=y BR2_PACKAGE_UNIXODBC=y BR2_PACKAGE_CAIRO=y BR2_PACKAGE_DTC=y -BR2_PACKAGE_LIBCAMERA_V4L2=y -BR2_PACKAGE_LIBCAMERA_PIPELINE_RPI_VC4=y -BR2_PACKAGE_LIBCAMERA_APPS=y BR2_PACKAGE_LIBMNL=y BR2_PACKAGE_WIRELESS_REGDB=y BR2_PACKAGE_WPA_SUPPLICANT=y @@ -82,4 +78,6 @@ BR2_NERVES_SYSTEM_NAME="nerves_system_rpi4" BR2_NERVES_ADDITIONAL_IMAGE_FILES="${NERVES_DEFCONFIG_DIR}/fwup.conf ${NERVES_DEFCONFIG_DIR}/cmdline.txt ${NERVES_DEFCONFIG_DIR}/config.txt" BR2_PACKAGE_NBTTY=y BR2_PACKAGE_NERVES_CONFIG=y +BR2_PACKAGE_RPICAM_APPS=y BR2_PACKAGE_RPI_DISTRO_FIRMWARE_NONFREE=y +BR2_PACKAGE_RPI_LIBCAMERA_V4L2=y From d7a51c7d9355bf13b6a7fc455ef3e00b4923d189 Mon Sep 17 00:00:00 2001 From: Jon Carstens Date: Sun, 24 Mar 2024 19:42:37 -0600 Subject: [PATCH 25/27] Add back `GPIOMEM` `/dev/gpiomem` was being used by other libraries for non-root memory access of GPIO (such as `:dht`). In a previous commit, this was removed as part of a different cleanup and these libs are now failing (see [62e0d10](https://github.com/nerves-project/nerves_system_rpi4/commit/62e0d10e6fc546cfce93fa1c171d86f4dc4ad6bd#diff-9b91e2e2d7d2d703307dd4d74f2c4b93f461abe21b276e79650c714d401380bdL227)) This adds back `CONFIG_RASPBERRYPI_GPIOMEM` which is also enabled for all the other raspberry pi systems --- linux-6.1.defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/linux-6.1.defconfig b/linux-6.1.defconfig index 8e0f2f6..cae749b 100644 --- a/linux-6.1.defconfig +++ b/linux-6.1.defconfig @@ -242,6 +242,7 @@ CONFIG_TTY_PRINTK=y CONFIG_HW_RANDOM=y # CONFIG_HW_RANDOM_ARM_SMCCC_TRNG is not set # CONFIG_HW_RANDOM_CN10K is not set +CONFIG_RASPBERRYPI_GPIOMEM=m CONFIG_I2C=y CONFIG_I2C_CHARDEV=y CONFIG_I2C_MUX=m From 31517e9a384a9b9d8220023ee2fa0dbab5f8a8ac Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Thu, 28 Mar 2024 09:43:14 -0400 Subject: [PATCH 26/27] Use exact same rpi-firmware version as other systems --- nerves_defconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nerves_defconfig b/nerves_defconfig index 0be929f..e38bbcc 100644 --- a/nerves_defconfig +++ b/nerves_defconfig @@ -47,7 +47,7 @@ BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST=y BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D=y BR2_PACKAGE_MESA3D_OPENGL_ES=y BR2_PACKAGE_RPI_FIRMWARE=y -BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="d1fcc26038186aecc1501a0b749833300afba801" +BR2_PACKAGE_RPI_FIRMWARE_CUSTOM_VERSION="d4a1760a76873c467e99a5a27f98815e65fb9a55" BR2_PACKAGE_RPI_FIRMWARE_VARIANT_PI4_X=y BR2_PACKAGE_PIGPIO=y # BR2_PACKAGE_RNG_TOOLS_JITTERENTROPY_LIBRARY is not set From 540936fc828511cce670be4981ae1a81caa80750 Mon Sep 17 00:00:00 2001 From: Frank Hunleth Date: Sun, 31 Mar 2024 20:53:05 -0400 Subject: [PATCH 27/27] v1.27.0 release --- CHANGELOG.md | 18 ++++++++++++++++++ VERSION | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3586075..c54c22e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,24 @@ follows: releases, and Linux kernel updates. They're also made to fix bugs and add features to the build infrastructure. +## v1.27.0 + +This is a major Buildroot update. + +Please see the [nerves_system_br v1.27.0 release notes](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.26.0) +for upgrade instructions if you've forked this system. + +* Changes + * The `libcamera` and `rpicam_apps` packages have been replaced with the + Raspberry Pi-forked versions for better compatibility. Please see + `nerves_system_br` release notes. + * Add back `CONFIG_RASPBERRYPI_GPIOMEM` to support the `dht` library. + +* Updated dependencies + * [nerves_system_br v1.27.0](https://github.com/nerves-project/nerves_system_br/releases/tag/v1.27.0) + * [Buildroot 2024.02](https://lore.kernel.org/buildroot/87msrczp4z.fsf@48ers.dk/) + * [Erlang/OTP 26.2.3](https://erlang.org/download/OTP-26.2.3.README) + ## v1.26.0 This is a major Buildroot update. diff --git a/VERSION b/VERSION index 5ff8c4f..5db08bf 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.26.0 +1.27.0