mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 08:44:41 +00:00 
			
		
		
		
	 fd3b36045c
			
		
	
	
		fd3b36045c
		
	
	
	
	
		
			
			Read configuration values from Xen store according
to xen/interface/io/sndif.h protocol:
  - introduce configuration structures for different
    components, e.g. sound card, device, stream
  - read PCM HW parameters, e.g rate, format etc.
  - detect stream type (capture/playback)
  - read device and card parameters
Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
		
	
			
		
			
				
	
	
		
			46 lines
		
	
	
	
		
			991 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
	
		
			991 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 OR MIT */
 | |
| 
 | |
| /*
 | |
|  * Xen para-virtual sound device
 | |
|  *
 | |
|  * Copyright (C) 2016-2018 EPAM Systems Inc.
 | |
|  *
 | |
|  * Author: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
 | |
|  */
 | |
| 
 | |
| #ifndef __XEN_SND_FRONT_CFG_H
 | |
| #define __XEN_SND_FRONT_CFG_H
 | |
| 
 | |
| #include <sound/core.h>
 | |
| #include <sound/pcm.h>
 | |
| 
 | |
| struct xen_snd_front_info;
 | |
| 
 | |
| struct xen_front_cfg_stream {
 | |
| 	int index;
 | |
| 	char *xenstore_path;
 | |
| 	struct snd_pcm_hardware pcm_hw;
 | |
| };
 | |
| 
 | |
| struct xen_front_cfg_pcm_instance {
 | |
| 	char name[80];
 | |
| 	int device_id;
 | |
| 	struct snd_pcm_hardware pcm_hw;
 | |
| 	int  num_streams_pb;
 | |
| 	struct xen_front_cfg_stream *streams_pb;
 | |
| 	int  num_streams_cap;
 | |
| 	struct xen_front_cfg_stream *streams_cap;
 | |
| };
 | |
| 
 | |
| struct xen_front_cfg_card {
 | |
| 	char name_short[32];
 | |
| 	char name_long[80];
 | |
| 	struct snd_pcm_hardware pcm_hw;
 | |
| 	int num_pcm_instances;
 | |
| 	struct xen_front_cfg_pcm_instance *pcm_instances;
 | |
| };
 | |
| 
 | |
| int xen_snd_front_cfg_card(struct xen_snd_front_info *front_info,
 | |
| 			   int *stream_cnt);
 | |
| 
 | |
| #endif /* __XEN_SND_FRONT_CFG_H */
 |