1 /* 2 * Copyright 2013 Broadcom Corporation. 3 * 4 * SPDX-License-Identifier: GPL-2.0+ 5 */ 6 7 /* This API file is loosely based on u-boot/drivers/video/ipu.h and linux */ 8 9 #ifndef __KONA_COMMON_CLK_H 10 #define __KONA_COMMON_CLK_H 11 12 #include <linux/types.h> 13 14 struct clk; 15 16 /* Only implement required functions for your specific architecture */ 17 int clk_init(void); 18 struct clk *clk_get(const char *id); 19 int clk_enable(struct clk *clk); 20 void clk_disable(struct clk *clk); 21 unsigned long clk_get_rate(struct clk *clk); 22 long clk_round_rate(struct clk *clk, unsigned long rate); 23 int clk_set_rate(struct clk *clk, unsigned long rate); 24 int clk_set_parent(struct clk *clk, struct clk *parent); 25 struct clk *clk_get_parent(struct clk *clk); 26 int clk_sdio_enable(void *base, u32 rate, u32 *actual_ratep); 27 int clk_bsc_enable(void *base); 28 int clk_usb_otg_enable(void *base); 29 30 #endif 31