硬體平台:IMX6
核心版本:kernel3.0.35
在linux核心中有一個規律,Linux核心開發者把通用的東西都總結出來,個性化的東西就留出接口,和GPIO驅動類似,PWM驅動在核心中也提供了對應的接口函數,核心提供的接口函數聲明在include/linux/pwm.h中
//申請一個PWM資源
struct pwm_device *pwm_request(int pwm_id, const char *label);
//釋放一個PWM資源
void pwm_free(struct pwm_device *pwm);
//配置PWM
int pwm_config(struct pwm_device *pwm, int duty_ns, int period_ns);
//使能PWM
int pwm_enable(struct pwm_device *pwm);
//不使能PWM
void pwm_disable(struct pwm_device *pwm);