|  | 
| static void | check_slice_num_param (__unused uint slice_num) | 
|  | 
| static uint | pwm_gpio_to_slice_num (uint gpio) | 
|  | Determine the PWM slice that is attached to the specified GPIO.  More... 
 | 
|  | 
| static uint | pwm_gpio_to_channel (uint gpio) | 
|  | Determine the PWM channel that is attached to the specified GPIO.Each slice 0 to 7 has two channels, A and B.  More... 
 | 
|  | 
| static void | pwm_config_set_phase_correct (pwm_config *c, bool phase_correct) | 
|  | Set phase correction in a PWM configuration.  More... 
 | 
|  | 
| static void | pwm_config_set_clkdiv (pwm_config *c, float div) | 
|  | Set PWM clock divider in a PWM configuration.  More... 
 | 
|  | 
| static void | pwm_config_set_clkdiv_int_frac (pwm_config *c, uint8_t integer, uint8_t fract) | 
|  | Set PWM clock divider in a PWM configuration using an 8:4 fractional value.  More... 
 | 
|  | 
| static void | pwm_config_set_clkdiv_int (pwm_config *c, uint div) | 
|  | Set PWM clock divider in a PWM configuration.  More... 
 | 
|  | 
| static void | pwm_config_set_clkdiv_mode (pwm_config *c, enum pwm_clkdiv_mode mode) | 
|  | Set PWM counting mode in a PWM configuration.  More... 
 | 
|  | 
| static void | pwm_config_set_output_polarity (pwm_config *c, bool a, bool b) | 
|  | Set output polarity in a PWM configuration.  More... 
 | 
|  | 
| static void | pwm_config_set_wrap (pwm_config *c, uint16_t wrap) | 
|  | Set PWM counter wrap value in a PWM configurationSet the highest value the counter will reach before returning to 0. Also known as TOP.  More... 
 | 
|  | 
| static void | pwm_init (uint slice_num, pwm_config *c, bool start) | 
|  | Initialise a PWM with settings from a configuration objectUse the pwm_get_default_config() function to initialise a config structure, make changes as needed using the pwm_config_* functions, then call this function to set up the PWM.  More... 
 | 
|  | 
| static pwm_config | pwm_get_default_config (void) | 
|  | Get a set of default values for PWM configurationPWM config is free-running at system clock speed, no phase correction, wrapping at 0xffff, with standard polarities for channels A and B.  More... 
 | 
|  | 
| static void | pwm_set_wrap (uint slice_num, uint16_t wrap) | 
|  | Set the current PWM counter wrap valueSet the highest value the counter will reach before returning to 0. Also known as TOP.  More... 
 | 
|  | 
| static void | pwm_set_chan_level (uint slice_num, uint chan, uint16_t level) | 
|  | Set the current PWM counter compare value for one channelSet the value of the PWM counter compare value, for either channel A or channel B.  More... 
 | 
|  | 
| static void | pwm_set_both_levels (uint slice_num, uint16_t level_a, uint16_t level_b) | 
|  | Set PWM counter compare valuesSet the value of the PWM counter compare values, A and B.  More... 
 | 
|  | 
| static void | pwm_set_gpio_level (uint gpio, uint16_t level) | 
|  | Helper function to set the PWM level for the slice and channel associated with a GPIO.Look up the correct slice (0 to 7) and channel (A or B) for a given GPIO, and update the corresponding counter compare field.  More... 
 | 
|  | 
| static uint16_t | pwm_get_counter (uint slice_num) | 
|  | Get PWM counterGet current value of PWM counter.  More... 
 | 
|  | 
| static void | pwm_set_counter (uint slice_num, uint16_t c) | 
|  | Set PWM counterSet the value of the PWM counter.  More... 
 | 
|  | 
| static void | pwm_advance_count (uint slice_num) | 
|  | Advance PWM countAdvance the phase of a running the counter by 1 count.  More... 
 | 
|  | 
| static void | pwm_retard_count (uint slice_num) | 
|  | Retard PWM countRetard the phase of a running counter by 1 count.  More... 
 | 
|  | 
| static void | pwm_set_clkdiv_int_frac (uint slice_num, uint8_t integer, uint8_t fract) | 
|  | Set PWM clock divider using an 8:4 fractional valueSet the clock divider. Counter increment will be on sysclock divided by this value, taking into account the gating.  More... 
 | 
|  | 
| static void | pwm_set_clkdiv (uint slice_num, float divider) | 
|  | Set PWM clock dividerSet the clock divider. Counter increment will be on sysclock divided by this value, taking into account the gating.  More... 
 | 
|  | 
| static void | pwm_set_output_polarity (uint slice_num, bool a, bool b) | 
|  | Set PWM output polarity.  More... 
 | 
|  | 
| static void | pwm_set_clkdiv_mode (uint slice_num, enum pwm_clkdiv_mode mode) | 
|  | Set PWM divider mode.  More... 
 | 
|  | 
| static void | pwm_set_phase_correct (uint slice_num, bool phase_correct) | 
|  | Set PWM phase correct on/off.  More... 
 | 
|  | 
| static void | pwm_set_enabled (uint slice_num, bool enabled) | 
|  | Enable/Disable PWMWhen a PWM is disabled, it halts its counter, and the output pins are left high or low depending on exactly when the counter is halted. When re-enabled the PWM resumes immediately from where it left off.  More... 
 | 
|  | 
| static void | pwm_set_mask_enabled (uint32_t mask) | 
|  | Enable/Disable multiple PWM slices simultaneously.  More... 
 | 
|  | 
| static void | pwm_set_irq_enabled (uint slice_num, bool enabled) | 
|  | Enable PWM instance interruptUsed to enable a single PWM instance interrupt.  More... 
 | 
|  | 
| static void | pwm_set_irq_mask_enabled (uint32_t slice_mask, bool enabled) | 
|  | Enable multiple PWM instance interruptsUse this to enable multiple PWM interrupts at once.  More... 
 | 
|  | 
| static void | pwm_clear_irq (uint slice_num) | 
|  | Clear a single PWM channel interrupt.  More... 
 | 
|  | 
| static uint32_t | pwm_get_irq_status_mask (void) | 
|  | Get PWM interrupt status, raw.  More... 
 | 
|  | 
| static void | pwm_force_irq (uint slice_num) | 
|  | Force PWM interrupt.  More... 
 | 
|  | 
| static uint | pwm_get_dreq (uint slice_num) | 
|  | Return the DREQ to use for pacing transfers to a particular PWM slice.  More... 
 | 
|  |