blob: 0ebbe2f0b45e785440dcc0f5962d86faf331f1fd [file] [log] [blame]
Kuninori Morimoto9e288ce2018-09-25 09:34:05 +02001/* SPDX-License-Identifier: GPL-2.0+
2 *
Laurent Pinchart10cdfe92013-11-06 13:14:19 +01003 * Copyright 2013 Ideas On Board SPRL
Simon Horman7b42a992014-04-18 08:05:50 +09004 * Copyright 2013, 2014 Horms Solutions Ltd.
Laurent Pinchart10cdfe92013-11-06 13:14:19 +01005 *
6 * Contact: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Simon Horman7b42a992014-04-18 08:05:50 +09007 * Contact: Simon Horman <horms@verge.net.au>
Laurent Pinchart10cdfe92013-11-06 13:14:19 +01008 */
9
Simon Horman09c32422016-03-08 09:42:07 +090010#ifndef __LINUX_CLK_RENESAS_H_
11#define __LINUX_CLK_RENESAS_H_
Laurent Pinchart10cdfe92013-11-06 13:14:19 +010012
13#include <linux/types.h>
14
Geert Uytterhoeven752b5ed2015-08-04 14:28:02 +020015struct device;
16struct device_node;
17struct generic_pm_domain;
18
Geert Uytterhoeven752b5ed2015-08-04 14:28:02 +020019void cpg_mstp_add_clk_domain(struct device_node *np);
Geert Uytterhoeven12524e32016-04-13 11:18:06 +020020#ifdef CONFIG_CLK_RENESAS_CPG_MSTP
Geert Uytterhoeven12a56812016-03-04 16:59:26 +010021int cpg_mstp_attach_dev(struct generic_pm_domain *unused, struct device *dev);
22void cpg_mstp_detach_dev(struct generic_pm_domain *unused, struct device *dev);
Geert Uytterhoeven12524e32016-04-13 11:18:06 +020023#else
24#define cpg_mstp_attach_dev NULL
25#define cpg_mstp_detach_dev NULL
26#endif
Geert Uytterhoeven752b5ed2015-08-04 14:28:02 +020027
Geert Uytterhoeven20663902016-03-04 17:03:46 +010028#ifdef CONFIG_CLK_RENESAS_CPG_MSSR
29int cpg_mssr_attach_dev(struct generic_pm_domain *unused, struct device *dev);
30void cpg_mssr_detach_dev(struct generic_pm_domain *unused, struct device *dev);
31#else
32#define cpg_mssr_attach_dev NULL
33#define cpg_mssr_detach_dev NULL
34#endif
Laurent Pinchart10cdfe92013-11-06 13:14:19 +010035#endif