summaryrefslogtreecommitdiff
path: root/include/reset-uclass.h
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-06-08 08:36:57 -0600
committerTom Rini <[email protected]>2026-06-08 08:36:57 -0600
commit5d4d6e331d3f056ecc7ab11b72098a3cf4fdb099 (patch)
treebd545cc373e2646007a97ab90bdb5be52f481982 /include/reset-uclass.h
parent9e87893c24d1f21350e69bc222e6a3214c933b3b (diff)
parent8efa173b389e5cef6eece991351442baea0264fd (diff)
Merge tag 'xilinx-for-v2026.10-rc1-v2' of https://source.denx.de/u-boot/custodians/u-boot-microblaze into next
AMD/Xilinx/FPGA changes for v2026.10-rc1 v2 zynqmp: - Clean up USB gadget configuration mbv: - Reduce SPL size versal: - Add support for A/B capsule update versal2: - Add support for A/B capsule update reset: - Introduce reset_reset_bulk() generic interface - zynqmp: Implement reset_reset_bulk() interface spi: - cadence: Switch to reset_reset_bulk() interface
Diffstat (limited to 'include/reset-uclass.h')
-rw-r--r--include/reset-uclass.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/reset-uclass.h b/include/reset-uclass.h
index 9a0696dd1e3..7af090b60b5 100644
--- a/include/reset-uclass.h
+++ b/include/reset-uclass.h
@@ -77,6 +77,25 @@ struct reset_ops {
*/
int (*rst_deassert)(struct reset_ctl *reset_ctl);
/**
+ * rst_reset - Reset a HW module.
+ *
+ * This optional function triggers a reset pulse on the reset line.
+ * If not implemented, reset_reset() falls back to rst_assert(),
+ * udelay(@delay_us), then rst_deassert(); that delay is therefore
+ * observed only on the fallback path.
+ *
+ * When rst_reset is provided, @delay_us is controller-specific: the
+ * implementation should honour it if the hardware needs a minimum
+ * assertion time before release. It may ignore @delay_us when the
+ * pulse shape is fixed elsewhere (for example a firmware pulse).
+ *
+ * @reset_ctl: The reset signal to pulse.
+ * @delay_us: Minimum delay in microseconds between assert and
+ * deassert where applicable; see above.
+ * @return 0 if OK, or a negative error code.
+ */
+ int (*rst_reset)(struct reset_ctl *reset_ctl, ulong delay_us);
+ /**
* rst_status - Check reset signal status.
*
* @reset_ctl: The reset signal to check.