]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/pwm/sysfs.c
ATM-nicstar: Refactor a dev_alloc_skb() call in dequeue_rx()
[karo-tx-linux.git] / drivers / pwm / sysfs.c
index 01695d48dd543152624b9ed40a9c3afd9de45d0d..18ed725594c316ab71edafdafb5e1912714de7f1 100644 (file)
@@ -208,16 +208,33 @@ static ssize_t polarity_store(struct device *child,
        return ret ? : size;
 }
 
+static ssize_t capture_show(struct device *child,
+                           struct device_attribute *attr,
+                           char *buf)
+{
+       struct pwm_device *pwm = child_to_pwm_device(child);
+       struct pwm_capture result;
+       int ret;
+
+       ret = pwm_capture(pwm, &result, jiffies_to_msecs(HZ));
+       if (ret)
+               return ret;
+
+       return sprintf(buf, "%u %u\n", result.period, result.duty_cycle);
+}
+
 static DEVICE_ATTR_RW(period);
 static DEVICE_ATTR_RW(duty_cycle);
 static DEVICE_ATTR_RW(enable);
 static DEVICE_ATTR_RW(polarity);
+static DEVICE_ATTR_RO(capture);
 
 static struct attribute *pwm_attrs[] = {
        &dev_attr_period.attr,
        &dev_attr_duty_cycle.attr,
        &dev_attr_enable.attr,
        &dev_attr_polarity.attr,
+       &dev_attr_capture.attr,
        NULL
 };
 ATTRIBUTE_GROUPS(pwm);