1 /* SPDX-License-Identifier: GPL-2.0 */
3 * rt1308-sdw.h -- RT1308 ALSA SoC audio driver header
5 * Copyright(c) 2019 Realtek Semiconductor Corp.
8 #ifndef __RT1308_SDW_H__
9 #define __RT1308_SDW_H__
11 static const struct reg_default rt1308_reg_defaults[] = {
142 { 0xc000 | (RT1308_DATA_PATH << 4), 0x00 },
143 { 0xc003 | (RT1308_DAC_SET << 4), 0x00 },
144 { 0xc000 | (RT1308_POWER << 4), 0x00 },
145 { 0xc001 | (RT1308_POWER << 4), 0x00 },
146 { 0xc002 | (RT1308_POWER << 4), 0x00 },
147 { 0xc000 | (RT1308_POWER_STATUS << 4), 0x00 },
150 #define RT1308_SDW_OFFSET 0xc000
151 #define RT1308_SDW_OFFSET_BYTE0 0xc000
152 #define RT1308_SDW_OFFSET_BYTE1 0xc001
153 #define RT1308_SDW_OFFSET_BYTE2 0xc002
154 #define RT1308_SDW_OFFSET_BYTE3 0xc003
156 #define RT1308_SDW_RESET (RT1308_SDW_OFFSET | (RT1308_RESET << 4))
158 struct rt1308_sdw_priv {
159 struct snd_soc_component *component;
160 struct regmap *regmap;
161 struct sdw_slave *sdw_slave;
162 enum sdw_slave_status status;
163 struct sdw_bus_params params;
169 unsigned char *bq_params;
170 unsigned int bq_params_cnt;
173 #endif /* __RT1308_SDW_H__ */