esp32p4/i2s0/
rx_tdm_ctrl.rs

1#[doc = "Register `RX_TDM_CTRL` reader"]
2pub type R = crate::R<RX_TDM_CTRL_SPEC>;
3#[doc = "Register `RX_TDM_CTRL` writer"]
4pub type W = crate::W<RX_TDM_CTRL_SPEC>;
5#[doc = "Field `RX_TDM_PDM_CHAN0_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 0. 0: Disable, just input 0 in this channel."]
6pub type RX_TDM_PDM_CHAN0_EN_R = crate::BitReader;
7#[doc = "Field `RX_TDM_PDM_CHAN0_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 0. 0: Disable, just input 0 in this channel."]
8pub type RX_TDM_PDM_CHAN0_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
9#[doc = "Field `RX_TDM_PDM_CHAN1_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 1. 0: Disable, just input 0 in this channel."]
10pub type RX_TDM_PDM_CHAN1_EN_R = crate::BitReader;
11#[doc = "Field `RX_TDM_PDM_CHAN1_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 1. 0: Disable, just input 0 in this channel."]
12pub type RX_TDM_PDM_CHAN1_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
13#[doc = "Field `RX_TDM_PDM_CHAN2_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 2. 0: Disable, just input 0 in this channel."]
14pub type RX_TDM_PDM_CHAN2_EN_R = crate::BitReader;
15#[doc = "Field `RX_TDM_PDM_CHAN2_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 2. 0: Disable, just input 0 in this channel."]
16pub type RX_TDM_PDM_CHAN2_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `RX_TDM_PDM_CHAN3_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 3. 0: Disable, just input 0 in this channel."]
18pub type RX_TDM_PDM_CHAN3_EN_R = crate::BitReader;
19#[doc = "Field `RX_TDM_PDM_CHAN3_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 3. 0: Disable, just input 0 in this channel."]
20pub type RX_TDM_PDM_CHAN3_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
21#[doc = "Field `RX_TDM_PDM_CHAN4_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 4. 0: Disable, just input 0 in this channel."]
22pub type RX_TDM_PDM_CHAN4_EN_R = crate::BitReader;
23#[doc = "Field `RX_TDM_PDM_CHAN4_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 4. 0: Disable, just input 0 in this channel."]
24pub type RX_TDM_PDM_CHAN4_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
25#[doc = "Field `RX_TDM_PDM_CHAN5_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 5. 0: Disable, just input 0 in this channel."]
26pub type RX_TDM_PDM_CHAN5_EN_R = crate::BitReader;
27#[doc = "Field `RX_TDM_PDM_CHAN5_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 5. 0: Disable, just input 0 in this channel."]
28pub type RX_TDM_PDM_CHAN5_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
29#[doc = "Field `RX_TDM_PDM_CHAN6_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 6. 0: Disable, just input 0 in this channel."]
30pub type RX_TDM_PDM_CHAN6_EN_R = crate::BitReader;
31#[doc = "Field `RX_TDM_PDM_CHAN6_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 6. 0: Disable, just input 0 in this channel."]
32pub type RX_TDM_PDM_CHAN6_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
33#[doc = "Field `RX_TDM_PDM_CHAN7_EN` reader - 1: Enable the valid data input of I2S RX TDM or PDM channel 7. 0: Disable, just input 0 in this channel."]
34pub type RX_TDM_PDM_CHAN7_EN_R = crate::BitReader;
35#[doc = "Field `RX_TDM_PDM_CHAN7_EN` writer - 1: Enable the valid data input of I2S RX TDM or PDM channel 7. 0: Disable, just input 0 in this channel."]
36pub type RX_TDM_PDM_CHAN7_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
37#[doc = "Field `RX_TDM_CHAN8_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 8. 0: Disable, just input 0 in this channel."]
38pub type RX_TDM_CHAN8_EN_R = crate::BitReader;
39#[doc = "Field `RX_TDM_CHAN8_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 8. 0: Disable, just input 0 in this channel."]
40pub type RX_TDM_CHAN8_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
41#[doc = "Field `RX_TDM_CHAN9_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 9. 0: Disable, just input 0 in this channel."]
42pub type RX_TDM_CHAN9_EN_R = crate::BitReader;
43#[doc = "Field `RX_TDM_CHAN9_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 9. 0: Disable, just input 0 in this channel."]
44pub type RX_TDM_CHAN9_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
45#[doc = "Field `RX_TDM_CHAN10_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 10. 0: Disable, just input 0 in this channel."]
46pub type RX_TDM_CHAN10_EN_R = crate::BitReader;
47#[doc = "Field `RX_TDM_CHAN10_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 10. 0: Disable, just input 0 in this channel."]
48pub type RX_TDM_CHAN10_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
49#[doc = "Field `RX_TDM_CHAN11_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 11. 0: Disable, just input 0 in this channel."]
50pub type RX_TDM_CHAN11_EN_R = crate::BitReader;
51#[doc = "Field `RX_TDM_CHAN11_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 11. 0: Disable, just input 0 in this channel."]
52pub type RX_TDM_CHAN11_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
53#[doc = "Field `RX_TDM_CHAN12_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 12. 0: Disable, just input 0 in this channel."]
54pub type RX_TDM_CHAN12_EN_R = crate::BitReader;
55#[doc = "Field `RX_TDM_CHAN12_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 12. 0: Disable, just input 0 in this channel."]
56pub type RX_TDM_CHAN12_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
57#[doc = "Field `RX_TDM_CHAN13_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 13. 0: Disable, just input 0 in this channel."]
58pub type RX_TDM_CHAN13_EN_R = crate::BitReader;
59#[doc = "Field `RX_TDM_CHAN13_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 13. 0: Disable, just input 0 in this channel."]
60pub type RX_TDM_CHAN13_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
61#[doc = "Field `RX_TDM_CHAN14_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 14. 0: Disable, just input 0 in this channel."]
62pub type RX_TDM_CHAN14_EN_R = crate::BitReader;
63#[doc = "Field `RX_TDM_CHAN14_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 14. 0: Disable, just input 0 in this channel."]
64pub type RX_TDM_CHAN14_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
65#[doc = "Field `RX_TDM_CHAN15_EN` reader - 1: Enable the valid data input of I2S RX TDM channel 15. 0: Disable, just input 0 in this channel."]
66pub type RX_TDM_CHAN15_EN_R = crate::BitReader;
67#[doc = "Field `RX_TDM_CHAN15_EN` writer - 1: Enable the valid data input of I2S RX TDM channel 15. 0: Disable, just input 0 in this channel."]
68pub type RX_TDM_CHAN15_EN_W<'a, REG> = crate::BitWriter<'a, REG>;
69#[doc = "Field `RX_TDM_TOT_CHAN_NUM` reader - The total channel number of I2S TX TDM mode."]
70pub type RX_TDM_TOT_CHAN_NUM_R = crate::FieldReader;
71#[doc = "Field `RX_TDM_TOT_CHAN_NUM` writer - The total channel number of I2S TX TDM mode."]
72pub type RX_TDM_TOT_CHAN_NUM_W<'a, REG> = crate::FieldWriter<'a, REG, 4>;
73impl R {
74    #[doc = "Bit 0 - 1: Enable the valid data input of I2S RX TDM or PDM channel 0. 0: Disable, just input 0 in this channel."]
75    #[inline(always)]
76    pub fn rx_tdm_pdm_chan0_en(&self) -> RX_TDM_PDM_CHAN0_EN_R {
77        RX_TDM_PDM_CHAN0_EN_R::new((self.bits & 1) != 0)
78    }
79    #[doc = "Bit 1 - 1: Enable the valid data input of I2S RX TDM or PDM channel 1. 0: Disable, just input 0 in this channel."]
80    #[inline(always)]
81    pub fn rx_tdm_pdm_chan1_en(&self) -> RX_TDM_PDM_CHAN1_EN_R {
82        RX_TDM_PDM_CHAN1_EN_R::new(((self.bits >> 1) & 1) != 0)
83    }
84    #[doc = "Bit 2 - 1: Enable the valid data input of I2S RX TDM or PDM channel 2. 0: Disable, just input 0 in this channel."]
85    #[inline(always)]
86    pub fn rx_tdm_pdm_chan2_en(&self) -> RX_TDM_PDM_CHAN2_EN_R {
87        RX_TDM_PDM_CHAN2_EN_R::new(((self.bits >> 2) & 1) != 0)
88    }
89    #[doc = "Bit 3 - 1: Enable the valid data input of I2S RX TDM or PDM channel 3. 0: Disable, just input 0 in this channel."]
90    #[inline(always)]
91    pub fn rx_tdm_pdm_chan3_en(&self) -> RX_TDM_PDM_CHAN3_EN_R {
92        RX_TDM_PDM_CHAN3_EN_R::new(((self.bits >> 3) & 1) != 0)
93    }
94    #[doc = "Bit 4 - 1: Enable the valid data input of I2S RX TDM or PDM channel 4. 0: Disable, just input 0 in this channel."]
95    #[inline(always)]
96    pub fn rx_tdm_pdm_chan4_en(&self) -> RX_TDM_PDM_CHAN4_EN_R {
97        RX_TDM_PDM_CHAN4_EN_R::new(((self.bits >> 4) & 1) != 0)
98    }
99    #[doc = "Bit 5 - 1: Enable the valid data input of I2S RX TDM or PDM channel 5. 0: Disable, just input 0 in this channel."]
100    #[inline(always)]
101    pub fn rx_tdm_pdm_chan5_en(&self) -> RX_TDM_PDM_CHAN5_EN_R {
102        RX_TDM_PDM_CHAN5_EN_R::new(((self.bits >> 5) & 1) != 0)
103    }
104    #[doc = "Bit 6 - 1: Enable the valid data input of I2S RX TDM or PDM channel 6. 0: Disable, just input 0 in this channel."]
105    #[inline(always)]
106    pub fn rx_tdm_pdm_chan6_en(&self) -> RX_TDM_PDM_CHAN6_EN_R {
107        RX_TDM_PDM_CHAN6_EN_R::new(((self.bits >> 6) & 1) != 0)
108    }
109    #[doc = "Bit 7 - 1: Enable the valid data input of I2S RX TDM or PDM channel 7. 0: Disable, just input 0 in this channel."]
110    #[inline(always)]
111    pub fn rx_tdm_pdm_chan7_en(&self) -> RX_TDM_PDM_CHAN7_EN_R {
112        RX_TDM_PDM_CHAN7_EN_R::new(((self.bits >> 7) & 1) != 0)
113    }
114    #[doc = "Bit 8 - 1: Enable the valid data input of I2S RX TDM channel 8. 0: Disable, just input 0 in this channel."]
115    #[inline(always)]
116    pub fn rx_tdm_chan8_en(&self) -> RX_TDM_CHAN8_EN_R {
117        RX_TDM_CHAN8_EN_R::new(((self.bits >> 8) & 1) != 0)
118    }
119    #[doc = "Bit 9 - 1: Enable the valid data input of I2S RX TDM channel 9. 0: Disable, just input 0 in this channel."]
120    #[inline(always)]
121    pub fn rx_tdm_chan9_en(&self) -> RX_TDM_CHAN9_EN_R {
122        RX_TDM_CHAN9_EN_R::new(((self.bits >> 9) & 1) != 0)
123    }
124    #[doc = "Bit 10 - 1: Enable the valid data input of I2S RX TDM channel 10. 0: Disable, just input 0 in this channel."]
125    #[inline(always)]
126    pub fn rx_tdm_chan10_en(&self) -> RX_TDM_CHAN10_EN_R {
127        RX_TDM_CHAN10_EN_R::new(((self.bits >> 10) & 1) != 0)
128    }
129    #[doc = "Bit 11 - 1: Enable the valid data input of I2S RX TDM channel 11. 0: Disable, just input 0 in this channel."]
130    #[inline(always)]
131    pub fn rx_tdm_chan11_en(&self) -> RX_TDM_CHAN11_EN_R {
132        RX_TDM_CHAN11_EN_R::new(((self.bits >> 11) & 1) != 0)
133    }
134    #[doc = "Bit 12 - 1: Enable the valid data input of I2S RX TDM channel 12. 0: Disable, just input 0 in this channel."]
135    #[inline(always)]
136    pub fn rx_tdm_chan12_en(&self) -> RX_TDM_CHAN12_EN_R {
137        RX_TDM_CHAN12_EN_R::new(((self.bits >> 12) & 1) != 0)
138    }
139    #[doc = "Bit 13 - 1: Enable the valid data input of I2S RX TDM channel 13. 0: Disable, just input 0 in this channel."]
140    #[inline(always)]
141    pub fn rx_tdm_chan13_en(&self) -> RX_TDM_CHAN13_EN_R {
142        RX_TDM_CHAN13_EN_R::new(((self.bits >> 13) & 1) != 0)
143    }
144    #[doc = "Bit 14 - 1: Enable the valid data input of I2S RX TDM channel 14. 0: Disable, just input 0 in this channel."]
145    #[inline(always)]
146    pub fn rx_tdm_chan14_en(&self) -> RX_TDM_CHAN14_EN_R {
147        RX_TDM_CHAN14_EN_R::new(((self.bits >> 14) & 1) != 0)
148    }
149    #[doc = "Bit 15 - 1: Enable the valid data input of I2S RX TDM channel 15. 0: Disable, just input 0 in this channel."]
150    #[inline(always)]
151    pub fn rx_tdm_chan15_en(&self) -> RX_TDM_CHAN15_EN_R {
152        RX_TDM_CHAN15_EN_R::new(((self.bits >> 15) & 1) != 0)
153    }
154    #[doc = "Bits 16:19 - The total channel number of I2S TX TDM mode."]
155    #[inline(always)]
156    pub fn rx_tdm_tot_chan_num(&self) -> RX_TDM_TOT_CHAN_NUM_R {
157        RX_TDM_TOT_CHAN_NUM_R::new(((self.bits >> 16) & 0x0f) as u8)
158    }
159}
160#[cfg(feature = "impl-register-debug")]
161impl core::fmt::Debug for R {
162    fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
163        f.debug_struct("RX_TDM_CTRL")
164            .field(
165                "rx_tdm_pdm_chan0_en",
166                &format_args!("{}", self.rx_tdm_pdm_chan0_en().bit()),
167            )
168            .field(
169                "rx_tdm_pdm_chan1_en",
170                &format_args!("{}", self.rx_tdm_pdm_chan1_en().bit()),
171            )
172            .field(
173                "rx_tdm_pdm_chan2_en",
174                &format_args!("{}", self.rx_tdm_pdm_chan2_en().bit()),
175            )
176            .field(
177                "rx_tdm_pdm_chan3_en",
178                &format_args!("{}", self.rx_tdm_pdm_chan3_en().bit()),
179            )
180            .field(
181                "rx_tdm_pdm_chan4_en",
182                &format_args!("{}", self.rx_tdm_pdm_chan4_en().bit()),
183            )
184            .field(
185                "rx_tdm_pdm_chan5_en",
186                &format_args!("{}", self.rx_tdm_pdm_chan5_en().bit()),
187            )
188            .field(
189                "rx_tdm_pdm_chan6_en",
190                &format_args!("{}", self.rx_tdm_pdm_chan6_en().bit()),
191            )
192            .field(
193                "rx_tdm_pdm_chan7_en",
194                &format_args!("{}", self.rx_tdm_pdm_chan7_en().bit()),
195            )
196            .field(
197                "rx_tdm_chan8_en",
198                &format_args!("{}", self.rx_tdm_chan8_en().bit()),
199            )
200            .field(
201                "rx_tdm_chan9_en",
202                &format_args!("{}", self.rx_tdm_chan9_en().bit()),
203            )
204            .field(
205                "rx_tdm_chan10_en",
206                &format_args!("{}", self.rx_tdm_chan10_en().bit()),
207            )
208            .field(
209                "rx_tdm_chan11_en",
210                &format_args!("{}", self.rx_tdm_chan11_en().bit()),
211            )
212            .field(
213                "rx_tdm_chan12_en",
214                &format_args!("{}", self.rx_tdm_chan12_en().bit()),
215            )
216            .field(
217                "rx_tdm_chan13_en",
218                &format_args!("{}", self.rx_tdm_chan13_en().bit()),
219            )
220            .field(
221                "rx_tdm_chan14_en",
222                &format_args!("{}", self.rx_tdm_chan14_en().bit()),
223            )
224            .field(
225                "rx_tdm_chan15_en",
226                &format_args!("{}", self.rx_tdm_chan15_en().bit()),
227            )
228            .field(
229                "rx_tdm_tot_chan_num",
230                &format_args!("{}", self.rx_tdm_tot_chan_num().bits()),
231            )
232            .finish()
233    }
234}
235#[cfg(feature = "impl-register-debug")]
236impl core::fmt::Debug for crate::generic::Reg<RX_TDM_CTRL_SPEC> {
237    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
238        core::fmt::Debug::fmt(&self.read(), f)
239    }
240}
241impl W {
242    #[doc = "Bit 0 - 1: Enable the valid data input of I2S RX TDM or PDM channel 0. 0: Disable, just input 0 in this channel."]
243    #[inline(always)]
244    #[must_use]
245    pub fn rx_tdm_pdm_chan0_en(&mut self) -> RX_TDM_PDM_CHAN0_EN_W<RX_TDM_CTRL_SPEC> {
246        RX_TDM_PDM_CHAN0_EN_W::new(self, 0)
247    }
248    #[doc = "Bit 1 - 1: Enable the valid data input of I2S RX TDM or PDM channel 1. 0: Disable, just input 0 in this channel."]
249    #[inline(always)]
250    #[must_use]
251    pub fn rx_tdm_pdm_chan1_en(&mut self) -> RX_TDM_PDM_CHAN1_EN_W<RX_TDM_CTRL_SPEC> {
252        RX_TDM_PDM_CHAN1_EN_W::new(self, 1)
253    }
254    #[doc = "Bit 2 - 1: Enable the valid data input of I2S RX TDM or PDM channel 2. 0: Disable, just input 0 in this channel."]
255    #[inline(always)]
256    #[must_use]
257    pub fn rx_tdm_pdm_chan2_en(&mut self) -> RX_TDM_PDM_CHAN2_EN_W<RX_TDM_CTRL_SPEC> {
258        RX_TDM_PDM_CHAN2_EN_W::new(self, 2)
259    }
260    #[doc = "Bit 3 - 1: Enable the valid data input of I2S RX TDM or PDM channel 3. 0: Disable, just input 0 in this channel."]
261    #[inline(always)]
262    #[must_use]
263    pub fn rx_tdm_pdm_chan3_en(&mut self) -> RX_TDM_PDM_CHAN3_EN_W<RX_TDM_CTRL_SPEC> {
264        RX_TDM_PDM_CHAN3_EN_W::new(self, 3)
265    }
266    #[doc = "Bit 4 - 1: Enable the valid data input of I2S RX TDM or PDM channel 4. 0: Disable, just input 0 in this channel."]
267    #[inline(always)]
268    #[must_use]
269    pub fn rx_tdm_pdm_chan4_en(&mut self) -> RX_TDM_PDM_CHAN4_EN_W<RX_TDM_CTRL_SPEC> {
270        RX_TDM_PDM_CHAN4_EN_W::new(self, 4)
271    }
272    #[doc = "Bit 5 - 1: Enable the valid data input of I2S RX TDM or PDM channel 5. 0: Disable, just input 0 in this channel."]
273    #[inline(always)]
274    #[must_use]
275    pub fn rx_tdm_pdm_chan5_en(&mut self) -> RX_TDM_PDM_CHAN5_EN_W<RX_TDM_CTRL_SPEC> {
276        RX_TDM_PDM_CHAN5_EN_W::new(self, 5)
277    }
278    #[doc = "Bit 6 - 1: Enable the valid data input of I2S RX TDM or PDM channel 6. 0: Disable, just input 0 in this channel."]
279    #[inline(always)]
280    #[must_use]
281    pub fn rx_tdm_pdm_chan6_en(&mut self) -> RX_TDM_PDM_CHAN6_EN_W<RX_TDM_CTRL_SPEC> {
282        RX_TDM_PDM_CHAN6_EN_W::new(self, 6)
283    }
284    #[doc = "Bit 7 - 1: Enable the valid data input of I2S RX TDM or PDM channel 7. 0: Disable, just input 0 in this channel."]
285    #[inline(always)]
286    #[must_use]
287    pub fn rx_tdm_pdm_chan7_en(&mut self) -> RX_TDM_PDM_CHAN7_EN_W<RX_TDM_CTRL_SPEC> {
288        RX_TDM_PDM_CHAN7_EN_W::new(self, 7)
289    }
290    #[doc = "Bit 8 - 1: Enable the valid data input of I2S RX TDM channel 8. 0: Disable, just input 0 in this channel."]
291    #[inline(always)]
292    #[must_use]
293    pub fn rx_tdm_chan8_en(&mut self) -> RX_TDM_CHAN8_EN_W<RX_TDM_CTRL_SPEC> {
294        RX_TDM_CHAN8_EN_W::new(self, 8)
295    }
296    #[doc = "Bit 9 - 1: Enable the valid data input of I2S RX TDM channel 9. 0: Disable, just input 0 in this channel."]
297    #[inline(always)]
298    #[must_use]
299    pub fn rx_tdm_chan9_en(&mut self) -> RX_TDM_CHAN9_EN_W<RX_TDM_CTRL_SPEC> {
300        RX_TDM_CHAN9_EN_W::new(self, 9)
301    }
302    #[doc = "Bit 10 - 1: Enable the valid data input of I2S RX TDM channel 10. 0: Disable, just input 0 in this channel."]
303    #[inline(always)]
304    #[must_use]
305    pub fn rx_tdm_chan10_en(&mut self) -> RX_TDM_CHAN10_EN_W<RX_TDM_CTRL_SPEC> {
306        RX_TDM_CHAN10_EN_W::new(self, 10)
307    }
308    #[doc = "Bit 11 - 1: Enable the valid data input of I2S RX TDM channel 11. 0: Disable, just input 0 in this channel."]
309    #[inline(always)]
310    #[must_use]
311    pub fn rx_tdm_chan11_en(&mut self) -> RX_TDM_CHAN11_EN_W<RX_TDM_CTRL_SPEC> {
312        RX_TDM_CHAN11_EN_W::new(self, 11)
313    }
314    #[doc = "Bit 12 - 1: Enable the valid data input of I2S RX TDM channel 12. 0: Disable, just input 0 in this channel."]
315    #[inline(always)]
316    #[must_use]
317    pub fn rx_tdm_chan12_en(&mut self) -> RX_TDM_CHAN12_EN_W<RX_TDM_CTRL_SPEC> {
318        RX_TDM_CHAN12_EN_W::new(self, 12)
319    }
320    #[doc = "Bit 13 - 1: Enable the valid data input of I2S RX TDM channel 13. 0: Disable, just input 0 in this channel."]
321    #[inline(always)]
322    #[must_use]
323    pub fn rx_tdm_chan13_en(&mut self) -> RX_TDM_CHAN13_EN_W<RX_TDM_CTRL_SPEC> {
324        RX_TDM_CHAN13_EN_W::new(self, 13)
325    }
326    #[doc = "Bit 14 - 1: Enable the valid data input of I2S RX TDM channel 14. 0: Disable, just input 0 in this channel."]
327    #[inline(always)]
328    #[must_use]
329    pub fn rx_tdm_chan14_en(&mut self) -> RX_TDM_CHAN14_EN_W<RX_TDM_CTRL_SPEC> {
330        RX_TDM_CHAN14_EN_W::new(self, 14)
331    }
332    #[doc = "Bit 15 - 1: Enable the valid data input of I2S RX TDM channel 15. 0: Disable, just input 0 in this channel."]
333    #[inline(always)]
334    #[must_use]
335    pub fn rx_tdm_chan15_en(&mut self) -> RX_TDM_CHAN15_EN_W<RX_TDM_CTRL_SPEC> {
336        RX_TDM_CHAN15_EN_W::new(self, 15)
337    }
338    #[doc = "Bits 16:19 - The total channel number of I2S TX TDM mode."]
339    #[inline(always)]
340    #[must_use]
341    pub fn rx_tdm_tot_chan_num(&mut self) -> RX_TDM_TOT_CHAN_NUM_W<RX_TDM_CTRL_SPEC> {
342        RX_TDM_TOT_CHAN_NUM_W::new(self, 16)
343    }
344}
345#[doc = "I2S TX TDM mode control register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`rx_tdm_ctrl::R`](R).  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`rx_tdm_ctrl::W`](W). You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
346pub struct RX_TDM_CTRL_SPEC;
347impl crate::RegisterSpec for RX_TDM_CTRL_SPEC {
348    type Ux = u32;
349}
350#[doc = "`read()` method returns [`rx_tdm_ctrl::R`](R) reader structure"]
351impl crate::Readable for RX_TDM_CTRL_SPEC {}
352#[doc = "`write(|w| ..)` method takes [`rx_tdm_ctrl::W`](W) writer structure"]
353impl crate::Writable for RX_TDM_CTRL_SPEC {
354    type Safety = crate::Unsafe;
355    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
356    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
357}
358#[doc = "`reset()` method sets RX_TDM_CTRL to value 0xffff"]
359impl crate::Resettable for RX_TDM_CTRL_SPEC {
360    const RESET_VALUE: u32 = 0xffff;
361}