blob: 9ebf1f8243bb57af54b0d5adc3b22408c858d103 [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001/*
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
19struct device;
20struct device_node;
21struct generic_pm_domain;
22
23void cpg_mstp_add_clk_domain(struct device_node *np);
24#ifdef CONFIG_CLK_RENESAS_CPG_MSTP
25int cpg_mstp_attach_dev(struct generic_pm_domain *unused, struct device *dev);
26void cpg_mstp_detach_dev(struct generic_pm_domain *unused, struct device *dev);
27#else
28#define cpg_mstp_attach_dev NULL
29#define cpg_mstp_detach_dev NULL
30#endif
31
32#ifdef CONFIG_CLK_RENESAS_CPG_MSSR
33int cpg_mssr_attach_dev(struct generic_pm_domain *unused, struct device *dev);
34void cpg_mssr_detach_dev(struct generic_pm_domain *unused, struct device *dev);
35#else
36#define cpg_mssr_attach_dev NULL
37#define cpg_mssr_detach_dev NULL
38#endif
39#endif