da14585_pac/
chip_version.rs

1/*
2DISCLAIMER
3This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
4No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
5applicable laws, including copyright laws.
6THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
7OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8NON-INFRINGEMENT.  ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
9LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
10INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
11ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
12Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
13of this software. By using this software, you agree to the additional terms and conditions found by accessing the
14following link:
15http://www.renesas.com/disclaimer
16
17*/
18// Generated from SVD 1.2, with svd2pac 0.6.0 on Thu, 24 Jul 2025 04:44:41 +0000
19
20#![allow(clippy::identity_op)]
21#![allow(clippy::module_inception)]
22#![allow(clippy::derivable_impls)]
23#[allow(unused_imports)]
24use crate::common::sealed;
25#[allow(unused_imports)]
26use crate::common::*;
27#[doc = r"CHIP_VERSION registers"]
28unsafe impl ::core::marker::Send for super::ChipVersion {}
29unsafe impl ::core::marker::Sync for super::ChipVersion {}
30impl super::ChipVersion {
31    #[allow(unused)]
32    #[inline(always)]
33    pub(crate) const fn _svd2pac_as_ptr(&self) -> *mut u8 {
34        self.ptr
35    }
36
37    #[doc = "Chip configuration register 1."]
38    #[inline(always)]
39    pub const fn chip_config1_reg(
40        &self,
41    ) -> &'static crate::common::Reg<self::ChipConfig1Reg_SPEC, crate::common::RW> {
42        unsafe {
43            crate::common::Reg::<self::ChipConfig1Reg_SPEC, crate::common::RW>::from_ptr(
44                self._svd2pac_as_ptr().add(5usize),
45            )
46        }
47    }
48
49    #[doc = "Chip configuration register 2."]
50    #[inline(always)]
51    pub const fn chip_config2_reg(
52        &self,
53    ) -> &'static crate::common::Reg<self::ChipConfig2Reg_SPEC, crate::common::RW> {
54        unsafe {
55            crate::common::Reg::<self::ChipConfig2Reg_SPEC, crate::common::RW>::from_ptr(
56                self._svd2pac_as_ptr().add(6usize),
57            )
58        }
59    }
60
61    #[doc = "Chip configuration register 3."]
62    #[inline(always)]
63    pub const fn chip_config3_reg(
64        &self,
65    ) -> &'static crate::common::Reg<self::ChipConfig3Reg_SPEC, crate::common::RW> {
66        unsafe {
67            crate::common::Reg::<self::ChipConfig3Reg_SPEC, crate::common::RW>::from_ptr(
68                self._svd2pac_as_ptr().add(7usize),
69            )
70        }
71    }
72
73    #[doc = "Chip identification register 1."]
74    #[inline(always)]
75    pub const fn chip_id1_reg(
76        &self,
77    ) -> &'static crate::common::Reg<self::ChipId1Reg_SPEC, crate::common::RW> {
78        unsafe {
79            crate::common::Reg::<self::ChipId1Reg_SPEC, crate::common::RW>::from_ptr(
80                self._svd2pac_as_ptr().add(0usize),
81            )
82        }
83    }
84
85    #[doc = "Chip identification register 2."]
86    #[inline(always)]
87    pub const fn chip_id2_reg(
88        &self,
89    ) -> &'static crate::common::Reg<self::ChipId2Reg_SPEC, crate::common::RW> {
90        unsafe {
91            crate::common::Reg::<self::ChipId2Reg_SPEC, crate::common::RW>::from_ptr(
92                self._svd2pac_as_ptr().add(1usize),
93            )
94        }
95    }
96
97    #[doc = "Chip identification register 3."]
98    #[inline(always)]
99    pub const fn chip_id3_reg(
100        &self,
101    ) -> &'static crate::common::Reg<self::ChipId3Reg_SPEC, crate::common::RW> {
102        unsafe {
103            crate::common::Reg::<self::ChipId3Reg_SPEC, crate::common::RW>::from_ptr(
104                self._svd2pac_as_ptr().add(2usize),
105            )
106        }
107    }
108
109    #[doc = "Chip revision register."]
110    #[inline(always)]
111    pub const fn chip_revision_reg(
112        &self,
113    ) -> &'static crate::common::Reg<self::ChipRevisionReg_SPEC, crate::common::RW> {
114        unsafe {
115            crate::common::Reg::<self::ChipRevisionReg_SPEC, crate::common::RW>::from_ptr(
116                self._svd2pac_as_ptr().add(4usize),
117            )
118        }
119    }
120
121    #[doc = "Software compatibility register."]
122    #[inline(always)]
123    pub const fn chip_swc_reg(
124        &self,
125    ) -> &'static crate::common::Reg<self::ChipSwcReg_SPEC, crate::common::RW> {
126        unsafe {
127            crate::common::Reg::<self::ChipSwcReg_SPEC, crate::common::RW>::from_ptr(
128                self._svd2pac_as_ptr().add(3usize),
129            )
130        }
131    }
132
133    #[doc = "Chip test register 1."]
134    #[inline(always)]
135    pub const fn chip_test1_reg(
136        &self,
137    ) -> &'static crate::common::Reg<self::ChipTest1Reg_SPEC, crate::common::RW> {
138        unsafe {
139            crate::common::Reg::<self::ChipTest1Reg_SPEC, crate::common::RW>::from_ptr(
140                self._svd2pac_as_ptr().add(10usize),
141            )
142        }
143    }
144
145    #[doc = "Chip test register 2."]
146    #[inline(always)]
147    pub const fn chip_test2_reg(
148        &self,
149    ) -> &'static crate::common::Reg<self::ChipTest2Reg_SPEC, crate::common::RW> {
150        unsafe {
151            crate::common::Reg::<self::ChipTest2Reg_SPEC, crate::common::RW>::from_ptr(
152                self._svd2pac_as_ptr().add(11usize),
153            )
154        }
155    }
156}
157#[doc(hidden)]
158#[derive(Copy, Clone, Eq, PartialEq)]
159pub struct ChipConfig1Reg_SPEC;
160impl crate::sealed::RegSpec for ChipConfig1Reg_SPEC {
161    type DataType = u8;
162}
163
164#[doc = "Chip configuration register 1."]
165pub type ChipConfig1Reg = crate::RegValueT<ChipConfig1Reg_SPEC>;
166
167impl ChipConfig1Reg {
168    #[doc = "First character of Chip Configuration \'0M2\' in ASCII."]
169    #[inline(always)]
170    pub fn chip_config1(
171        self,
172    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipConfig1Reg_SPEC, crate::common::R>
173    {
174        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipConfig1Reg_SPEC,crate::common::R>::from_register(self,0)
175    }
176}
177impl ::core::default::Default for ChipConfig1Reg {
178    #[inline(always)]
179    fn default() -> ChipConfig1Reg {
180        <crate::RegValueT<ChipConfig1Reg_SPEC> as RegisterValue<_>>::new(48)
181    }
182}
183
184#[doc(hidden)]
185#[derive(Copy, Clone, Eq, PartialEq)]
186pub struct ChipConfig2Reg_SPEC;
187impl crate::sealed::RegSpec for ChipConfig2Reg_SPEC {
188    type DataType = u8;
189}
190
191#[doc = "Chip configuration register 2."]
192pub type ChipConfig2Reg = crate::RegValueT<ChipConfig2Reg_SPEC>;
193
194impl ChipConfig2Reg {
195    #[doc = "Second character of Chip Configuration \'0M2\' in ASCII."]
196    #[inline(always)]
197    pub fn chip_config2(
198        self,
199    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipConfig2Reg_SPEC, crate::common::R>
200    {
201        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipConfig2Reg_SPEC,crate::common::R>::from_register(self,0)
202    }
203}
204impl ::core::default::Default for ChipConfig2Reg {
205    #[inline(always)]
206    fn default() -> ChipConfig2Reg {
207        <crate::RegValueT<ChipConfig2Reg_SPEC> as RegisterValue<_>>::new(77)
208    }
209}
210
211#[doc(hidden)]
212#[derive(Copy, Clone, Eq, PartialEq)]
213pub struct ChipConfig3Reg_SPEC;
214impl crate::sealed::RegSpec for ChipConfig3Reg_SPEC {
215    type DataType = u8;
216}
217
218#[doc = "Chip configuration register 3."]
219pub type ChipConfig3Reg = crate::RegValueT<ChipConfig3Reg_SPEC>;
220
221impl ChipConfig3Reg {
222    #[doc = "Third character of Chip Configuration \'0M2\' in ASCII."]
223    #[inline(always)]
224    pub fn chip_config3(
225        self,
226    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipConfig3Reg_SPEC, crate::common::R>
227    {
228        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipConfig3Reg_SPEC,crate::common::R>::from_register(self,0)
229    }
230}
231impl ::core::default::Default for ChipConfig3Reg {
232    #[inline(always)]
233    fn default() -> ChipConfig3Reg {
234        <crate::RegValueT<ChipConfig3Reg_SPEC> as RegisterValue<_>>::new(50)
235    }
236}
237
238#[doc(hidden)]
239#[derive(Copy, Clone, Eq, PartialEq)]
240pub struct ChipId1Reg_SPEC;
241impl crate::sealed::RegSpec for ChipId1Reg_SPEC {
242    type DataType = u8;
243}
244
245#[doc = "Chip identification register 1."]
246pub type ChipId1Reg = crate::RegValueT<ChipId1Reg_SPEC>;
247
248impl ChipId1Reg {
249    #[doc = "First character of device type \'580\' in ASCII."]
250    #[inline(always)]
251    pub fn chip_id1(
252        self,
253    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipId1Reg_SPEC, crate::common::R>
254    {
255        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipId1Reg_SPEC,crate::common::R>::from_register(self,0)
256    }
257}
258impl ::core::default::Default for ChipId1Reg {
259    #[inline(always)]
260    fn default() -> ChipId1Reg {
261        <crate::RegValueT<ChipId1Reg_SPEC> as RegisterValue<_>>::new(53)
262    }
263}
264
265#[doc(hidden)]
266#[derive(Copy, Clone, Eq, PartialEq)]
267pub struct ChipId2Reg_SPEC;
268impl crate::sealed::RegSpec for ChipId2Reg_SPEC {
269    type DataType = u8;
270}
271
272#[doc = "Chip identification register 2."]
273pub type ChipId2Reg = crate::RegValueT<ChipId2Reg_SPEC>;
274
275impl ChipId2Reg {
276    #[doc = "Second character of device type \'580\' in ASCII."]
277    #[inline(always)]
278    pub fn chip_id2(
279        self,
280    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipId2Reg_SPEC, crate::common::R>
281    {
282        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipId2Reg_SPEC,crate::common::R>::from_register(self,0)
283    }
284}
285impl ::core::default::Default for ChipId2Reg {
286    #[inline(always)]
287    fn default() -> ChipId2Reg {
288        <crate::RegValueT<ChipId2Reg_SPEC> as RegisterValue<_>>::new(56)
289    }
290}
291
292#[doc(hidden)]
293#[derive(Copy, Clone, Eq, PartialEq)]
294pub struct ChipId3Reg_SPEC;
295impl crate::sealed::RegSpec for ChipId3Reg_SPEC {
296    type DataType = u8;
297}
298
299#[doc = "Chip identification register 3."]
300pub type ChipId3Reg = crate::RegValueT<ChipId3Reg_SPEC>;
301
302impl ChipId3Reg {
303    #[doc = "Third character of device type \'580\' in ASCII."]
304    #[inline(always)]
305    pub fn chip_id3(
306        self,
307    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipId3Reg_SPEC, crate::common::R>
308    {
309        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipId3Reg_SPEC,crate::common::R>::from_register(self,0)
310    }
311}
312impl ::core::default::Default for ChipId3Reg {
313    #[inline(always)]
314    fn default() -> ChipId3Reg {
315        <crate::RegValueT<ChipId3Reg_SPEC> as RegisterValue<_>>::new(48)
316    }
317}
318
319#[doc(hidden)]
320#[derive(Copy, Clone, Eq, PartialEq)]
321pub struct ChipRevisionReg_SPEC;
322impl crate::sealed::RegSpec for ChipRevisionReg_SPEC {
323    type DataType = u8;
324}
325
326#[doc = "Chip revision register."]
327pub type ChipRevisionReg = crate::RegValueT<ChipRevisionReg_SPEC>;
328
329impl ChipRevisionReg {
330    #[doc = "Chip version, corresponds with type number in ASCII.\n0x41 = \'A\', 0x42 = \'B\'"]
331    #[inline(always)]
332    pub fn revision_id(
333        self,
334    ) -> crate::common::RegisterField<0, 0xff, 1, 0, u8, u8, ChipRevisionReg_SPEC, crate::common::R>
335    {
336        crate::common::RegisterField::<0,0xff,1,0,u8,u8,ChipRevisionReg_SPEC,crate::common::R>::from_register(self,0)
337    }
338}
339impl ::core::default::Default for ChipRevisionReg {
340    #[inline(always)]
341    fn default() -> ChipRevisionReg {
342        <crate::RegValueT<ChipRevisionReg_SPEC> as RegisterValue<_>>::new(65)
343    }
344}
345
346#[doc(hidden)]
347#[derive(Copy, Clone, Eq, PartialEq)]
348pub struct ChipSwcReg_SPEC;
349impl crate::sealed::RegSpec for ChipSwcReg_SPEC {
350    type DataType = u8;
351}
352
353#[doc = "Software compatibility register."]
354pub type ChipSwcReg = crate::RegValueT<ChipSwcReg_SPEC>;
355
356impl ChipSwcReg {
357    #[doc = "SoftWare Compatibility code.\nInteger (default = 0) which is incremented if a silicon change has impact on the CPU Firmware.\nCan be used by software developers to write silicon revision dependent code."]
358    #[inline(always)]
359    pub fn chip_swc(
360        self,
361    ) -> crate::common::RegisterField<0, 0xf, 1, 0, u8, u8, ChipSwcReg_SPEC, crate::common::R> {
362        crate::common::RegisterField::<0,0xf,1,0,u8,u8,ChipSwcReg_SPEC,crate::common::R>::from_register(self,0)
363    }
364}
365impl ::core::default::Default for ChipSwcReg {
366    #[inline(always)]
367    fn default() -> ChipSwcReg {
368        <crate::RegValueT<ChipSwcReg_SPEC> as RegisterValue<_>>::new(0)
369    }
370}
371
372#[doc(hidden)]
373#[derive(Copy, Clone, Eq, PartialEq)]
374pub struct ChipTest1Reg_SPEC;
375impl crate::sealed::RegSpec for ChipTest1Reg_SPEC {
376    type DataType = u8;
377}
378
379#[doc = "Chip test register 1."]
380pub type ChipTest1Reg = crate::RegValueT<ChipTest1Reg_SPEC>;
381
382impl NoBitfieldReg<ChipTest1Reg_SPEC> for ChipTest1Reg {}
383impl ::core::default::Default for ChipTest1Reg {
384    #[inline(always)]
385    fn default() -> ChipTest1Reg {
386        <crate::RegValueT<ChipTest1Reg_SPEC> as RegisterValue<_>>::new(0)
387    }
388}
389
390#[doc(hidden)]
391#[derive(Copy, Clone, Eq, PartialEq)]
392pub struct ChipTest2Reg_SPEC;
393impl crate::sealed::RegSpec for ChipTest2Reg_SPEC {
394    type DataType = u8;
395}
396
397#[doc = "Chip test register 2."]
398pub type ChipTest2Reg = crate::RegValueT<ChipTest2Reg_SPEC>;
399
400impl NoBitfieldReg<ChipTest2Reg_SPEC> for ChipTest2Reg {}
401impl ::core::default::Default for ChipTest2Reg {
402    #[inline(always)]
403    fn default() -> ChipTest2Reg {
404        <crate::RegValueT<ChipTest2Reg_SPEC> as RegisterValue<_>>::new(32)
405    }
406}