use bindings::types::*;
use bindings::common::*;
pub enum Struct__pwm { }
pub type mraa_pwm_context = *mut Struct__pwm;
#[link(name = "mraa")]
extern "C" {
pub fn mraa_pwm_init(pin: ::libc::c_int) -> mraa_pwm_context;
pub fn mraa_pwm_init_raw(chipid: ::libc::c_int, pin: ::libc::c_int)
-> mraa_pwm_context;
pub fn mraa_pwm_write(dev: mraa_pwm_context, percentage: ::libc::c_float)
-> mraa_result_t;
pub fn mraa_pwm_read(dev: mraa_pwm_context) -> ::libc::c_float;
pub fn mraa_pwm_period(dev: mraa_pwm_context, seconds: ::libc::c_float)
-> mraa_result_t;
pub fn mraa_pwm_period_ms(dev: mraa_pwm_context, ms: ::libc::c_int)
-> mraa_result_t;
pub fn mraa_pwm_period_us(dev: mraa_pwm_context, us: ::libc::c_int)
-> mraa_result_t;
pub fn mraa_pwm_pulsewidth(dev: mraa_pwm_context,
seconds: ::libc::c_float) -> mraa_result_t;
pub fn mraa_pwm_pulsewidth_ms(dev: mraa_pwm_context, ms: ::libc::c_int)
-> mraa_result_t;
pub fn mraa_pwm_pulsewidth_us(dev: mraa_pwm_context, us: ::libc::c_int)
-> mraa_result_t;
pub fn mraa_pwm_enable(dev: mraa_pwm_context, enable: ::libc::c_int)
-> mraa_result_t;
pub fn mraa_pwm_owner(dev: mraa_pwm_context, owner: mraa_boolean_t)
-> mraa_result_t;
pub fn mraa_pwm_close(dev: mraa_pwm_context) -> mraa_result_t;
pub fn mraa_pwm_config_ms(dev: mraa_pwm_context, period: ::libc::c_int,
duty: ::libc::c_float) -> mraa_result_t;
pub fn mraa_pwm_config_percent(dev: mraa_pwm_context,
period: ::libc::c_int,
duty: ::libc::c_float) -> mraa_result_t;
pub fn mraa_pwm_get_max_period() -> ::libc::c_int;
pub fn mraa_pwm_get_min_period() -> ::libc::c_int;
}