Lines Matching full:regs
22 Tcc *regs; member
40 static void wait_synchronization(Tcc *regs) in wait_synchronization() argument
42 while (regs->SYNCBUSY.reg != 0) { in wait_synchronization()
64 Tcc *regs = cfg->regs; in pwm_sam0_set_cycles() local
68 bool inverted = ((regs->DRVCTRL.vec.INVEN & invert_mask) != 0); in pwm_sam0_set_cycles()
83 regs->CCBUF[channel].reg = TCC_CCBUF_CCBUF(pulse_cycles); in pwm_sam0_set_cycles()
84 regs->PERBUF.reg = TCC_PERBUF_PERBUF(period_cycles); in pwm_sam0_set_cycles()
87 regs->CCB[channel].reg = TCC_CCB_CCB(pulse_cycles); in pwm_sam0_set_cycles()
88 regs->PERB.reg = TCC_PERB_PERB(period_cycles); in pwm_sam0_set_cycles()
92 regs->CTRLA.bit.ENABLE = 0; in pwm_sam0_set_cycles()
93 wait_synchronization(regs); in pwm_sam0_set_cycles()
95 regs->DRVCTRL.vec.INVEN ^= invert_mask; in pwm_sam0_set_cycles()
96 regs->CTRLA.bit.ENABLE = 1; in pwm_sam0_set_cycles()
97 wait_synchronization(regs); in pwm_sam0_set_cycles()
106 Tcc *regs = cfg->regs; in pwm_sam0_init() local
125 regs->CTRLA.bit.SWRST = 1; in pwm_sam0_init()
126 wait_synchronization(regs); in pwm_sam0_init()
128 regs->CTRLA.reg = cfg->prescaler; in pwm_sam0_init()
129 regs->WAVE.reg = TCC_WAVE_WAVEGEN_NPWM; in pwm_sam0_init()
130 regs->PER.reg = TCC_PER_PER(1); in pwm_sam0_init()
132 regs->CTRLA.bit.ENABLE = 1; in pwm_sam0_init()
133 wait_synchronization(regs); in pwm_sam0_init()
157 .regs = (Tcc *)DT_INST_REG_ADDR(inst), \