1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Copyright (c) 2023, Linaro Ltd. 4 */ 5 6 #ifndef __LINUX_INTERCONNECT_CLK_H 7 #define __LINUX_INTERCONNECT_CLK_H 8 9 struct device; 10 11 struct icc_clk_data { 12 struct clk *clk; 13 const char *name; 14 unsigned int master_id; 15 unsigned int slave_id; 16 }; 17 18 struct icc_provider *icc_clk_register(struct device *dev, 19 unsigned int first_id, 20 unsigned int num_clocks, 21 const struct icc_clk_data *data); 22 int devm_icc_clk_register(struct device *dev, unsigned int first_id, 23 unsigned int num_clocks, const struct icc_clk_data *data); 24 void icc_clk_unregister(struct icc_provider *provider); 25 26 #endif 27