Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0
0002  *
0003  * ASoC audio graph card support
0004  *
0005  */
0006 
0007 #ifndef __GRAPH_CARD_H
0008 #define __GRAPH_CARD_H
0009 
0010 #include <sound/simple_card_utils.h>
0011 
0012 typedef int (*GRAPH2_CUSTOM)(struct asoc_simple_priv *priv,
0013                  struct device_node *lnk,
0014                  struct link_info *li);
0015 
0016 struct graph2_custom_hooks {
0017     int (*hook_pre)(struct asoc_simple_priv *priv);
0018     int (*hook_post)(struct asoc_simple_priv *priv);
0019     GRAPH2_CUSTOM custom_normal;
0020     GRAPH2_CUSTOM custom_dpcm;
0021     GRAPH2_CUSTOM custom_c2c;
0022 };
0023 
0024 int audio_graph_parse_of(struct asoc_simple_priv *priv, struct device *dev);
0025 int audio_graph2_parse_of(struct asoc_simple_priv *priv, struct device *dev,
0026               struct graph2_custom_hooks *hooks);
0027 
0028 int audio_graph2_link_normal(struct asoc_simple_priv *priv,
0029                  struct device_node *lnk, struct link_info *li);
0030 int audio_graph2_link_dpcm(struct asoc_simple_priv *priv,
0031                struct device_node *lnk, struct link_info *li);
0032 int audio_graph2_link_c2c(struct asoc_simple_priv *priv,
0033               struct device_node *lnk, struct link_info *li);
0034 
0035 #endif /* __GRAPH_CARD_H */