]> git.ipfire.org Git - thirdparty/linux.git/commit
dpll: zl3073x: Add low-level flash functions
authorIvan Vecera <ivecera@redhat.com>
Tue, 9 Sep 2025 09:15:29 +0000 (11:15 +0200)
committerJakub Kicinski <kuba@kernel.org>
Mon, 15 Sep 2025 15:08:39 +0000 (08:08 -0700)
commit3639bd087679f77c3fdedc6922f2cb01bb6ecbaf
treea3844049e348aa447635ac5b5573e005c2bfd276
parent259ede9da4ec8159c312aa60015a3aecbb67f348
dpll: zl3073x: Add low-level flash functions

To implement the devlink device flash functionality, the driver needs
to access both the device memory and the internal flash memory. The flash
memory is accessed using a device-specific program (called the flash
utility). This flash utility must be downloaded by the driver into
the device memory and then executed by the device CPU. Once running,
the flash utility provides a flash API to access the flash memory itself.

During this operation, the normal functionality provided by the standard
firmware is not available. Therefore, the driver must ensure that DPLL
callbacks and monitoring functions are not executed during the flash
operation.

Add all necessary functions for downloading the utility to device memory,
entering and exiting flash mode, and performing flash operations.

Reviewed-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Signed-off-by: Ivan Vecera <ivecera@redhat.com>
Link: https://patch.msgid.link/20250909091532.11790-3-ivecera@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/dpll/zl3073x/Makefile
drivers/dpll/zl3073x/devlink.c
drivers/dpll/zl3073x/devlink.h
drivers/dpll/zl3073x/flash.c [new file with mode: 0644]
drivers/dpll/zl3073x/flash.h [new file with mode: 0644]
drivers/dpll/zl3073x/regs.h