#[doc = "Register `CLRINT` writer"]
pub type W = crate::W<ClrintSpec>;
#[doc = "Field `DET_SUSPD` writer - Suspend Interrupt Clear"]
pub type DetSuspdW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `MICRO_SOF` writer - Micro Start Of Frame Interrupt Clear"]
pub type MicroSofW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `INT_SOF` writer - Start Of Frame Interrupt Clear"]
pub type IntSofW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `ENDRESET` writer - End Of Reset Interrupt Clear"]
pub type EndresetW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `WAKE_UP` writer - Wake Up CPU Interrupt Clear"]
pub type WakeUpW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `ENDOFRSM` writer - End Of Resume Interrupt Clear"]
pub type EndofrsmW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `UPSTR_RES` writer - Upstream Resume Interrupt Clear"]
pub type UpstrResW<'a, REG> = crate::BitWriter<'a, REG>;
impl W {
#[doc = "Bit 1 - Suspend Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn det_suspd(&mut self) -> DetSuspdW<ClrintSpec> {
DetSuspdW::new(self, 1)
}
#[doc = "Bit 2 - Micro Start Of Frame Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn micro_sof(&mut self) -> MicroSofW<ClrintSpec> {
MicroSofW::new(self, 2)
}
#[doc = "Bit 3 - Start Of Frame Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn int_sof(&mut self) -> IntSofW<ClrintSpec> {
IntSofW::new(self, 3)
}
#[doc = "Bit 4 - End Of Reset Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn endreset(&mut self) -> EndresetW<ClrintSpec> {
EndresetW::new(self, 4)
}
#[doc = "Bit 5 - Wake Up CPU Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn wake_up(&mut self) -> WakeUpW<ClrintSpec> {
WakeUpW::new(self, 5)
}
#[doc = "Bit 6 - End Of Resume Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn endofrsm(&mut self) -> EndofrsmW<ClrintSpec> {
EndofrsmW::new(self, 6)
}
#[doc = "Bit 7 - Upstream Resume Interrupt Clear"]
#[inline(always)]
#[must_use]
pub fn upstr_res(&mut self) -> UpstrResW<ClrintSpec> {
UpstrResW::new(self, 7)
}
}
#[doc = "UDPHS Clear Interrupt Register\n\nYou can [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`clrint::W`](W). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct ClrintSpec;
impl crate::RegisterSpec for ClrintSpec {
type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [`clrint::W`](W) writer structure"]
impl crate::Writable for ClrintSpec {
type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
}