Lines Matching refs:p_instance
81 static void configure_pins(nrfx_pwm_t const * p_instance, in configure_pins() argument
115 nrf_pwm_pins_set(p_instance->p_registers, out_pins); in configure_pins()
118 static void deconfigure_pins(nrfx_pwm_t const * p_instance) in deconfigure_pins() argument
122 uint32_t pin = nrf_pwm_pin_get(p_instance->p_registers, ch_idx); in deconfigure_pins()
130 nrfx_err_t nrfx_pwm_init(nrfx_pwm_t const * p_instance, in nrfx_pwm_init() argument
139 pwm_control_block_t * p_cb = &m_cb[p_instance->drv_inst_idx]; in nrfx_pwm_init()
153 configure_pins(p_instance, p_config); in nrfx_pwm_init()
155 nrf_pwm_enable(p_instance->p_registers); in nrfx_pwm_init()
156 nrf_pwm_configure(p_instance->p_registers, in nrfx_pwm_init()
158 nrf_pwm_decoder_set(p_instance->p_registers, in nrfx_pwm_init()
161 nrf_pwm_shorts_set(p_instance->p_registers, 0); in nrfx_pwm_init()
162 nrf_pwm_int_set(p_instance->p_registers, 0); in nrfx_pwm_init()
163 nrf_pwm_event_clear(p_instance->p_registers, NRF_PWM_EVENT_LOOPSDONE); in nrfx_pwm_init()
164 nrf_pwm_event_clear(p_instance->p_registers, NRF_PWM_EVENT_SEQEND0); in nrfx_pwm_init()
165 nrf_pwm_event_clear(p_instance->p_registers, NRF_PWM_EVENT_SEQEND1); in nrfx_pwm_init()
166 nrf_pwm_event_clear(p_instance->p_registers, NRF_PWM_EVENT_STOPPED); in nrfx_pwm_init()
180 NRFX_IRQ_PRIORITY_SET(nrfx_get_irq_number(p_instance->p_registers), in nrfx_pwm_init()
182 NRFX_IRQ_ENABLE(nrfx_get_irq_number(p_instance->p_registers)); in nrfx_pwm_init()
193 void nrfx_pwm_uninit(nrfx_pwm_t const * p_instance) in nrfx_pwm_uninit() argument
195 pwm_control_block_t * p_cb = &m_cb[p_instance->drv_inst_idx]; in nrfx_pwm_uninit()
198 NRFX_IRQ_DISABLE(nrfx_get_irq_number(p_instance->p_registers)); in nrfx_pwm_uninit()
203 nrf_pwm_disable(p_instance->p_registers); in nrfx_pwm_uninit()
205 deconfigure_pins(p_instance); in nrfx_pwm_uninit()
211 static uint32_t start_playback(nrfx_pwm_t const * p_instance, in start_playback() argument
250 nrf_pwm_int_set(p_instance->p_registers, int_mask); in start_playback()
255 nrf_pwm_int_set(p_instance->p_registers, in start_playback()
260 nrf_pwm_event_clear(p_instance->p_registers, NRF_PWM_EVENT_STOPPED); in start_playback()
265 nrf_pwm_task_address_get(p_instance->p_registers, starting_task); in start_playback()
272 nrf_egu_int_enable(DMA_ISSUE_EGU, nrf_egu_channel_int_get(p_instance->drv_inst_idx)); in start_playback()
274 nrf_egu_trigger_task_get(p_instance->drv_inst_idx)); in start_playback()
280 nrf_pwm_task_trigger(p_instance->p_registers, starting_task); in start_playback()
285 uint32_t nrfx_pwm_simple_playback(nrfx_pwm_t const * p_instance, in nrfx_pwm_simple_playback() argument
290 pwm_control_block_t * p_cb = &m_cb[p_instance->drv_inst_idx]; in nrfx_pwm_simple_playback()
297 nrf_pwm_sequence_set(p_instance->p_registers, 0, p_sequence); in nrfx_pwm_simple_playback()
298 nrf_pwm_sequence_set(p_instance->p_registers, 1, p_sequence); in nrfx_pwm_simple_playback()
300 nrf_pwm_loop_set(p_instance->p_registers, in nrfx_pwm_simple_playback()
317 nrf_pwm_shorts_set(p_instance->p_registers, shorts_mask); in nrfx_pwm_simple_playback()
325 return start_playback(p_instance, p_cb, flags, in nrfx_pwm_simple_playback()
330 uint32_t nrfx_pwm_complex_playback(nrfx_pwm_t const * p_instance, in nrfx_pwm_complex_playback() argument
336 pwm_control_block_t * p_cb = &m_cb[p_instance->drv_inst_idx]; in nrfx_pwm_complex_playback()
342 nrf_pwm_sequence_set(p_instance->p_registers, 0, p_sequence_0); in nrfx_pwm_complex_playback()
343 nrf_pwm_sequence_set(p_instance->p_registers, 1, p_sequence_1); in nrfx_pwm_complex_playback()
344 nrf_pwm_loop_set(p_instance->p_registers, playback_count); in nrfx_pwm_complex_playback()
359 nrf_pwm_shorts_set(p_instance->p_registers, shorts_mask); in nrfx_pwm_complex_playback()
373 return start_playback(p_instance, p_cb, flags, NRF_PWM_TASK_SEQSTART0); in nrfx_pwm_complex_playback()
377 bool nrfx_pwm_stop(nrfx_pwm_t const * p_instance, in nrfx_pwm_stop() argument
380 NRFX_ASSERT(m_cb[p_instance->drv_inst_idx].state != NRFX_DRV_STATE_UNINITIALIZED); in nrfx_pwm_stop()
387 nrf_pwm_shorts_set(p_instance->p_registers, 0); in nrfx_pwm_stop()
392 nrf_pwm_task_trigger(p_instance->p_registers, NRF_PWM_TASK_STOP); in nrfx_pwm_stop()
394 if (nrfx_pwm_is_stopped(p_instance)) in nrfx_pwm_stop()
401 if (nrfx_pwm_is_stopped(p_instance)) in nrfx_pwm_stop()
414 bool nrfx_pwm_is_stopped(nrfx_pwm_t const * p_instance) in nrfx_pwm_is_stopped() argument
416 pwm_control_block_t * p_cb = &m_cb[p_instance->drv_inst_idx]; in nrfx_pwm_is_stopped()
428 if (nrf_pwm_event_check(p_instance->p_registers, NRF_PWM_EVENT_STOPPED)) in nrfx_pwm_is_stopped()