From nobody Wed Jun 3 18:25:33 2026 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gVx2k0wz1z6gQq8 for ; Wed, 03 Jun 2026 18:25:34 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gVx2j5wD0z4C95 for ; Wed, 03 Jun 2026 18:25:33 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780511133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=peT9G4oZfOEdP/Dwf+/RKV1yCSDkNq7FJs7yacXnq0A=; b=H3thOO4UVZeW8euhsU8JPybeJs8W39D5IVPlvD/89w3AbJm8l476H2ECUQvZC71ziS7fKa HrwC/v4vqKHhO2ST+cMgSragT4hAwWEqXobQob1P6/tCkqHCuD5kvdaDTQxv0aTtJL+hgA 4xeV6bZt8pQo3F8YSmX5AJkfBKQQEjY8sJq9Cgn/IeCC05N/sF0hmjJzCB8TuIc7UVYBS6 HN+/0Ej5vtqroDOIYN6Npbr+sWcLzbWgLNRhtQ5Os90nPriVWsCMExUoLp5AO1x+795MRY Vc5xuBIaQlQHvBCB/nqM4ERk1GHyYBKWt47jsNN7BXmljEGhDcusGkk3AmupVA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1780511133; a=rsa-sha256; cv=none; b=vL49t/VtcjfS6m8qQ09qX+R3ZSm9T8HSt+nug4fddI8WLZUWl5XQ6bxHgrBMh1wNYzUoXW 18eIsdOr5TqpsgAIgg86LHWn83JVsFe+lKHAoHo/NndaObESFRVGxm+UC2mqHafh6xV1hq aLi0Ut4WYJJi+LLHNHlVvDAY1UOjTIRBGdkszx/Z1VTLdIuPJ/QbMHqGWAtolbpf5uJMy6 +A8muIZV54X4nOtx5WmDTCIdft7KKMX6qEEQHrZtMV5Xjueba/+aIgpw3GkFkpsLy3LC0g IJxgAoC5ISvFTj/qU7SBhCTisw/fWZLwFExeidDqg9w8QXX0jCeI0OSIuIwefQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1780511133; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=peT9G4oZfOEdP/Dwf+/RKV1yCSDkNq7FJs7yacXnq0A=; b=BPMDV+sTXH3duVLBkRhQsXR5zsoGCt0+nXkLIGgNPlehDE7IB0Cmqkst4H+2Dz3OCo0blq YRPnhN9r2k0asny7lE5KQdxrxzeiJjOxPp1t7xgNY3JAs8DF/sUVVoCiSQptiwgxv7OjjX J6GWbkuPkSc0F73pXn5DYrd/ZBCfRpkWcRkdLaT2TkHVf3uBRQlAfgtV1fwWjEAKQLQxxd XcmxwnxIpwuy0Pr2+RvgnZx44zSTybHOeJIblQWI4lG9r+CAuLdGltoDI7nMB+fXj88Vtw ULuH7pNNQkpq+XYmfR+J0iZk+4kZSMKJTTyhlf97c1XD3YTPcSf5NRAwVd9ASA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gVx2j5Ffcz73b for ; Wed, 03 Jun 2026 18:25:33 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 2288c by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 03 Jun 2026 18:25:33 +0000 To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Joseph Mingrone Subject: git: a20df639517c - main - sysutils/rpi-usbboot: Raspberry Pi USB device provisioning tool List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jrm X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a20df639517c1ca99c5145d9e00293ec008a8391 Auto-Submitted: auto-generated Date: Wed, 03 Jun 2026 18:25:33 +0000 Message-Id: <6a20719d.2288c.7af73496@gitrepo.freebsd.org> The branch main has been updated by jrm: URL: https://cgit.FreeBSD.org/ports/commit/?id=a20df639517c1ca99c5145d9e00293ec008a8391 commit a20df639517c1ca99c5145d9e00293ec008a8391 Author: Joseph Mingrone AuthorDate: 2026-05-28 22:05:48 +0000 Commit: Joseph Mingrone CommitDate: 2026-06-03 18:21:22 +0000 sysutils/rpi-usbboot: Raspberry Pi USB device provisioning tool Reviewed by: emaste Tested by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57317 --- sysutils/Makefile | 1 + sysutils/rpi-usbboot/Makefile | 22 ++++++++++++++++++++++ sysutils/rpi-usbboot/distinfo | 3 +++ sysutils/rpi-usbboot/files/patch-Makefile | 18 ++++++++++++++++++ sysutils/rpi-usbboot/files/patch-main.c | 11 +++++++++++ sysutils/rpi-usbboot/pkg-descr | 5 +++++ sysutils/rpi-usbboot/pkg-plist | 7 +++++++ 7 files changed, 67 insertions(+) diff --git a/sysutils/Makefile b/sysutils/Makefile index b4bc8334a6df..b6113c665988 100644 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -1187,6 +1187,7 @@ SUBDIR += root-tail SUBDIR += rovclock SUBDIR += rpi-firmware + SUBDIR += rpi-usbboot SUBDIR += rset SUBDIR += rshim-user-space SUBDIR += rsnapshot diff --git a/sysutils/rpi-usbboot/Makefile b/sysutils/rpi-usbboot/Makefile new file mode 100644 index 000000000000..bea00832c647 --- /dev/null +++ b/sysutils/rpi-usbboot/Makefile @@ -0,0 +1,22 @@ +PORTNAME= rpi-usbboot +DISTVERSION= 20260603 +CATEGORIES= sysutils + +MAINTAINER= jrm@FreeBSD.org +COMMENT= Raspberry Pi USB device provisioning tool +WWW= https://github.com/raspberrypi/usbboot + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= gmake pkgconfig + +USE_GITHUB= yes +GH_ACCOUNT= raspberrypi +GH_PROJECT= usbboot +GH_TAGNAME= 58c1051777998637083b9d7d8b8700dabf97d468 + +ALL_TARGET= rpiboot +MAKE_ARGS= INSTALL_PREFIX=${PREFIX} PKG_VER=${DISTVERSION} + +.include diff --git a/sysutils/rpi-usbboot/distinfo b/sysutils/rpi-usbboot/distinfo new file mode 100644 index 000000000000..4693fe32ab13 --- /dev/null +++ b/sysutils/rpi-usbboot/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1780510799 +SHA256 (raspberrypi-usbboot-20260603-58c1051777998637083b9d7d8b8700dabf97d468_GH0.tar.gz) = 0826b38b1e07069edf73df0027a75e2dbe49ca09d8f9be86b10a6767c03aa9c7 +SIZE (raspberrypi-usbboot-20260603-58c1051777998637083b9d7d8b8700dabf97d468_GH0.tar.gz) = 126865434 diff --git a/sysutils/rpi-usbboot/files/patch-Makefile b/sysutils/rpi-usbboot/files/patch-Makefile new file mode 100644 index 000000000000..e642d987385f --- /dev/null +++ b/sysutils/rpi-usbboot/files/patch-Makefile @@ -0,0 +1,18 @@ +--- Makefile.orig 2026-05-27 13:41:12 UTC ++++ Makefile +@@ -1,6 +1,3 @@ +-BUILD_DATE ?= $(shell date "+%Y/%m/%d") +-PKG_VER=$(shell if [ -f debian/changelog ]; then grep rpiboot debian/changelog | head -n1 | sed 's/.*(\(.*\)).*/\1/g'; else echo local; fi) +-GIT_VER=$(shell git rev-parse HEAD 2>/dev/null | cut -c1-8 || echo "") + HAVE_XXD=$(shell xxd -v >/dev/null 2>/dev/null && echo y) + INSTALL_PREFIX?=/usr + ifeq ($(OS),Windows_NT) +@@ -10,7 +7,7 @@ rpiboot: main.c bootfiles.c decode_duid.c fmemopen.c m + endif + + rpiboot: main.c bootfiles.c decode_duid.c fmemopen.c msd/bootcode.h msd/start.h msd/bootcode4.h +- $(CC) -Wall -Wextra -g $(CPPFLAGS) $(CFLAGS) -o $@ main.c bootfiles.c decode_duid.c `pkg-config --cflags --libs libusb-1.0` -DGIT_VER="\"$(GIT_VER)\"" -DPKG_VER="\"$(PKG_VER)\"" -DBUILD_DATE="\"$(BUILD_DATE)\"" -DDEFAULT_MSG_DIR=\"$(DEFAULT_MSG_DIR)\" $(LDFLAGS) ++ $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ main.c bootfiles.c decode_duid.c `pkg-config --cflags --libs libusb-1.0` -DPKG_VER="\"$(PKG_VER)\"" -DDEFAULT_MSG_DIR=\"$(DEFAULT_MSG_DIR)\" $(LDFLAGS) + + ifeq ($(HAVE_XXD),y) + %.h: %.bin diff --git a/sysutils/rpi-usbboot/files/patch-main.c b/sysutils/rpi-usbboot/files/patch-main.c new file mode 100644 index 000000000000..9a8ec3d9e11c --- /dev/null +++ b/sysutils/rpi-usbboot/files/patch-main.c @@ -0,0 +1,11 @@ +--- main.c.orig 2026-06-03 17:54:41 UTC ++++ main.c +@@ -480,7 +480,7 @@ void print_version(void) + + void print_version(void) + { +- printf("RPIBOOT: build-date %s pkg-version %s %s\n", BUILD_DATE, PKG_VER, GIT_VER); ++ printf("RPIBOOT: FreeBSD package version %s\n", PKG_VER); + } + + void get_options(int argc, char *argv[]) diff --git a/sysutils/rpi-usbboot/pkg-descr b/sysutils/rpi-usbboot/pkg-descr new file mode 100644 index 000000000000..e3cf303a7a9c --- /dev/null +++ b/sysutils/rpi-usbboot/pkg-descr @@ -0,0 +1,5 @@ +The rpiboot tool provides a file server for loading software into memory +on a Raspberry Pi for provisioning. By default, it boots the device +with firmware that makes it appear to the host as a USB mass-storage +device. The host operating system then treats it as a standard USB +drive, allowing the filesystem to be accessed. diff --git a/sysutils/rpi-usbboot/pkg-plist b/sysutils/rpi-usbboot/pkg-plist new file mode 100644 index 000000000000..3472f330909a --- /dev/null +++ b/sysutils/rpi-usbboot/pkg-plist @@ -0,0 +1,7 @@ +bin/rpiboot +share/rpiboot/mass-storage-gadget64/boot.img +share/rpiboot/mass-storage-gadget64/bootfiles.bin +share/rpiboot/mass-storage-gadget64/config.txt +share/rpiboot/msd/bootcode.bin +share/rpiboot/msd/bootcode4.bin +share/rpiboot/msd/start.elf