.. | .. |
---|
1 | | -// SPDX-License-Identifier: GPL-2.0 |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
---|
2 | 2 | // Copyright(c) 2015-17 Intel Corporation |
---|
3 | 3 | |
---|
4 | 4 | /* |
---|
.. | .. |
---|
11 | 11 | #include <linux/platform_device.h> |
---|
12 | 12 | #include <linux/clk-provider.h> |
---|
13 | 13 | #include <linux/clkdev.h> |
---|
| 14 | +#include <sound/intel-nhlt.h> |
---|
14 | 15 | #include "skl.h" |
---|
15 | 16 | #include "skl-ssp-clk.h" |
---|
16 | 17 | #include "skl-topology.h" |
---|
.. | .. |
---|
101 | 102 | } |
---|
102 | 103 | |
---|
103 | 104 | /* Sends dma control IPC to turn the clock ON/OFF */ |
---|
104 | | -static int skl_send_clk_dma_control(struct skl *skl, |
---|
| 105 | +static int skl_send_clk_dma_control(struct skl_dev *skl, |
---|
105 | 106 | struct skl_clk_rate_cfg_table *rcfg, |
---|
106 | 107 | u32 vbus_id, u8 clk_type, |
---|
107 | 108 | bool enable) |
---|
.. | .. |
---|
152 | 153 | memcpy(i2s_config + sp_cfg->size, data, size); |
---|
153 | 154 | |
---|
154 | 155 | node_id = ((SKL_DMA_I2S_LINK_INPUT_CLASS << 8) | (vbus_id << 4)); |
---|
155 | | - ret = skl_dsp_set_dma_control(skl->skl_sst, (u32 *)i2s_config, |
---|
| 156 | + ret = skl_dsp_set_dma_control(skl, (u32 *)i2s_config, |
---|
156 | 157 | i2s_config_size, node_id); |
---|
157 | 158 | kfree(i2s_config); |
---|
158 | 159 | |
---|
.. | .. |
---|
276 | 277 | |
---|
277 | 278 | static void unregister_src_clk(struct skl_clk_data *dclk) |
---|
278 | 279 | { |
---|
279 | | - u8 cnt = dclk->avail_clk_cnt; |
---|
280 | | - |
---|
281 | | - while (cnt--) |
---|
282 | | - clkdev_drop(dclk->clk[cnt]->lookup); |
---|
| 280 | + while (dclk->avail_clk_cnt--) |
---|
| 281 | + clkdev_drop(dclk->clk[dclk->avail_clk_cnt]->lookup); |
---|
283 | 282 | } |
---|
284 | 283 | |
---|
285 | 284 | static int skl_register_parent_clks(struct device *dev, |
---|
.. | .. |
---|
381 | 380 | if (clks[i].rate_cfg[0].rate == 0) |
---|
382 | 381 | continue; |
---|
383 | 382 | |
---|
384 | | - data->clk[i] = register_skl_clk(dev, &clks[i], clk_pdata, i); |
---|
385 | | - if (IS_ERR(data->clk[i])) { |
---|
386 | | - ret = PTR_ERR(data->clk[i]); |
---|
| 383 | + data->clk[data->avail_clk_cnt] = register_skl_clk(dev, |
---|
| 384 | + &clks[i], clk_pdata, i); |
---|
| 385 | + |
---|
| 386 | + if (IS_ERR(data->clk[data->avail_clk_cnt])) { |
---|
| 387 | + ret = PTR_ERR(data->clk[data->avail_clk_cnt]); |
---|
387 | 388 | goto err_unreg_skl_clk; |
---|
388 | 389 | } |
---|
389 | 390 | |
---|