162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0+ 262306a36Sopenharmony_ci * 362306a36Sopenharmony_ci * Copyright 2013 Ideas On Board SPRL 462306a36Sopenharmony_ci * Copyright 2013, 2014 Horms Solutions Ltd. 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Contact: Laurent Pinchart <laurent.pinchart@ideasonboard.com> 762306a36Sopenharmony_ci * Contact: Simon Horman <horms@verge.net.au> 862306a36Sopenharmony_ci */ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#ifndef __LINUX_CLK_RENESAS_H_ 1162306a36Sopenharmony_ci#define __LINUX_CLK_RENESAS_H_ 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ci#include <linux/types.h> 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_cistruct device; 1662306a36Sopenharmony_cistruct device_node; 1762306a36Sopenharmony_cistruct generic_pm_domain; 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_civoid cpg_mstp_add_clk_domain(struct device_node *np); 2062306a36Sopenharmony_ci#ifdef CONFIG_CLK_RENESAS_CPG_MSTP 2162306a36Sopenharmony_ciint cpg_mstp_attach_dev(struct generic_pm_domain *unused, struct device *dev); 2262306a36Sopenharmony_civoid cpg_mstp_detach_dev(struct generic_pm_domain *unused, struct device *dev); 2362306a36Sopenharmony_ci#else 2462306a36Sopenharmony_ci#define cpg_mstp_attach_dev NULL 2562306a36Sopenharmony_ci#define cpg_mstp_detach_dev NULL 2662306a36Sopenharmony_ci#endif 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci#ifdef CONFIG_CLK_RENESAS_CPG_MSSR 2962306a36Sopenharmony_ciint cpg_mssr_attach_dev(struct generic_pm_domain *unused, struct device *dev); 3062306a36Sopenharmony_civoid cpg_mssr_detach_dev(struct generic_pm_domain *unused, struct device *dev); 3162306a36Sopenharmony_ci#else 3262306a36Sopenharmony_ci#define cpg_mssr_attach_dev NULL 3362306a36Sopenharmony_ci#define cpg_mssr_detach_dev NULL 3462306a36Sopenharmony_ci#endif 3562306a36Sopenharmony_ci#endif 36