struct_pwm_ops(9) PWM controller operations

SYNOPSIS


struct pwm_ops {
int (* request) (struct pwm_chip *chip, struct pwm_device *pwm);
void (* free) (struct pwm_chip *chip, struct pwm_device *pwm);
int (* config) (struct pwm_chip *chip, struct pwm_device *pwm,int duty_ns, int period_ns);
int (* set_polarity) (struct pwm_chip *chip, struct pwm_device *pwm,enum pwm_polarity polarity);
int (* enable) (struct pwm_chip *chip, struct pwm_device *pwm);
void (* disable) (struct pwm_chip *chip, struct pwm_device *pwm);
int (* apply) (struct pwm_chip *chip, struct pwm_device *pwm,struct pwm_state *state);
void (* get_state) (struct pwm_chip *chip, struct pwm_device *pwm,struct pwm_state *state);
#ifdef CONFIG_DEBUG_FS
void (* dbg_show) (struct pwm_chip *chip, struct seq_file *s);
#endif
struct module * owner;
};

MEMBERS

request

optional hook for requesting a PWM

free

optional hook for freeing a PWM

config

configure duty cycles and period length for this PWM

set_polarity

configure the polarity of this PWM

enable

enable PWM output toggling

disable

disable PWM output toggling

apply

atomically apply a new PWM config. The state argument should be adjusted with the real hardware config (if the approximate the period or duty_cycle value, state should reflect it)

get_state

get the current PWM state. This function is only called once per PWM device when the PWM chip is registered.

dbg_show

optional routine to show contents in debugfs

owner

helps prevent removal of modules exporting active PWMs

COPYRIGHT