clk-scu.h 879 B

1234567891011121314151617181920212223242526272829303132
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright 2018 NXP
  4. * Dong Aisheng <aisheng.dong@nxp.com>
  5. */
  6. #ifndef __IMX_CLK_SCU_H
  7. #define __IMX_CLK_SCU_H
  8. #include <linux/firmware/imx/sci.h>
  9. int imx_clk_scu_init(void);
  10. struct clk_hw *__imx_clk_scu(const char *name, const char * const *parents,
  11. int num_parents, u32 rsrc_id, u8 clk_type);
  12. static inline struct clk_hw *imx_clk_scu(const char *name, u32 rsrc_id,
  13. u8 clk_type)
  14. {
  15. return __imx_clk_scu(name, NULL, 0, rsrc_id, clk_type);
  16. }
  17. static inline struct clk_hw *imx_clk_scu2(const char *name, const char * const *parents,
  18. int num_parents, u32 rsrc_id, u8 clk_type)
  19. {
  20. return __imx_clk_scu(name, parents, num_parents, rsrc_id, clk_type);
  21. }
  22. struct clk_hw *imx_clk_lpcg_scu(const char *name, const char *parent_name,
  23. unsigned long flags, void __iomem *reg,
  24. u8 bit_idx, bool hw_gate);
  25. #endif