1*2b72c9e3SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 20bf750f4SAndy Green /* 30bf750f4SAndy Green * linux/sound/soc/hisilicon/hi6210-i2s.h 40bf750f4SAndy Green * 50bf750f4SAndy Green * Copyright (C) 2015 Linaro, Ltd 60bf750f4SAndy Green * Author: Andy Green <andy.green@linaro.org> 70bf750f4SAndy Green * 80bf750f4SAndy Green * Note at least on 6220, S2 == BT, S1 == Digital FM Radio IF 90bf750f4SAndy Green */ 100bf750f4SAndy Green 110bf750f4SAndy Green #ifndef _HI6210_I2S_H 120bf750f4SAndy Green #define _HI6210_I2S_H 130bf750f4SAndy Green 140bf750f4SAndy Green #define HII2S_SW_RST_N 0 150bf750f4SAndy Green 160bf750f4SAndy Green #define HII2S_SW_RST_N__STEREO_UPLINK_WORDLEN_SHIFT 28 170bf750f4SAndy Green #define HII2S_SW_RST_N__STEREO_UPLINK_WORDLEN_MASK 3 180bf750f4SAndy Green #define HII2S_SW_RST_N__THIRDMD_UPLINK_WORDLEN_SHIFT 26 190bf750f4SAndy Green #define HII2S_SW_RST_N__THIRDMD_UPLINK_WORDLEN_MASK 3 200bf750f4SAndy Green #define HII2S_SW_RST_N__VOICE_UPLINK_WORDLEN_SHIFT 24 210bf750f4SAndy Green #define HII2S_SW_RST_N__VOICE_UPLINK_WORDLEN_MASK 3 220bf750f4SAndy Green #define HII2S_SW_RST_N__ST_DL_WORDLEN_SHIFT 20 230bf750f4SAndy Green #define HII2S_SW_RST_N__ST_DL_WORDLEN_MASK 3 240bf750f4SAndy Green #define HII2S_SW_RST_N__THIRDMD_DLINK_WORDLEN_SHIFT 18 250bf750f4SAndy Green #define HII2S_SW_RST_N__THIRDMD_DLINK_WORDLEN_MASK 3 260bf750f4SAndy Green #define HII2S_SW_RST_N__VOICE_DLINK_WORDLEN_SHIFT 16 270bf750f4SAndy Green #define HII2S_SW_RST_N__VOICE_DLINK_WORDLEN_MASK 3 280bf750f4SAndy Green 290bf750f4SAndy Green #define HII2S_SW_RST_N__SW_RST_N BIT(0) 300bf750f4SAndy Green 310bf750f4SAndy Green enum hi6210_bits { 320bf750f4SAndy Green HII2S_BITS_16, 330bf750f4SAndy Green HII2S_BITS_18, 340bf750f4SAndy Green HII2S_BITS_20, 350bf750f4SAndy Green HII2S_BITS_24, 360bf750f4SAndy Green }; 370bf750f4SAndy Green 380bf750f4SAndy Green 390bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG 4 400bf750f4SAndy Green 410bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__THIRDMD_UPLINK_EN BIT(25) 420bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__THIRDMD_DLINK_EN BIT(24) 430bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S3_IF_CLK_EN BIT(20) 440bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S2_IF_CLK_EN BIT(16) 450bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S2_OL_MIXER_EN BIT(15) 460bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S2_OL_SRC_EN BIT(14) 470bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S2_IR_PGA_EN BIT(13) 480bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S2_IL_PGA_EN BIT(12) 490bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S1_IR_PGA_EN BIT(10) 500bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S1_IL_PGA_EN BIT(9) 510bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__S1_IF_CLK_EN BIT(8) 520bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__VOICE_DLINK_SRC_EN BIT(7) 530bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__VOICE_DLINK_EN BIT(6) 540bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__ST_DL_R_EN BIT(5) 550bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__ST_DL_L_EN BIT(4) 560bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__VOICE_UPLINK_R_EN BIT(3) 570bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__VOICE_UPLINK_L_EN BIT(2) 580bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__STEREO_UPLINK_R_EN BIT(1) 590bf750f4SAndy Green #define HII2S_IF_CLK_EN_CFG__STEREO_UPLINK_L_EN BIT(0) 600bf750f4SAndy Green 610bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG 8 620bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACR_SDM_EN BIT(30) 630bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACR_HBF2I_EN BIT(28) 640bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACR_MIXER_EN BIT(25) 650bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACR_AGC_EN BIT(24) 660bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACL_SDM_EN BIT(22) 670bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACL_HBF2I_EN BIT(20) 680bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACL_MIXER_EN BIT(17) 690bf750f4SAndy Green #define HII2S_DIG_FILTER_CLK_EN_CFG__DACL_AGC_EN BIT(16) 700bf750f4SAndy Green 710bf750f4SAndy Green #define HII2S_FS_CFG 0xc 720bf750f4SAndy Green 730bf750f4SAndy Green #define HII2S_FS_CFG__FS_S2_SHIFT 28 740bf750f4SAndy Green #define HII2S_FS_CFG__FS_S2_MASK 7 750bf750f4SAndy Green #define HII2S_FS_CFG__FS_S1_SHIFT 24 760bf750f4SAndy Green #define HII2S_FS_CFG__FS_S1_MASK 7 770bf750f4SAndy Green #define HII2S_FS_CFG__FS_ADCLR_SHIFT 20 780bf750f4SAndy Green #define HII2S_FS_CFG__FS_ADCLR_MASK 7 790bf750f4SAndy Green #define HII2S_FS_CFG__FS_DACLR_SHIFT 16 800bf750f4SAndy Green #define HII2S_FS_CFG__FS_DACLR_MASK 7 810bf750f4SAndy Green #define HII2S_FS_CFG__FS_ST_DL_R_SHIFT 8 820bf750f4SAndy Green #define HII2S_FS_CFG__FS_ST_DL_R_MASK 7 830bf750f4SAndy Green #define HII2S_FS_CFG__FS_ST_DL_L_SHIFT 4 840bf750f4SAndy Green #define HII2S_FS_CFG__FS_ST_DL_L_MASK 7 850bf750f4SAndy Green #define HII2S_FS_CFG__FS_VOICE_DLINK_SHIFT 0 860bf750f4SAndy Green #define HII2S_FS_CFG__FS_VOICE_DLINK_MASK 7 870bf750f4SAndy Green 880bf750f4SAndy Green enum hi6210_i2s_rates { 890bf750f4SAndy Green HII2S_FS_RATE_8KHZ = 0, 900bf750f4SAndy Green HII2S_FS_RATE_16KHZ = 1, 910bf750f4SAndy Green HII2S_FS_RATE_32KHZ = 2, 920bf750f4SAndy Green HII2S_FS_RATE_48KHZ = 4, 930bf750f4SAndy Green HII2S_FS_RATE_96KHZ = 5, 940bf750f4SAndy Green HII2S_FS_RATE_192KHZ = 6, 950bf750f4SAndy Green }; 960bf750f4SAndy Green 970bf750f4SAndy Green #define HII2S_I2S_CFG 0x10 980bf750f4SAndy Green 990bf750f4SAndy Green #define HII2S_I2S_CFG__S2_IF_TX_EN BIT(31) 1000bf750f4SAndy Green #define HII2S_I2S_CFG__S2_IF_RX_EN BIT(30) 1010bf750f4SAndy Green #define HII2S_I2S_CFG__S2_FRAME_MODE BIT(29) 1020bf750f4SAndy Green #define HII2S_I2S_CFG__S2_MST_SLV BIT(28) 1030bf750f4SAndy Green #define HII2S_I2S_CFG__S2_LRCK_MODE BIT(27) 1040bf750f4SAndy Green #define HII2S_I2S_CFG__S2_CHNNL_MODE BIT(26) 1050bf750f4SAndy Green #define HII2S_I2S_CFG__S2_CODEC_IO_WORDLENGTH_SHIFT 24 1060bf750f4SAndy Green #define HII2S_I2S_CFG__S2_CODEC_IO_WORDLENGTH_MASK 3 1070bf750f4SAndy Green #define HII2S_I2S_CFG__S2_DIRECT_LOOP_SHIFT 22 1080bf750f4SAndy Green #define HII2S_I2S_CFG__S2_DIRECT_LOOP_MASK 3 1090bf750f4SAndy Green #define HII2S_I2S_CFG__S2_TX_CLK_SEL BIT(21) 1100bf750f4SAndy Green #define HII2S_I2S_CFG__S2_RX_CLK_SEL BIT(20) 1110bf750f4SAndy Green #define HII2S_I2S_CFG__S2_CODEC_DATA_FORMAT BIT(19) 1120bf750f4SAndy Green #define HII2S_I2S_CFG__S2_FUNC_MODE_SHIFT 16 1130bf750f4SAndy Green #define HII2S_I2S_CFG__S2_FUNC_MODE_MASK 7 1140bf750f4SAndy Green #define HII2S_I2S_CFG__S1_IF_TX_EN BIT(15) 1150bf750f4SAndy Green #define HII2S_I2S_CFG__S1_IF_RX_EN BIT(14) 1160bf750f4SAndy Green #define HII2S_I2S_CFG__S1_FRAME_MODE BIT(13) 1170bf750f4SAndy Green #define HII2S_I2S_CFG__S1_MST_SLV BIT(12) 1180bf750f4SAndy Green #define HII2S_I2S_CFG__S1_LRCK_MODE BIT(11) 1190bf750f4SAndy Green #define HII2S_I2S_CFG__S1_CHNNL_MODE BIT(10) 1200bf750f4SAndy Green #define HII2S_I2S_CFG__S1_CODEC_IO_WORDLENGTH_SHIFT 8 1210bf750f4SAndy Green #define HII2S_I2S_CFG__S1_CODEC_IO_WORDLENGTH_MASK 3 1220bf750f4SAndy Green #define HII2S_I2S_CFG__S1_DIRECT_LOOP_SHIFT 6 1230bf750f4SAndy Green #define HII2S_I2S_CFG__S1_DIRECT_LOOP_MASK 3 1240bf750f4SAndy Green #define HII2S_I2S_CFG__S1_TX_CLK_SEL BIT(5) 1250bf750f4SAndy Green #define HII2S_I2S_CFG__S1_RX_CLK_SEL BIT(4) 1260bf750f4SAndy Green #define HII2S_I2S_CFG__S1_CODEC_DATA_FORMAT BIT(3) 1270bf750f4SAndy Green #define HII2S_I2S_CFG__S1_FUNC_MODE_SHIFT 0 1280bf750f4SAndy Green #define HII2S_I2S_CFG__S1_FUNC_MODE_MASK 7 1290bf750f4SAndy Green 1300bf750f4SAndy Green enum hi6210_i2s_formats { 1310bf750f4SAndy Green HII2S_FORMAT_I2S, 1320bf750f4SAndy Green HII2S_FORMAT_PCM_STD, 1330bf750f4SAndy Green HII2S_FORMAT_PCM_USER, 1340bf750f4SAndy Green HII2S_FORMAT_LEFT_JUST, 1350bf750f4SAndy Green HII2S_FORMAT_RIGHT_JUST, 1360bf750f4SAndy Green }; 1370bf750f4SAndy Green 1380bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG 0x14 1390bf750f4SAndy Green 1400bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_GAIN_SHIFT 28 1410bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_GAIN_MASK 3 1420bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_IN4_MUTE BIT(27) 1430bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_IN3_MUTE BIT(26) 1440bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_IN2_MUTE BIT(25) 1450bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACR_MIXER_IN1_MUTE BIT(24) 1460bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_GAIN_SHIFT 20 1470bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_GAIN_MASK 3 1480bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_IN4_MUTE BIT(19) 1490bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_IN3_MUTE BIT(18) 1500bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_IN2_MUTE BIT(17) 1510bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__DACL_MIXER_IN1_MUTE BIT(16) 1520bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__SW_DACR_SDM_DITHER BIT(9) 1530bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__SW_DACL_SDM_DITHER BIT(8) 1540bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__LM_CODEC_DAC2ADC_SHIFT 4 1550bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__LM_CODEC_DAC2ADC_MASK 7 1560bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__RM_CODEC_DAC2ADC_SHIFT 0 1570bf750f4SAndy Green #define HII2S_DIG_FILTER_MODULE_CFG__RM_CODEC_DAC2ADC_MASK 7 1580bf750f4SAndy Green 1590bf750f4SAndy Green enum hi6210_gains { 1600bf750f4SAndy Green HII2S_GAIN_100PC, 1610bf750f4SAndy Green HII2S_GAIN_50PC, 1620bf750f4SAndy Green HII2S_GAIN_25PC, 1630bf750f4SAndy Green }; 1640bf750f4SAndy Green 1650bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG 0x18 1660bf750f4SAndy Green 1670bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_MIXER_GAIN_SHIFT 14 1680bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_MIXER_GAIN_MASK 3 1690bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_MIXER_IN2_MUTE BIT(13) 1700bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_MIXER_IN1_MUTE BIT(12) 1710bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_MIXER_GAIN_SHIFT 10 1720bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_MIXER_GAIN_MASK 3 1730bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_MIXER_IN2_MUTE BIT(9) 1740bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_MIXER_IN1_MUTE BIT(8) 1750bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_SRC_RDY BIT(6) 1760bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_SRC_MODE_SHIFT 4 1770bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__S2_OL_SRC_MODE_MASK 3 1780bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_SRC_RDY BIT(3) 1790bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_SRC_MODE_SHIFT 0 1800bf750f4SAndy Green #define HII2S_MUX_TOP_MODULE_CFG__VOICE_DLINK_SRC_MODE_MASK 7 1810bf750f4SAndy Green 1820bf750f4SAndy Green enum hi6210_s2_src_mode { 1830bf750f4SAndy Green HII2S_S2_SRC_MODE_3, 1840bf750f4SAndy Green HII2S_S2_SRC_MODE_12, 1850bf750f4SAndy Green HII2S_S2_SRC_MODE_6, 1860bf750f4SAndy Green HII2S_S2_SRC_MODE_2, 1870bf750f4SAndy Green }; 1880bf750f4SAndy Green 1890bf750f4SAndy Green enum hi6210_voice_dlink_src_mode { 1900bf750f4SAndy Green HII2S_VOICE_DL_SRC_MODE_12 = 1, 1910bf750f4SAndy Green HII2S_VOICE_DL_SRC_MODE_6, 1920bf750f4SAndy Green HII2S_VOICE_DL_SRC_MODE_2, 1930bf750f4SAndy Green HII2S_VOICE_DL_SRC_MODE_3, 1940bf750f4SAndy Green }; 1950bf750f4SAndy Green 1960bf750f4SAndy Green #define HII2S_ADC_PGA_CFG 0x1c 1970bf750f4SAndy Green #define HII2S_S1_INPUT_PGA_CFG 0x20 1980bf750f4SAndy Green #define HII2S_S2_INPUT_PGA_CFG 0x24 1990bf750f4SAndy Green #define HII2S_ST_DL_PGA_CFG 0x28 2000bf750f4SAndy Green #define HII2S_VOICE_SIDETONE_DLINK_PGA_CFG 0x2c 2010bf750f4SAndy Green #define HII2S_APB_AFIFO_CFG_1 0x30 2020bf750f4SAndy Green #define HII2S_APB_AFIFO_CFG_2 0x34 2030bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG 0x38 2040bf750f4SAndy Green 2050bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_R_AEMPTY_SHIFT 24 2060bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_R_AEMPTY_MASK 0x1f 2070bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_R_AFULL_SHIFT 16 2080bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_R_AFULL_MASK 0x1f 2090bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_L_AEMPTY_SHIFT 8 2100bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_L_AEMPTY_MASK 0x1f 2110bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_L_AFULL_SHIFT 0 2120bf750f4SAndy Green #define HII2S_ST_DL_FIFO_TH_CFG__ST_DL_L_AFULL_MASK 0x1f 2130bf750f4SAndy Green 2140bf750f4SAndy Green #define HII2S_STEREO_UPLINK_FIFO_TH_CFG 0x3c 2150bf750f4SAndy Green #define HII2S_VOICE_UPLINK_FIFO_TH_CFG 0x40 2160bf750f4SAndy Green #define HII2S_CODEC_IRQ_MASK 0x44 2170bf750f4SAndy Green #define HII2S_CODEC_IRQ 0x48 2180bf750f4SAndy Green #define HII2S_DACL_AGC_CFG_1 0x4c 2190bf750f4SAndy Green #define HII2S_DACL_AGC_CFG_2 0x50 2200bf750f4SAndy Green #define HII2S_DACR_AGC_CFG_1 0x54 2210bf750f4SAndy Green #define HII2S_DACR_AGC_CFG_2 0x58 2220bf750f4SAndy Green #define HII2S_DMIC_SIF_CFG 0x5c 2230bf750f4SAndy Green #define HII2S_MISC_CFG 0x60 2240bf750f4SAndy Green 2250bf750f4SAndy Green #define HII2S_MISC_CFG__THIRDMD_DLINK_TEST_SEL BIT(17) 2260bf750f4SAndy Green #define HII2S_MISC_CFG__THIRDMD_DLINK_DIN_SEL BIT(16) 2270bf750f4SAndy Green #define HII2S_MISC_CFG__S3_DOUT_RIGHT_SEL BIT(14) 2280bf750f4SAndy Green #define HII2S_MISC_CFG__S3_DOUT_LEFT_SEL BIT(13) 2290bf750f4SAndy Green #define HII2S_MISC_CFG__S3_DIN_TEST_SEL BIT(12) 2300bf750f4SAndy Green #define HII2S_MISC_CFG__VOICE_DLINK_SRC_UP_DOUT_VLD_SEL BIT(8) 2310bf750f4SAndy Green #define HII2S_MISC_CFG__VOICE_DLINK_TEST_SEL BIT(7) 2320bf750f4SAndy Green #define HII2S_MISC_CFG__VOICE_DLINK_DIN_SEL BIT(6) 2330bf750f4SAndy Green #define HII2S_MISC_CFG__ST_DL_TEST_SEL BIT(4) 2340bf750f4SAndy Green #define HII2S_MISC_CFG__S2_DOUT_RIGHT_SEL BIT(3) 2350bf750f4SAndy Green #define HII2S_MISC_CFG__S2_DOUT_TEST_SEL BIT(2) 2360bf750f4SAndy Green #define HII2S_MISC_CFG__S1_DOUT_TEST_SEL BIT(1) 2370bf750f4SAndy Green #define HII2S_MISC_CFG__S2_DOUT_LEFT_SEL BIT(0) 2380bf750f4SAndy Green 2390bf750f4SAndy Green #define HII2S_S2_SRC_CFG 0x64 2400bf750f4SAndy Green #define HII2S_MEM_CFG 0x68 2410bf750f4SAndy Green #define HII2S_THIRDMD_PCM_PGA_CFG 0x6c 2420bf750f4SAndy Green #define HII2S_THIRD_MODEM_FIFO_TH 0x70 2430bf750f4SAndy Green #define HII2S_S3_ANTI_FREQ_JITTER_TX_INC_CNT 0x74 2440bf750f4SAndy Green #define HII2S_S3_ANTI_FREQ_JITTER_TX_DEC_CNT 0x78 2450bf750f4SAndy Green #define HII2S_S3_ANTI_FREQ_JITTER_RX_INC_CNT 0x7c 2460bf750f4SAndy Green #define HII2S_S3_ANTI_FREQ_JITTER_RX_DEC_CNT 0x80 2470bf750f4SAndy Green #define HII2S_ANTI_FREQ_JITTER_EN 0x84 2480bf750f4SAndy Green #define HII2S_CLK_SEL 0x88 2490bf750f4SAndy Green 2500bf750f4SAndy Green /* 0 = BT owns the i2s */ 2510bf750f4SAndy Green #define HII2S_CLK_SEL__I2S_BT_FM_SEL BIT(0) 2520bf750f4SAndy Green /* 0 = internal source, 1 = ext */ 2530bf750f4SAndy Green #define HII2S_CLK_SEL__EXT_12_288MHZ_SEL BIT(1) 2540bf750f4SAndy Green 2550bf750f4SAndy Green 2560bf750f4SAndy Green #define HII2S_THIRDMD_DLINK_CHANNEL 0xe8 2570bf750f4SAndy Green #define HII2S_THIRDMD_ULINK_CHANNEL 0xec 2580bf750f4SAndy Green #define HII2S_VOICE_DLINK_CHANNEL 0xf0 2590bf750f4SAndy Green 2600bf750f4SAndy Green /* shovel data in here for playback */ 2610bf750f4SAndy Green #define HII2S_ST_DL_CHANNEL 0xf4 2620bf750f4SAndy Green #define HII2S_STEREO_UPLINK_CHANNEL 0xf8 2630bf750f4SAndy Green #define HII2S_VOICE_UPLINK_CHANNEL 0xfc 2640bf750f4SAndy Green 2650bf750f4SAndy Green #endif/* _HI6210_I2S_H */ 266