test prog implementation moved to real driver/board implementations

This commit is contained in:
Thomas Klaehn
2016-08-29 16:12:51 +02:00
parent 1407b35ce8
commit 13c416a2ba
8 changed files with 522 additions and 130 deletions

View File

@@ -14,22 +14,28 @@ typedef int (*pwm_fp_open_t)(const void*);
//! \brief Function pointer to the close function.
typedef int (*pwm_fp_close_t)(const void*);
//! \brief Function pointer to the read function.
typedef int (*pwm_fp_set_duty_cycle_t)(const void*, unsigned int duty_cycle_percent);
typedef int (*pwm_fp_get_period_ns_t)(const void*);
typedef int (*pwm_fp_get_pulse_width_ns_t)(const void*);
struct pwm_fp {
const pwm_fp_open_t open;
const pwm_fp_close_t close;
const pwm_fp_set_duty_cycle_t set_duty_cycle;
const pwm_fp_get_period_ns_t get_period;
const pwm_fp_get_pulse_width_ns_t get_pulse_width;
};
struct pwm {
const void *arch_dep_device; //!< Architecture depended pwm device (i.e. stm32f10x_pwm_t).
const struct pwm_fp *fp; //!< Function pointer for the pwm driver access.
const struct pwm_fp *fp; //!< Function pointer for the pwm driver access.
};
int pwm_open(const struct pwm *device);
int pwm_close(const struct pwm *device);
int pwm_set_duty_cycle(const struct pwm *device, unsigned int duty_cycle_percent);
int pwm_get_period_ns(const struct pwm *device);
int pwm_get_pulse_width_ns(const struct pwm *device);
#endif /* SOURCE_FIRMWARE_KERNEL_DRIVER_INCLUDE_PWM_H_ */