linux: add support for Linux hardware PWM

The replicape servo pins (P9_14/P9_16) are muxed to the SOCs hardware
PWM unit driven by a 13MHz GP timer. They have to be driven by the
linux host mcu. This commits adds hardware PWM support using the linux
sysfs user space interface.

Signed-off-by: Janne Grunau <janne-3d@jannau.net>
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Janne Grunau
2019-03-24 10:25:56 +01:00
committed by Kevin O'Connor
parent e6c3eeafd7
commit aab89e7f85
6 changed files with 110 additions and 4 deletions

View File

@@ -28,4 +28,11 @@ void spi_prepare(struct spi_config config);
void spi_transfer(struct spi_config config, uint8_t receive_data
, uint8_t len, uint8_t *data);
struct gpio_pwm {
int fd;
uint32_t period;
};
struct gpio_pwm gpio_pwm_setup(uint8_t pin, uint32_t cycle_time, uint16_t val);
void gpio_pwm_write(struct gpio_pwm g, uint16_t val);
#endif // gpio.h