[PATCH 0/2] Add devm_clk_bulk_get_optional_enable() helper and use in AXI Ethernet driver

From: Suraj Gupta
Date: Fri Jan 09 2026 - 02:11:17 EST


This patch series introduces a new managed clock framework helper function
and demonstrates its usage in AXI ethernet driver.

Device drivers frequently need to get optional bulk clocks, prepare them,
and enable them during probe, while ensuring automatic cleanup on device
unbind. Currently, this requires three separate operations with manual
cleanup handling.

The new devm_clk_bulk_get_optional_enable() helper combines these
operations into a single managed call, eliminating boilerplate code and
following the established pattern of devm_clk_bulk_get_all_enabled().

Note:
Prepared this series as per mainline discussion here:
https://lore.kernel.org/all/540737b2-f155-4c55-ab95-b18f113e0031@xxxxxxxxx

RFC patch link:
https://lore.kernel.org/all/20260102085454.3439195-1-suraj.gupta2@xxxxxxx/


Sean Anderson (1):
net: axienet: Fix resource release ordering

Suraj Gupta (1):
clk: Add devm_clk_bulk_get_optional_enable() helper

drivers/clk/clk-devres.c | 50 +++++++++++
.../net/ethernet/xilinx/xilinx_axienet_main.c | 83 ++++++-------------
include/linux/clk.h | 23 +++++
3 files changed, 100 insertions(+), 56 deletions(-)

--
2.25.1