xref: /freebsd/sys/contrib/device-tree/include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
18cc087a1SEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0 */
28cc087a1SEmmanuel Vadot #ifndef __DT_BINDINGS_Q6_AUDIO_PORTS_H__
38cc087a1SEmmanuel Vadot #define __DT_BINDINGS_Q6_AUDIO_PORTS_H__
48cc087a1SEmmanuel Vadot 
58cc087a1SEmmanuel Vadot /* LPASS Audio virtual ports IDs */
68cc087a1SEmmanuel Vadot #define HDMI_RX		1
78cc087a1SEmmanuel Vadot #define SLIMBUS_0_RX    2
88cc087a1SEmmanuel Vadot #define SLIMBUS_0_TX    3
98cc087a1SEmmanuel Vadot #define SLIMBUS_1_RX    4
108cc087a1SEmmanuel Vadot #define SLIMBUS_1_TX    5
118cc087a1SEmmanuel Vadot #define SLIMBUS_2_RX    6
128cc087a1SEmmanuel Vadot #define SLIMBUS_2_TX    7
138cc087a1SEmmanuel Vadot #define SLIMBUS_3_RX    8
148cc087a1SEmmanuel Vadot #define SLIMBUS_3_TX    9
158cc087a1SEmmanuel Vadot #define SLIMBUS_4_RX    10
168cc087a1SEmmanuel Vadot #define SLIMBUS_4_TX    11
178cc087a1SEmmanuel Vadot #define SLIMBUS_5_RX    12
188cc087a1SEmmanuel Vadot #define SLIMBUS_5_TX    13
198cc087a1SEmmanuel Vadot #define SLIMBUS_6_RX    14
208cc087a1SEmmanuel Vadot #define SLIMBUS_6_TX    15
218cc087a1SEmmanuel Vadot #define PRIMARY_MI2S_RX		16
228cc087a1SEmmanuel Vadot #define PRIMARY_MI2S_TX		17
238cc087a1SEmmanuel Vadot #define SECONDARY_MI2S_RX	18
248cc087a1SEmmanuel Vadot #define SECONDARY_MI2S_TX	19
258cc087a1SEmmanuel Vadot #define TERTIARY_MI2S_RX	20
268cc087a1SEmmanuel Vadot #define TERTIARY_MI2S_TX	21
278cc087a1SEmmanuel Vadot #define QUATERNARY_MI2S_RX	22
288cc087a1SEmmanuel Vadot #define QUATERNARY_MI2S_TX	23
298cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_0	24
308cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_0	25
318cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_1	26
328cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_1	27
338cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_2	28
348cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_2	29
358cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_3	30
368cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_3	31
378cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_4	32
388cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_4	33
398cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_5	34
408cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_5	35
418cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_6	36
428cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_6	37
438cc087a1SEmmanuel Vadot #define PRIMARY_TDM_RX_7	38
448cc087a1SEmmanuel Vadot #define PRIMARY_TDM_TX_7	39
458cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_0	40
468cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_0	41
478cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_1	42
488cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_1	43
498cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_2	44
508cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_2	45
518cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_3	46
528cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_3	47
538cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_4	48
548cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_4	49
558cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_5	50
568cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_5	51
578cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_6	52
588cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_6	53
598cc087a1SEmmanuel Vadot #define SECONDARY_TDM_RX_7	54
608cc087a1SEmmanuel Vadot #define SECONDARY_TDM_TX_7	55
618cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_0	56
628cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_0	57
638cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_1	58
648cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_1	59
658cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_2	60
668cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_2	61
678cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_3	62
688cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_3	63
698cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_4	64
708cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_4	65
718cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_5	66
728cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_5	67
738cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_6	68
748cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_6	69
758cc087a1SEmmanuel Vadot #define TERTIARY_TDM_RX_7	70
768cc087a1SEmmanuel Vadot #define TERTIARY_TDM_TX_7	71
778cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_0	72
788cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_0	73
798cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_1	74
808cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_1	75
818cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_2	76
828cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_2	77
838cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_3	78
848cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_3	79
858cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_4	80
868cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_4	81
878cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_5	82
888cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_5	83
898cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_6	84
908cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_6	85
918cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_RX_7	86
928cc087a1SEmmanuel Vadot #define QUATERNARY_TDM_TX_7	87
938cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_0	88
948cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_0	89
958cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_1	90
968cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_1	91
978cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_2	92
988cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_2	93
998cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_3	94
1008cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_3	95
1018cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_4	96
1028cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_4	97
1038cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_5	98
1048cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_5	99
1058cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_6	100
1068cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_6	101
1078cc087a1SEmmanuel Vadot #define QUINARY_TDM_RX_7	102
1088cc087a1SEmmanuel Vadot #define QUINARY_TDM_TX_7	103
1098cc087a1SEmmanuel Vadot #define DISPLAY_PORT_RX		104
1108cc087a1SEmmanuel Vadot #define WSA_CODEC_DMA_RX_0	105
1118cc087a1SEmmanuel Vadot #define WSA_CODEC_DMA_TX_0	106
1128cc087a1SEmmanuel Vadot #define WSA_CODEC_DMA_RX_1	107
1138cc087a1SEmmanuel Vadot #define WSA_CODEC_DMA_TX_1	108
1148cc087a1SEmmanuel Vadot #define WSA_CODEC_DMA_TX_2	109
1158cc087a1SEmmanuel Vadot #define VA_CODEC_DMA_TX_0	110
1168cc087a1SEmmanuel Vadot #define VA_CODEC_DMA_TX_1	111
1178cc087a1SEmmanuel Vadot #define VA_CODEC_DMA_TX_2	112
1188cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_0	113
1198cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_0	114
1208cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_1	115
1218cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_1	116
1228cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_2	117
1238cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_2	118
1248cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_3	119
1258cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_3	120
1268cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_4	121
1278cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_4	122
1288cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_5	123
1298cc087a1SEmmanuel Vadot #define TX_CODEC_DMA_TX_5	124
1308cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_6	125
1318cc087a1SEmmanuel Vadot #define RX_CODEC_DMA_RX_7	126
1328cc087a1SEmmanuel Vadot #define QUINARY_MI2S_RX		127
1338cc087a1SEmmanuel Vadot #define QUINARY_MI2S_TX		128
134*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_0	DISPLAY_PORT_RX
135*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_1	129
136*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_2	130
137*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_3	131
138*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_4	132
139*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_5	133
140*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_6	134
141*f126890aSEmmanuel Vadot #define DISPLAY_PORT_RX_7	135
1428cc087a1SEmmanuel Vadot 
1438cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_MI2S_IBIT	1
1448cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_MI2S_EBIT	2
1458cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_MI2S_IBIT	3
1468cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_MI2S_EBIT	4
1478cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_MI2S_IBIT	5
1488cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_MI2S_EBIT	6
1498cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_MI2S_IBIT	7
1508cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_MI2S_EBIT	8
1518cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SPEAKER_I2S_IBIT	9
1528cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SPEAKER_I2S_EBIT	10
1538cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SPEAKER_I2S_OSR	11
1548cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUI_MI2S_IBIT	12
1558cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUI_MI2S_EBIT	13
1568cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEN_MI2S_IBIT	14
1578cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEN_MI2S_EBIT	15
1588cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT0_MI2S_IBIT	16
1598cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT1_MI2S_IBIT	17
1608cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT2_MI2S_IBIT	18
1618cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT3_MI2S_IBIT	19
1628cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT4_MI2S_IBIT	20
1638cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT5_MI2S_IBIT	21
1648cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT6_MI2S_IBIT	22
1658cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUI_MI2S_OSR	23
1668cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_PCM_IBIT	24
1678cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_PCM_EBIT	25
1688cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_PCM_IBIT	26
1698cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_PCM_EBIT	27
1708cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_PCM_IBIT	28
1718cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_PCM_EBIT	29
1728cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_PCM_IBIT	30
1738cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_PCM_EBIT	31
1748cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUIN_PCM_IBIT	32
1758cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUIN_PCM_EBIT	33
1768cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUI_PCM_OSR	34
1778cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_TDM_IBIT	35
1788cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_PRI_TDM_EBIT	36
1798cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_TDM_IBIT	37
1808cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_SEC_TDM_EBIT	38
1818cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_TDM_IBIT	39
1828cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TER_TDM_EBIT	40
1838cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_TDM_IBIT	41
1848cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUAD_TDM_EBIT	42
1858cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUIN_TDM_IBIT	43
1868cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUIN_TDM_EBIT	44
1878cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_QUIN_TDM_OSR	45
1888cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_MCLK_1		46
1898cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_MCLK_2		47
1908cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_MCLK_3		48
1918cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_MCLK_4		49
1928cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INTERNAL_DIGITAL_CODEC_CORE	50
1938cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT_MCLK_0		51
1948cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_INT_MCLK_1		52
1958cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_MCLK_5		53
1968cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_WSA_CORE_MCLK	54
1978cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_WSA_CORE_NPL_MCLK	55
1988cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_VA_CORE_MCLK	56
1998cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TX_CORE_MCLK	57
2008cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_TX_CORE_NPL_MCLK	58
2018cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_RX_CORE_MCLK	59
2028cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_RX_CORE_NPL_MCLK	60
2038cc087a1SEmmanuel Vadot #define LPASS_CLK_ID_VA_CORE_2X_MCLK	61
2047ef62cebSEmmanuel Vadot /* Clock ID for MCLK for WSA2 core */
2057ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA2_CORE_MCLK	62
2067ef62cebSEmmanuel Vadot /* Clock ID for NPL MCLK for WSA2 core */
2077ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA2_CORE_2X_MCLK	63
2087ef62cebSEmmanuel Vadot /* Clock ID for RX Core TX MCLK */
2097ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_RX_CORE_TX_MCLK	64
2107ef62cebSEmmanuel Vadot /* Clock ID for RX CORE TX 2X MCLK */
2117ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_RX_CORE_TX_2X_MCLK	65
2127ef62cebSEmmanuel Vadot /* Clock ID for WSA core TX MCLK */
2137ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA_CORE_TX_MCLK	66
2147ef62cebSEmmanuel Vadot /* Clock ID for WSA core TX 2X MCLK */
2157ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA_CORE_TX_2X_MCLK	67
2167ef62cebSEmmanuel Vadot /* Clock ID for WSA2 core TX MCLK */
2177ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA2_CORE_TX_MCLK	68
2187ef62cebSEmmanuel Vadot /* Clock ID for WSA2 core TX 2X MCLK */
2197ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_WSA2_CORE_TX_2X_MCLK	69
2207ef62cebSEmmanuel Vadot /* Clock ID for RX CORE MCLK2 2X  MCLK */
2217ef62cebSEmmanuel Vadot #define LPASS_CLK_ID_RX_CORE_MCLK2_2X_MCLK	70
2228cc087a1SEmmanuel Vadot 
2238cc087a1SEmmanuel Vadot #define LPASS_HW_AVTIMER_VOTE		101
2248cc087a1SEmmanuel Vadot #define LPASS_HW_MACRO_VOTE		102
2258cc087a1SEmmanuel Vadot #define LPASS_HW_DCODEC_VOTE		103
2268cc087a1SEmmanuel Vadot 
2278cc087a1SEmmanuel Vadot #define Q6AFE_MAX_CLK_ID			104
2288cc087a1SEmmanuel Vadot 
2298cc087a1SEmmanuel Vadot #define LPASS_CLK_ATTRIBUTE_INVALID		0x0
2308cc087a1SEmmanuel Vadot #define LPASS_CLK_ATTRIBUTE_COUPLE_NO		0x1
2318cc087a1SEmmanuel Vadot #define LPASS_CLK_ATTRIBUTE_COUPLE_DIVIDEND	0x2
2328cc087a1SEmmanuel Vadot #define LPASS_CLK_ATTRIBUTE_COUPLE_DIVISOR	0x3
2338cc087a1SEmmanuel Vadot 
2348cc087a1SEmmanuel Vadot #endif /* __DT_BINDINGS_Q6_AUDIO_PORTS_H__ */
235