forked from mirrors/linux
		
	For some devices it is useful to export clocks as interconnect providers, if the clock corresponds to bus bandwidth. For example, on MSM8996 the cluster interconnect clock should be scaled according to the cluster frequencies. Exporting it as an interconnect allows one to properly describe this as the cluster bandwidth requirements. Tested-by: Yassine Oudjana <y.oudjana@protonmail.com> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Link: https://lore.kernel.org/r/20230512001334.2983048-3-dmitry.baryshkov@linaro.org Signed-off-by: Georgi Djakov <djakov@kernel.org>
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			466 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			466 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* SPDX-License-Identifier: GPL-2.0 */
 | 
						|
/*
 | 
						|
 * Copyright (c) 2023, Linaro Ltd.
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef __LINUX_INTERCONNECT_CLK_H
 | 
						|
#define __LINUX_INTERCONNECT_CLK_H
 | 
						|
 | 
						|
struct device;
 | 
						|
 | 
						|
struct icc_clk_data {
 | 
						|
	struct clk *clk;
 | 
						|
	const char *name;
 | 
						|
};
 | 
						|
 | 
						|
struct icc_provider *icc_clk_register(struct device *dev,
 | 
						|
				      unsigned int first_id,
 | 
						|
				      unsigned int num_clocks,
 | 
						|
				      const struct icc_clk_data *data);
 | 
						|
void icc_clk_unregister(struct icc_provider *provider);
 | 
						|
 | 
						|
#endif
 |