1 /* 2 * Copyright 2013 Ideas On Board SPRL 3 * Copyright 2013, 2014 Horms Solutions Ltd. 4 * 5 * Contact: Laurent Pinchart <laurent.pinchart@ideasonboard.com> 6 * Contact: Simon Horman <horms@verge.net.au> 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 2 of the License, or 11 * (at your option) any later version. 12 */ 13 14 #ifndef __LINUX_CLK_RENESAS_H_ 15 #define __LINUX_CLK_RENESAS_H_ 16 17 #include <linux/types.h> 18 19 struct device; 20 struct device_node; 21 struct generic_pm_domain; 22 23 void r8a7778_clocks_init(u32 mode); 24 void r8a7779_clocks_init(u32 mode); 25 void rcar_gen2_clocks_init(u32 mode); 26 27 void cpg_mstp_add_clk_domain(struct device_node *np); 28 #ifdef CONFIG_CLK_RENESAS_CPG_MSTP 29 int cpg_mstp_attach_dev(struct generic_pm_domain *unused, struct device *dev); 30 void cpg_mstp_detach_dev(struct generic_pm_domain *unused, struct device *dev); 31 #else 32 #define cpg_mstp_attach_dev NULL 33 #define cpg_mstp_detach_dev NULL 34 #endif 35 36 #ifdef CONFIG_CLK_RENESAS_CPG_MSSR 37 int cpg_mssr_attach_dev(struct generic_pm_domain *unused, struct device *dev); 38 void cpg_mssr_detach_dev(struct generic_pm_domain *unused, struct device *dev); 39 #else 40 #define cpg_mssr_attach_dev NULL 41 #define cpg_mssr_detach_dev NULL 42 #endif 43 #endif 44