raspi-utils (20260601-1) trixie; urgency=medium

  [ Phil Elwell ]
  * Add otamaker
  * Add top-level README entries for the remainder
  * rpi-gpu-usage: Fix build warning
  * ovmerge: Use // for default values
  * otamaker: Update README example
  * ovmerge: String values can en/disable fragments
  * cmake: Add a -Werror build option for the workflow
  * Add the dtapply script and examples
  * dtapply: Continue from errors having reported them

  [ Gordon Hollingworth ]
  * rpi-gpu-usage: Add GPU utilisation monitor
  * Re-order in CMakeLists.txt, add README.md

  [ macmpi ]
  * raspinfo: remove bashisms and use POSIX sh
  * raspinfo: check rpi-eeprom-update availability
  * rpi-gpu-usage: add top README entry
  * raspinfo: do not assume network interfaces names

  [ andrum993 ]
  * Update raspinfo: correct heading text

  [ Chris Burton ]
  * Use awk to check "dd" version number is high enough to support
    "status=progress".

  [ Ayoub Zaki ]
  * rpifwcrypto: README.md fix typo

  [ Tim Gover ]
  * readme: Add libcurses-dev to the dependencies for rpi-gpu-usage
  * rpifwcrypto: Check ioctl return code first and clarify bit31 handling
  * readme: Describe -DCMAKE_INSTALL_PREFIX
  * rpifwcrypto: Set exit status to firmware error code
  * ci: Add GitHub workflow to build for arm64 and armhf

  [ Mathew Blowers ]
  * rpieepromab: Check AB update image is valid
  * rpifwcrypto: Use more restricted vcio_crypto if available
  * rpieepromab: Use more restricted vcio_ab if available
  * rpifwcrypto: Add key usage

  [ Dom Cobley ]
  * vcgencmd: Make use of more restricted vcio_gencmd node if available
  * vcgencmd: Increase size of vcgencmd results buffer

  [ Erich E. Hoover ]
  * dtoverlay: allow fragment enable/disable to work with strings

  [ Nicolai Buchwitz ]
  * raspinfo: Add eee info and network statistics
  * raspinfo: Add wifi information

  [ Serge Schneider ]
  * d/c: Add libncurses-dev to Build-Depends
  * d/not-installed: Add unreleased tools - dtapply, otamaker and rpi-gpu-
    usage
  * d/librpifwcrypto0.symbols: Add new key_usage symbols

 -- Serge Schneider <serge@raspberrypi.com>  Mon, 01 Jun 2026 15:21:21 +0100

raspi-utils (20260304+1-1) trixie; urgency=medium

  [ Mathew Blowers ]
  * rpieepromab: Increase timeout for update
  * rpieepromab: Remove unknown from version

 -- Serge Schneider <serge@raspberrypi.com>  Wed, 04 Mar 2026 21:06:23 +0000

raspi-utils (20260304-1) trixie; urgency=medium

  [ Tim Gover ]
  * rpifwcrypto: Update README for key generation

  [ Mathew Blowers ]
  * rpieepromab: Latest eeprom update procedure
  * rpieepromab: Add version info command

 -- Serge Schneider <serge@raspberrypi.com>  Wed, 04 Mar 2026 02:28:23 +0000

raspi-utils (20260216-1) trixie; urgency=medium

  [ Phil Elwell ]
  * ovmerge: -N also keeps unused labels and fragments
  * overlaycheck: Detect unused pinctrl declarations
  * kdtc: Accept overlay names without -overlay.dts
  * overlaycheck: Detect misused fragment labels
  * pinctrl: Add documentation for gpiolib
  * overlaycheck: Tighten up the dormant checker

  [ Richard Oliver ]
  * rpi-fw-crypto: Remove hex output's trailing newline
  * rpi-fw-crypto: Optimism re. HMAC input file size

  [ Mathew Blowers ]
  * rpieepromab: Add rpieepromab to utils to manage and update the AB
    partitions of firmware
  * rpieepromab: Clearer error messages

  [ Serge Schneider ]
  * d: Add new rpieepromab packages

 -- Serge Schneider <serge@raspberrypi.com>  Mon, 16 Feb 2026 12:11:50 +0000

raspi-utils (20251120-1) trixie; urgency=medium

  [ Phil Elwell ]
  * overlaycheck: Allow long lines without spaces
  * overlaycheck: Accept generic abc123x matches
  * piolib: Fix cut-and-paste error in pio_rp1.c

  [ Dom Cobley ]
  * raspinfo: Improve display info output
  * raspinfo: report libcamera-hello output if installed

  [ David Caldwell ]
  * piolib: Fix cut-and-paste error in pio_rp1.c (in
    rp1_pio_sm_clkdiv_restart())

  [ Tim Gover ]
  * rpifwcrypto: hmac: Fix the size of tag buffer
  * rpifwcrypto: Actually fix the size of the HMAC mbox message

 -- Serge Schneider <serge@raspberrypi.com>  Thu, 20 Nov 2025 12:49:43 +0000

raspi-utils (20251002-1) trixie; urgency=medium

  [ Tim Gover ]
  * rpifwcrypto: armhf printf fixes
  * rpifwcrypto: Add a command to retrieve private keys
  * rpifwcrypto: Add genkey command
  * rpifwcrypto: Fix file handle leak in genkey error handling path

  [ Serge Schneider ]
  * Revert "Add armhf build fix"
  * Update librpifwcrypto0.symbols

 -- Serge Schneider <serge@raspberrypi.com>  Thu, 02 Oct 2025 15:29:56 +0100

raspi-utils (20250826-1) trixie; urgency=medium

  [ Phil Elwell ]
  * ovmerge: Update Copyright details, remove GPL-2.0
  * dtoverlay: Fix node_is_enabled for implicit status
  * dtmerge: Convert TABs to spaces
  * dtoverlay: Make remapping stop at the first rename
  * dtmerge: Support parameters from renames
  * overlaycheck: Don't try applying vl805 to cm4s
  * overlaycheck: Compile all overlays before merging
  * overlaycheck: More trace messages in verbose mode
  * kdtc: Auto-compile non-overlays
  * pinctrl: Add -l (list) mode
  * pinctrl: Also look for GPIO chips without aliases
  * pinctrl: Add support for firmware-controlled GPIOs
  * pinctrl: Mention list (-l) mode in the README
  * pinctrl: Work around MUSL brokenness and obstinacy
  * pinctrl: Clarify the required privilege level
  * ovmerge: Include any local '#defines' in output
  * eeptools: Fix the usage information
  * ovmerge: Add token breakpoint option
  * ovmerge: Support #include after properties
  * pinctrl: Tolerate missing GPIO line names

  [ Torben Woltjen ]
  * Clarify docs: Add example for dtmerge and more precisely describe
    available parameters
  * Add RPi 5 base device tree with MCP2515 device-tree overlay as an
    example

  [ Sonny Piers ]
  * eeptools: Fix flash example

  [ Tim Gover ]
  * rpifwcrypto: Initial revision
  * rpifwcrypto: Only build rpifwcrypto if libgnutls28-dev is available
  * rpifwcrypto: Assorted tidyups
  * rpifwcrypto: Add an API to retrieve public keys

  [ Serge Schneider ]
  * libgpiolib0: Add missing symbols
  * Add rpifwcrypto packages
  * Add armhf build fix

 -- Serge Schneider <serge@raspberrypi.com>  Wed, 27 Aug 2025 09:36:02 +0100

raspi-utils (20250514-1) trixie; urgency=medium

  * Update copyright information
  * d/gbp.conf: update debian branch

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 24 Jun 2025 08:58:38 +0100

raspi-utils (20250514-1~bookworm) bookworm; urgency=medium

  [ Phil Elwell ]
  * kdtc: Expand the README
  * dtoverlay: Adjust fixups if a phandle is deleted
  * ovmerge: Add "no renumber" option
  * overlaycheck: Add a check for unusable fragments
  * pinctrl: Create and use gpiolib library
  * pinctrl: Add install rule for gpiolib.h header
  * overlaycheck: Add CM0 to the extended list of dtbs
  * piolib: Make piolib a first class library
  * piolib: Make piolib a CMake component
  * piolib: Correct licence to be BSD-3-Clause
  * pinctrl: gpiolib: Add the remaining GPIO chips

  [ Serge Schneider ]
  * d/patches: refresh
  * Add new libraries

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 20 Jun 2025 09:33:40 +0100

raspi-utils (20250314-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * Add kdtc - a "kernel" dts compiler
  * ovmerge: Correct format string in trace code
  * pinctrl: Make GPIO_CHIP_Ts const, because we can
  * eepflash: Update sysfs path for newer kernels
  * dtoverlay: Support comma-separated parameters (better)
  * overlaycheck: Add Pi 500 to extra_base_files
  * ovmerge: Disable Perl warnings about portability
  * pinctrl: Extend bcm2711 up to GPIO57
  * Add piolib
  * piolib: Add dpi_interlace
  * piolib: Add FIFO-related methods
  * piolib: Move into examples and include directories
  * piolib: Add support for C++ clients
  * piolib: Minor reformat
  * piolib: Fix copy-paste errors
  * piolib: Add fatal error handling
  * piolib: Add abstractions for PIO hardware sizes
  * piolib: Add apitest
  * dtmerge: Fix error in CMakeLists.txt
  * kdtc: Infer x.dtbo output from x-overlay.dts input
  * ovmerge: Add -f option, document -q option
  * piolib: Increase data_bytes range to 32-bits
  * kdtc: Add "wget" install method to README
  * kdtc: Try a few different cpp commands
  * piolib: README: Fix path to udev rule
  * piolib: Add hardware/timer.h for compatibility
  * piolib: Add quadenc (quadrature encoder) example
  * piolib: README: Add the quadenc example
  * overlaycheck: Adopt the cpp detection from kdtc
  * piolib: Correct transfer return values
  * piolib: Update apitest to check transfers
  * ovmerge: Fix label handling for intra- fragments
  * overlaycheck: Support common documentation
  * ovmerge: Fix label refcounts
  * piolib: Support larger DMA buffers
  * eepmake: Close string blobs earlier to avoid errors
  * pinctrl: Fix the pulls on BCM2712C0
  * pinctrl: gpiochips section is only for pointers
  * eeptools: Add the POWER_SUPPLY atom

  [ Gemba ]
  * Aligns the numbering of overlay param values to renumbered fragments

  [ Serge Schneider ]
  * Fix typo
  * debian/: refresh patches
  * Bump compat level to 13
  * Install overlaycheck_exclusions.txt and move from .manpages to
    .install files
  * Install kdtc and add debian/not-installed

  [ Nick Hollinghurst ]
  * piolib: examples: Overhaul dpi_interlace, now named dpi_csync
  * piolib: examples: dpi_csync: Bug fix
  * piolib/examples: dpi_csync: Restore support for Equalizing Pulses.

  [ Nicolai Buchwitz ]
  * piolib: README fixes

  [ Rudi Heitbaum ]
  * piolib: fixes may be used uninitialized

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 14 Mar 2025 15:35:40 +0000

raspi-utils (20240903-1) bookworm; urgency=medium

  [ Andrew Scheller ]
  * Correct help-text for pinctrl poll
  * raspinfo: Display EEPROM info for Pi 400, CM4, CM4S and Pi 5
  * Update documentation URLs

  [ Phil Elwell ]
  * pinctrl: Correct alt function range in help
  * dtoverlay: Convert u32s to unsigned strings
  * dtmerge: Increase the maximum DTB size
  * ovmerge: Various byte string fixes
  * pinctrl: Add underscores to the RP1 SD CLK signals
  * pinctrl: Add "level" mode
  * overlaycheck: Check all the base files
  * overlaycheck: Re-indent with spaces
  * overlaycheck: Support reading arm64 dts files

  [ Thorsten Ludewig ]
  * flush stdout on every level change

  [ Rudi Heitbaum ]
  * vclog: fix compiler error with gcc-14.1

  [ Giampiero Baggiani ]
  * pinctrl.c help typo fix

  [ Dave Jones ]
  * Fix lintian warning about bash-completion shebangs
  * Fix modern groff warnings in manpages

  [ Serge Schneider ]
  * d/raspi-utils-core: install bash completions for pinctrl and vcgencmd
  * d/c: Fix Breaks/Depends fields
  * d/p: Refresh overlaycheck.diff

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 06 Sep 2024 13:16:12 +0100

raspi-utils (20240402-4) bookworm; urgency=medium

  * Split raspi-info into multiple binary package
  * Install manpages

 -- Serge Schneider <serge@raspberrypi.com>  Wed, 14 Aug 2024 18:10:52 +0100

raspi-utils (20240402-3) bookworm; urgency=medium

  * d/c: Add pastebinit to recommends

 -- Serge Schneider <serge@raspberrypi.com>  Mon, 29 Apr 2024 16:11:18 +0100

raspi-utils (20240402-2) bookworm; urgency=medium

  * d/control: limit raspi-gpio dependency to ARM architectures
  * d/: add gbp.conf

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 23 Apr 2024 14:00:00 +0100

raspi-utils (20240402-1) bookworm; urgency=medium

  [ Álvaro Fernández Rojas ]
  * eeptools: eepdump: init type before calling eepio_atom_start

  [ Phil Elwell ]
  * pinctrl: Support older versions of glibc
  * overlaycheck: Apply all overlays to one platform
  * dtmerge: Make i2c_arm/vc creation conditional
  * eeplib: Don't use arithmetic on void pointers
  * ovmerge: Don't create 'i2c' as a label
  * dtmerge: Fix uninitialised variable
  * pinctrl: Add the echo (-e) option

  [ Dom Cobley ]
  * raspinfo: Add sudo to dmesg

  [ Phil Elwell ]
  * pinctrl: Speed up RP1 GPIO drive set
  * pinctrl/gpiolib: Mark gpiochips as "used" for LTO
  * dtoverlay/dtparam: Correctly detect last parameter
  * dtoverlay_main: Restore copyright indentation
  * dtoverlay: Expose dtoverlay_merge_fragment
  * dtoverlay: Copy local fixups when necessary

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 02 Apr 2024 17:52:05 +0100

raspi-utils (20240115-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * vcgencmd: Clarify man page
  * ovmerge: Improve fragment order checking
  * ovmerge: Avoid warning about ininitialised value
  * Add eeptools (the HAT+ EEPROM tools)
  * eeptools: Add to top-level CMakeLists.txt
  * eeptools: Fix compiler warnings

  [ Stephan Ruloff ]
  * Removes old -t and -h description.

  [ Dom Cobley ]
  * raspinfo: Add some audio info to debug log

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 16 Jan 2024 13:51:21 +0000

raspi-utils (20231105-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * ovmerge: Add literal path assignment example
  * ovmerge: Enable warnings
  * ovmerge: Check intra fragment merge order
  * dtmerge: Reindent to 4-characters, no TABs
  * dtoverlay: intra fragments, phandles in overrides
  * dtmerge/dtoverlay: Pass all regression tests

 -- Serge Schneider <serge@raspberrypi.com>  Mon, 06 Nov 2023 10:47:01 +0000

raspi-utils (20231024-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * pinctrl: Show -- for unknown pin levels
  * dtoverlay: Remove dtoverlay-pre and dtoverlay-post
  * dtoverlay: Add dtoverlay_first/next_subnode
  * dtmerge: Add dtoverlay and dtparam tools

  [ Andrew Scheller ]
  * Minor pinctrl optimisation: don't call gpio_get_level twice

  [ Chris Laplante ]
  * ovmerge: add -S option to use spaces for indentation

  [ Dom Cobley ]
  * vcmailbox: Add utility from userland repo
  * vcgencmd: Add utility from userland repo

  [ macmpi ]
  * dtoverlay, vcgencmd, vcmailbox: fix build locations

  [ Serge Schneider ]
  * vcgencmd: Add bash completion script
  * Replace libraspberrypi-bin

  [ graysky ]
  * CMakeLists.txt: use min...max notation

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 24 Oct 2023 09:18:46 +0100

raspi-utils (20231017-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * vclog: Also try /dev/vc-mem for DMA copy

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 17 Oct 2023 15:19:57 +0100

raspi-utils (20231013-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * pinctrl: Add Pi 5 support
  * dtmerge: Support bcm2712 as a platform
  * overlaycheck: Follow "See: <overlay>" redirections
  * overlaycheck: Add bcm2712 support

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 13 Oct 2023 11:27:33 +0100

raspi-utils (20230922+1-1~rc1) bookworm; urgency=medium

  [ Phil Elwell ]
  * pinctrl: completion: Careful with the current word

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 22 Sep 2023 20:59:35 +0100

raspi-utils (20230922-1~rc1) bookworm; urgency=medium

  [ Phil Elwell ]
  * pinctrl: Use /dev/gpiomem* if available

  [ macmpi ]
  * raspinfo: use pinctrl as raspi-gpio alternative

  [ Phil Elwell ]
  * gpiolib: Range-check gpio numbers
  * pinctrl: Support split pin lists and ranges
  * pinctrl: Add bash completion script
  * pinctrl: Use GNUInstallDirs for cmake
  * pinctrl: Handle pin names starting with digits

 -- Serge Schneider <serge@raspberrypi.com>  Fri, 22 Sep 2023 12:00:10 +0100

raspi-utils (20230912-1) bookworm; urgency=medium

  [ Phil Elwell ]
  * pinctrl: Add initial revision

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 12 Sep 2023 16:11:31 +0100

raspi-utils (20230906-1) bookworm; urgency=medium

  * Update to 79ff2c4

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 05 Sep 2023 08:34:30 +0100

raspi-utils (20230123-1) bullseye; urgency=medium

  * Update to f055768

 -- Serge Schneider <serge@raspberrypi.com>  Tue, 24 Jan 2023 13:38:37 +0000

raspi-utils (20221220-1) bullseye; urgency=medium

  * Update to 409a8d1

 -- Serge Schneider <serge@raspberrypi.com>  Wed, 21 Dec 2022 10:42:43 +0000

raspi-utils (20190624-1) buster; urgency=medium

  * Initial release

 -- Serge Schneider <serge@raspberrypi.org>  Fri, 19 Jul 2019 13:08:42 +0100
