| .. | .. |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-only */ |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * wm8994.h -- WM8994 Soc Audio driver |
|---|
| 3 | | - * |
|---|
| 4 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 5 | | - * it under the terms of the GNU General Public License version 2 as |
|---|
| 6 | | - * published by the Free Software Foundation. |
|---|
| 7 | 4 | */ |
|---|
| 8 | 5 | |
|---|
| 9 | 6 | #ifndef _WM8994_H |
|---|
| 10 | 7 | #define _WM8994_H |
|---|
| 11 | 8 | |
|---|
| 9 | +#include <linux/clk.h> |
|---|
| 12 | 10 | #include <sound/soc.h> |
|---|
| 13 | 11 | #include <linux/firmware.h> |
|---|
| 14 | 12 | #include <linux/completion.h> |
|---|
| .. | .. |
|---|
| 16 | 14 | #include <linux/mutex.h> |
|---|
| 17 | 15 | |
|---|
| 18 | 16 | #include "wm_hubs.h" |
|---|
| 17 | + |
|---|
| 18 | +enum { |
|---|
| 19 | + WM8994_MCLK1, |
|---|
| 20 | + WM8994_MCLK2, |
|---|
| 21 | + WM8994_NUM_MCLK |
|---|
| 22 | +}; |
|---|
| 19 | 23 | |
|---|
| 20 | 24 | /* Sources for AIF1/2 SYSCLK - use with set_dai_sysclk() */ |
|---|
| 21 | 25 | #define WM8994_SYSCLK_MCLK1 1 |
|---|
| .. | .. |
|---|
| 76 | 80 | struct wm8994_priv { |
|---|
| 77 | 81 | struct wm_hubs_data hubs; |
|---|
| 78 | 82 | struct wm8994 *wm8994; |
|---|
| 83 | + struct clk_bulk_data mclk[WM8994_NUM_MCLK]; |
|---|
| 79 | 84 | int sysclk[2]; |
|---|
| 80 | 85 | int sysclk_rate[2]; |
|---|
| 81 | | - int mclk[2]; |
|---|
| 86 | + int mclk_rate[2]; |
|---|
| 82 | 87 | int aifclk[2]; |
|---|
| 83 | 88 | int aifdiv[2]; |
|---|
| 84 | 89 | int channels[2]; |
|---|