xref: /openbmc/linux/include/linux/clk/renesas.h (revision 3eb66e91a25497065c5322b1268cbc3953642227)
1*9e288cefSKuninori Morimoto /* SPDX-License-Identifier: GPL-2.0+
2*9e288cefSKuninori Morimoto  *
309c32427SSimon Horman  * Copyright 2013 Ideas On Board SPRL
409c32427SSimon Horman  * Copyright 2013, 2014 Horms Solutions Ltd.
509c32427SSimon Horman  *
609c32427SSimon Horman  * Contact: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
709c32427SSimon Horman  * Contact: Simon Horman <horms@verge.net.au>
809c32427SSimon Horman  */
909c32427SSimon Horman 
1009c32427SSimon Horman #ifndef __LINUX_CLK_RENESAS_H_
1109c32427SSimon Horman #define __LINUX_CLK_RENESAS_H_
1209c32427SSimon Horman 
1309c32427SSimon Horman #include <linux/types.h>
1409c32427SSimon Horman 
1509c32427SSimon Horman struct device;
1609c32427SSimon Horman struct device_node;
1709c32427SSimon Horman struct generic_pm_domain;
1809c32427SSimon Horman 
1909c32427SSimon Horman void cpg_mstp_add_clk_domain(struct device_node *np);
2012524e34SGeert Uytterhoeven #ifdef CONFIG_CLK_RENESAS_CPG_MSTP
2112a56817SGeert Uytterhoeven int cpg_mstp_attach_dev(struct generic_pm_domain *unused, struct device *dev);
2212a56817SGeert Uytterhoeven void cpg_mstp_detach_dev(struct generic_pm_domain *unused, struct device *dev);
2312524e34SGeert Uytterhoeven #else
2412524e34SGeert Uytterhoeven #define cpg_mstp_attach_dev	NULL
2512524e34SGeert Uytterhoeven #define cpg_mstp_detach_dev	NULL
2612524e34SGeert Uytterhoeven #endif
2709c32427SSimon Horman 
282066390aSGeert Uytterhoeven #ifdef CONFIG_CLK_RENESAS_CPG_MSSR
292066390aSGeert Uytterhoeven int cpg_mssr_attach_dev(struct generic_pm_domain *unused, struct device *dev);
302066390aSGeert Uytterhoeven void cpg_mssr_detach_dev(struct generic_pm_domain *unused, struct device *dev);
312066390aSGeert Uytterhoeven #else
322066390aSGeert Uytterhoeven #define cpg_mssr_attach_dev	NULL
332066390aSGeert Uytterhoeven #define cpg_mssr_detach_dev	NULL
342066390aSGeert Uytterhoeven #endif
3509c32427SSimon Horman #endif
36