arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / sound / soc / qcom / qdsp6 / q6dsp-lpass-clocks.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #ifndef __Q6DSP_AUDIO_CLOCKS_H__
4 #define __Q6DSP_AUDIO_CLOCKS_H__
5
6 struct q6dsp_clk_init {
7         int clk_id;
8         int q6dsp_clk_id;
9         char *name;
10         int rate;
11 };
12
13 #define Q6DSP_VOTE_CLK(id, blkid, n) {                  \
14                 .clk_id = id,                           \
15                 .q6dsp_clk_id = blkid,                  \
16                 .name = n,                              \
17         }
18
19 struct q6dsp_clk_desc {
20         const struct q6dsp_clk_init *clks;
21         size_t num_clks;
22         int (*lpass_set_clk)(struct device *dev, int clk_id, int attr,
23                               int root_clk, unsigned int freq);
24         int (*lpass_vote_clk)(struct device *dev, uint32_t hid, const char *n, uint32_t *h);
25         int (*lpass_unvote_clk)(struct device *dev, uint32_t hid, uint32_t h);
26 };
27
28 int q6dsp_clock_dev_probe(struct platform_device *pdev);
29
30 #endif  /* __Q6DSP_AUDIO_CLOCKS_H__ */