1 /*
2  * simple_card_core.h
3  *
4  * Copyright (c) 2016 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10 #ifndef __SIMPLE_CARD_CORE_H
11 #define __SIMPLE_CARD_CORE_H
12 
13 #include <sound/soc.h>
14 
15 struct asoc_simple_dai {
16 	const char *name;
17 	unsigned int sysclk;
18 	int slots;
19 	int slot_width;
20 	unsigned int tx_slot_mask;
21 	unsigned int rx_slot_mask;
22 	struct clk *clk;
23 };
24 
25 int asoc_simple_card_parse_daifmt(struct device *dev,
26 				  struct device_node *node,
27 				  struct device_node *codec,
28 				  char *prefix,
29 				  unsigned int *retfmt);
30 int asoc_simple_card_set_dailink_name(struct device *dev,
31 				      struct snd_soc_dai_link *dai_link,
32 				      const char *fmt, ...);
33 int asoc_simple_card_parse_card_name(struct snd_soc_card *card,
34 				     char *prefix);
35 
36 #endif /* __SIMPLE_CARD_CORE_H */
37