1#
2# Intel DMIC DAI
3#
4# All attributes defined herein are namespaced by alsatplg to "dmic.attribute_name"
5#
6# Usage: this component can be used by declaring in the "dais" field of
7# a parent object. i.e.
8#
9# For Capture
10# Object.DMIC."M.capture" {
11#	name	"dmic16k"
12#	id	2
13#	Object.Base.hw_config."0" {
14#		id  0
15#	}
16#	Object.Base.pdm_config."0" {
17#		ctrl_id 0
18#	}
19# }
20#
21#
22# Where M is DAI index in the firmware
23
24Class.Dai."DMIC" {
25
26	#
27	# instance ID of DMIC DAI object
28	#
29	DefineAttribute."instance" {}
30
31	#
32	# Argument used to construct DAI widget
33	#
34	# DAI Index
35	DefineAttribute."dai_index" {
36		token_ref	"sof_tkn_dai.word"
37	}
38
39	DefineAttribute."direction" {
40		type "string"
41	}
42
43	DefineAttribute."dai_type" {
44		type	"string"
45		token_ref	"sof_tkn_dai.string"
46	}
47
48	# Backend DAI Link ID matching with the machine driver
49	DefineAttribute.id {}
50
51	DefineAttribute.default_hw_config_id {}
52
53	DefineAttribute.name {
54		type	"string"
55	}
56
57	DefineAttribute.driver_version {
58		token_ref	"sof_tkn_intel_dmic.word"
59	}
60
61	DefineAttribute.clk_min {
62		token_ref	"sof_tkn_intel_dmic.word"
63	}
64
65	DefineAttribute.clk_max {
66		token_ref	"sof_tkn_intel_dmic.word"
67	}
68
69	DefineAttribute.duty_min {
70		token_ref	"sof_tkn_intel_dmic.word"
71	}
72
73	DefineAttribute.duty_max {
74		token_ref	"sof_tkn_intel_dmic.word"
75	}
76
77	DefineAttribute.num_pdm_active {
78		token_ref	"sof_tkn_intel_dmic.word"
79	}
80
81	DefineAttribute.sample_rate {
82		token_ref	"sof_tkn_intel_dmic.word"
83	}
84
85	DefineAttribute.fifo_word_length {
86		token_ref	"sof_tkn_intel_dmic.word"
87	}
88
89	DefineAttribute.unmute_ramp_time_ms {
90		token_ref	"sof_tkn_intel_dmic.word"
91	}
92
93	# platform clock frequency
94	DefineAttribute.io_clk {}
95
96	attributes {
97		!constructor [
98			"name"
99		]
100		!mandatory [
101			"num_pdm_active"
102			"dai_index"
103		]
104		!immutable [
105			"dai_type"
106			"direction"
107		]
108		unique "instance"
109	}
110
111	dai_type		"DMIC"
112	default_hw_config_id	0
113	clk_min			2400000
114	clk_max			4800000
115	duty_min		40
116	duty_max		60
117	sample_rate		48000
118	fifo_word_length	32
119	unmute_ramp_time_ms	400
120	driver_version		1
121	direction		"capture"
122}
123