1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
#[doc = "Register `GCSC` writer"]
pub type W = crate::W<GcscSpec>;
#[doc = "Field `S0SC` writer - Slice 0 shadow transfer clear"]
pub type S0scW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S0DSC` writer - Slice 0 Dither shadow transfer clear"]
pub type S0dscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S0PSC` writer - Slice 0 Prescaler shadow transfer clear"]
pub type S0pscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S1SC` writer - Slice 1 shadow transfer clear"]
pub type S1scW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S1DSC` writer - Slice 1 Dither shadow transfer clear"]
pub type S1dscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S1PSC` writer - Slice 1 Prescaler shadow transfer clear"]
pub type S1pscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S2SC` writer - Slice 2 shadow transfer clear"]
pub type S2scW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S2DSC` writer - Slice 2 Dither shadow transfer clear"]
pub type S2dscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S2PSC` writer - Slice 2 Prescaler shadow transfer clear"]
pub type S2pscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S3SC` writer - Slice 3 shadow transfer clear"]
pub type S3scW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S3DSC` writer - Slice 3 Dither shadow transfer clear"]
pub type S3dscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S3PSC` writer - Slice 3 Prescaler shadow transfer clear"]
pub type S3pscW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S0STC` writer - Slice 0 status bit clear"]
pub type S0stcW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S1STC` writer - Slice 1 status bit clear"]
pub type S1stcW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S2STC` writer - Slice 2 status bit clear"]
pub type S2stcW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `S3STC` writer - Slice 3 status bit clear"]
pub type S3stcW<'a, REG> = crate::BitWriter<'a, REG>;
impl W {
    #[doc = "Bit 0 - Slice 0 shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s0sc(&mut self) -> S0scW<GcscSpec> {
        S0scW::new(self, 0)
    }
    #[doc = "Bit 1 - Slice 0 Dither shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s0dsc(&mut self) -> S0dscW<GcscSpec> {
        S0dscW::new(self, 1)
    }
    #[doc = "Bit 2 - Slice 0 Prescaler shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s0psc(&mut self) -> S0pscW<GcscSpec> {
        S0pscW::new(self, 2)
    }
    #[doc = "Bit 4 - Slice 1 shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s1sc(&mut self) -> S1scW<GcscSpec> {
        S1scW::new(self, 4)
    }
    #[doc = "Bit 5 - Slice 1 Dither shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s1dsc(&mut self) -> S1dscW<GcscSpec> {
        S1dscW::new(self, 5)
    }
    #[doc = "Bit 6 - Slice 1 Prescaler shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s1psc(&mut self) -> S1pscW<GcscSpec> {
        S1pscW::new(self, 6)
    }
    #[doc = "Bit 8 - Slice 2 shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s2sc(&mut self) -> S2scW<GcscSpec> {
        S2scW::new(self, 8)
    }
    #[doc = "Bit 9 - Slice 2 Dither shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s2dsc(&mut self) -> S2dscW<GcscSpec> {
        S2dscW::new(self, 9)
    }
    #[doc = "Bit 10 - Slice 2 Prescaler shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s2psc(&mut self) -> S2pscW<GcscSpec> {
        S2pscW::new(self, 10)
    }
    #[doc = "Bit 12 - Slice 3 shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s3sc(&mut self) -> S3scW<GcscSpec> {
        S3scW::new(self, 12)
    }
    #[doc = "Bit 13 - Slice 3 Dither shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s3dsc(&mut self) -> S3dscW<GcscSpec> {
        S3dscW::new(self, 13)
    }
    #[doc = "Bit 14 - Slice 3 Prescaler shadow transfer clear"]
    #[inline(always)]
    #[must_use]
    pub fn s3psc(&mut self) -> S3pscW<GcscSpec> {
        S3pscW::new(self, 14)
    }
    #[doc = "Bit 16 - Slice 0 status bit clear"]
    #[inline(always)]
    #[must_use]
    pub fn s0stc(&mut self) -> S0stcW<GcscSpec> {
        S0stcW::new(self, 16)
    }
    #[doc = "Bit 17 - Slice 1 status bit clear"]
    #[inline(always)]
    #[must_use]
    pub fn s1stc(&mut self) -> S1stcW<GcscSpec> {
        S1stcW::new(self, 17)
    }
    #[doc = "Bit 18 - Slice 2 status bit clear"]
    #[inline(always)]
    #[must_use]
    pub fn s2stc(&mut self) -> S2stcW<GcscSpec> {
        S2stcW::new(self, 18)
    }
    #[doc = "Bit 19 - Slice 3 status bit clear"]
    #[inline(always)]
    #[must_use]
    pub fn s3stc(&mut self) -> S3stcW<GcscSpec> {
        S3stcW::new(self, 19)
    }
}
#[doc = "Global Channel Clear\n\nYou can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`gcsc::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct GcscSpec;
impl crate::RegisterSpec for GcscSpec {
    type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [`gcsc::W`](W) writer structure"]
impl crate::Writable for GcscSpec {
    type Safety = crate::Unsafe;
    const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
    const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
}
#[doc = "`reset()` method sets GCSC to value 0"]
impl crate::Resettable for GcscSpec {
    const RESET_VALUE: u32 = 0;
}