cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

owl-common.h (1047B)


      1/* SPDX-License-Identifier: GPL-2.0+ */
      2//
      3// OWL common clock driver
      4//
      5// Copyright (c) 2014 Actions Semi Inc.
      6// Author: David Liu <liuwei@actions-semi.com>
      7//
      8// Copyright (c) 2018 Linaro Ltd.
      9// Author: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
     10
     11#ifndef _OWL_COMMON_H_
     12#define _OWL_COMMON_H_
     13
     14#include <linux/clk-provider.h>
     15#include <linux/of_platform.h>
     16#include <linux/regmap.h>
     17
     18struct device_node;
     19
     20struct owl_clk_common {
     21	struct regmap			*regmap;
     22	struct clk_hw			hw;
     23};
     24
     25struct owl_clk_desc {
     26	struct owl_clk_common		**clks;
     27	unsigned long			num_clks;
     28	struct clk_hw_onecell_data	*hw_clks;
     29	const struct owl_reset_map	*resets;
     30	unsigned long			num_resets;
     31	struct regmap			*regmap;
     32};
     33
     34static inline struct owl_clk_common *
     35	hw_to_owl_clk_common(const struct clk_hw *hw)
     36{
     37	return container_of(hw, struct owl_clk_common, hw);
     38}
     39
     40int owl_clk_regmap_init(struct platform_device *pdev,
     41			struct owl_clk_desc *desc);
     42int owl_clk_probe(struct device *dev, struct clk_hw_onecell_data *hw_clks);
     43
     44#endif /* _OWL_COMMON_H_ */