meson-aoclk.h 907 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
  2. /*
  3. * Copyright (c) 2017 BayLibre, SAS
  4. * Author: Neil Armstrong <[email protected]>
  5. *
  6. * Copyright (c) 2018 Amlogic, inc.
  7. * Author: Qiufang Dai <[email protected]>
  8. * Author: Yixun Lan <[email protected]>
  9. */
  10. #ifndef __MESON_AOCLK_H__
  11. #define __MESON_AOCLK_H__
  12. #include <linux/clk-provider.h>
  13. #include <linux/platform_device.h>
  14. #include <linux/regmap.h>
  15. #include <linux/reset-controller.h>
  16. #include "clk-regmap.h"
  17. struct meson_aoclk_data {
  18. const unsigned int reset_reg;
  19. const int num_reset;
  20. const unsigned int *reset;
  21. const int num_clks;
  22. struct clk_regmap **clks;
  23. const struct clk_hw_onecell_data *hw_data;
  24. };
  25. struct meson_aoclk_reset_controller {
  26. struct reset_controller_dev reset;
  27. const struct meson_aoclk_data *data;
  28. struct regmap *regmap;
  29. };
  30. int meson_aoclkc_probe(struct platform_device *pdev);
  31. #endif