@@ -46,6 +46,7 @@ static const struct reg_default cs35l45_defaults[] = {
4646 { CS35L45_SYNC_GPIO1 , 0x00000007 },
4747 { CS35L45_INTB_GPIO2_MCLK_REF , 0x00000005 },
4848 { CS35L45_GPIO3 , 0x00000005 },
49+ { CS35L45_PWRMGT_CTL , 0x00000000 },
4950 { CS35L45_REFCLK_INPUT , 0x00000510 },
5051 { CS35L45_GLOBAL_SAMPLE_RATE , 0x00000003 },
5152 { CS35L45_ASP_ENABLES1 , 0x00000000 },
@@ -63,6 +64,30 @@ static const struct reg_default cs35l45_defaults[] = {
6364 { CS35L45_ASPTX3_INPUT , 0x00000020 },
6465 { CS35L45_ASPTX4_INPUT , 0x00000028 },
6566 { CS35L45_ASPTX5_INPUT , 0x00000048 },
67+ { CS35L45_DSP1_RX1_RATE , 0x00000001 },
68+ { CS35L45_DSP1_RX2_RATE , 0x00000001 },
69+ { CS35L45_DSP1_RX3_RATE , 0x00000001 },
70+ { CS35L45_DSP1_RX4_RATE , 0x00000001 },
71+ { CS35L45_DSP1_RX5_RATE , 0x00000001 },
72+ { CS35L45_DSP1_RX6_RATE , 0x00000001 },
73+ { CS35L45_DSP1_RX7_RATE , 0x00000001 },
74+ { CS35L45_DSP1_RX8_RATE , 0x00000001 },
75+ { CS35L45_DSP1_TX1_RATE , 0x00000001 },
76+ { CS35L45_DSP1_TX2_RATE , 0x00000001 },
77+ { CS35L45_DSP1_TX3_RATE , 0x00000001 },
78+ { CS35L45_DSP1_TX4_RATE , 0x00000001 },
79+ { CS35L45_DSP1_TX5_RATE , 0x00000001 },
80+ { CS35L45_DSP1_TX6_RATE , 0x00000001 },
81+ { CS35L45_DSP1_TX7_RATE , 0x00000001 },
82+ { CS35L45_DSP1_TX8_RATE , 0x00000001 },
83+ { CS35L45_DSP1RX1_INPUT , 0x00000008 },
84+ { CS35L45_DSP1RX2_INPUT , 0x00000009 },
85+ { CS35L45_DSP1RX3_INPUT , 0x00000018 },
86+ { CS35L45_DSP1RX4_INPUT , 0x00000019 },
87+ { CS35L45_DSP1RX5_INPUT , 0x00000020 },
88+ { CS35L45_DSP1RX6_INPUT , 0x00000028 },
89+ { CS35L45_DSP1RX7_INPUT , 0x0000003A },
90+ { CS35L45_DSP1RX8_INPUT , 0x00000028 },
6691 { CS35L45_AMP_PCM_CONTROL , 0x00100000 },
6792 { CS35L45_IRQ1_CFG , 0x00000000 },
6893 { CS35L45_IRQ1_MASK_1 , 0xBFEFFFBF },
@@ -100,6 +125,7 @@ static bool cs35l45_readable_reg(struct device *dev, unsigned int reg)
100125 case CS35L45_SYNC_GPIO1 :
101126 case CS35L45_INTB_GPIO2_MCLK_REF :
102127 case CS35L45_GPIO3 :
128+ case CS35L45_PWRMGT_CTL :
103129 case CS35L45_REFCLK_INPUT :
104130 case CS35L45_GLOBAL_SAMPLE_RATE :
105131 case CS35L45_ASP_ENABLES1 :
@@ -117,6 +143,14 @@ static bool cs35l45_readable_reg(struct device *dev, unsigned int reg)
117143 case CS35L45_ASPTX3_INPUT :
118144 case CS35L45_ASPTX4_INPUT :
119145 case CS35L45_ASPTX5_INPUT :
146+ case CS35L45_DSP1RX1_INPUT :
147+ case CS35L45_DSP1RX2_INPUT :
148+ case CS35L45_DSP1RX3_INPUT :
149+ case CS35L45_DSP1RX4_INPUT :
150+ case CS35L45_DSP1RX5_INPUT :
151+ case CS35L45_DSP1RX6_INPUT :
152+ case CS35L45_DSP1RX7_INPUT :
153+ case CS35L45_DSP1RX8_INPUT :
120154 case CS35L45_AMP_PCM_CONTROL :
121155 case CS35L45_AMP_PCM_HPF_TST :
122156 case CS35L45_IRQ1_CFG :
@@ -128,6 +162,40 @@ static bool cs35l45_readable_reg(struct device *dev, unsigned int reg)
128162 case CS35L45_GPIO1_CTRL1 :
129163 case CS35L45_GPIO2_CTRL1 :
130164 case CS35L45_GPIO3_CTRL1 :
165+ case CS35L45_DSP_MBOX_1 :
166+ case CS35L45_DSP_MBOX_2 :
167+ case CS35L45_DSP_VIRT1_MBOX_1 ... CS35L45_DSP_VIRT1_MBOX_4 :
168+ case CS35L45_DSP_VIRT2_MBOX_1 ... CS35L45_DSP_VIRT2_MBOX_4 :
169+ case CS35L45_DSP1_SYS_ID :
170+ case CS35L45_DSP1_CLOCK_FREQ :
171+ case CS35L45_DSP1_RX1_RATE :
172+ case CS35L45_DSP1_RX2_RATE :
173+ case CS35L45_DSP1_RX3_RATE :
174+ case CS35L45_DSP1_RX4_RATE :
175+ case CS35L45_DSP1_RX5_RATE :
176+ case CS35L45_DSP1_RX6_RATE :
177+ case CS35L45_DSP1_RX7_RATE :
178+ case CS35L45_DSP1_RX8_RATE :
179+ case CS35L45_DSP1_TX1_RATE :
180+ case CS35L45_DSP1_TX2_RATE :
181+ case CS35L45_DSP1_TX3_RATE :
182+ case CS35L45_DSP1_TX4_RATE :
183+ case CS35L45_DSP1_TX5_RATE :
184+ case CS35L45_DSP1_TX6_RATE :
185+ case CS35L45_DSP1_TX7_RATE :
186+ case CS35L45_DSP1_TX8_RATE :
187+ case CS35L45_DSP1_SCRATCH1 :
188+ case CS35L45_DSP1_SCRATCH2 :
189+ case CS35L45_DSP1_SCRATCH3 :
190+ case CS35L45_DSP1_SCRATCH4 :
191+ case CS35L45_DSP1_CCM_CORE_CONTROL :
192+ case CS35L45_DSP1_XMEM_PACK_0 ... CS35L45_DSP1_XMEM_PACK_4607 :
193+ case CS35L45_DSP1_XMEM_UNPACK32_0 ... CS35L45_DSP1_XMEM_UNPACK32_3071 :
194+ case CS35L45_DSP1_XMEM_UNPACK24_0 ... CS35L45_DSP1_XMEM_UNPACK24_6143 :
195+ case CS35L45_DSP1_YMEM_PACK_0 ... CS35L45_DSP1_YMEM_PACK_1532 :
196+ case CS35L45_DSP1_YMEM_UNPACK32_0 ... CS35L45_DSP1_YMEM_UNPACK32_1022 :
197+ case CS35L45_DSP1_YMEM_UNPACK24_0 ... CS35L45_DSP1_YMEM_UNPACK24_2043 :
198+ case CS35L45_DSP1_PMEM_0 ... CS35L45_DSP1_PMEM_3834 :
131199 return true;
132200 default :
133201 return false;
@@ -146,6 +214,24 @@ static bool cs35l45_volatile_reg(struct device *dev, unsigned int reg)
146214 case CS35L45_IRQ1_EINT_1 ... CS35L45_IRQ1_EINT_18 :
147215 case CS35L45_IRQ1_STS_1 ... CS35L45_IRQ1_STS_18 :
148216 case CS35L45_GPIO_STATUS1 :
217+ case CS35L45_DSP_MBOX_1 :
218+ case CS35L45_DSP_MBOX_2 :
219+ case CS35L45_DSP_VIRT1_MBOX_1 ... CS35L45_DSP_VIRT1_MBOX_4 :
220+ case CS35L45_DSP_VIRT2_MBOX_1 ... CS35L45_DSP_VIRT2_MBOX_4 :
221+ case CS35L45_DSP1_SYS_ID :
222+ case CS35L45_DSP1_CLOCK_FREQ :
223+ case CS35L45_DSP1_SCRATCH1 :
224+ case CS35L45_DSP1_SCRATCH2 :
225+ case CS35L45_DSP1_SCRATCH3 :
226+ case CS35L45_DSP1_SCRATCH4 :
227+ case CS35L45_DSP1_CCM_CORE_CONTROL :
228+ case CS35L45_DSP1_XMEM_PACK_0 ... CS35L45_DSP1_XMEM_PACK_4607 :
229+ case CS35L45_DSP1_XMEM_UNPACK32_0 ... CS35L45_DSP1_XMEM_UNPACK32_3071 :
230+ case CS35L45_DSP1_XMEM_UNPACK24_0 ... CS35L45_DSP1_XMEM_UNPACK24_6143 :
231+ case CS35L45_DSP1_YMEM_PACK_0 ... CS35L45_DSP1_YMEM_PACK_1532 :
232+ case CS35L45_DSP1_YMEM_UNPACK32_0 ... CS35L45_DSP1_YMEM_UNPACK32_1022 :
233+ case CS35L45_DSP1_YMEM_UNPACK24_0 ... CS35L45_DSP1_YMEM_UNPACK24_2043 :
234+ case CS35L45_DSP1_PMEM_0 ... CS35L45_DSP1_PMEM_3834 :
149235 return true;
150236 default :
151237 return false;
0 commit comments