Add a simple sysfs interface to the generic PWM framework.
/sys/class/pwm/
`-- pwmchipN/ for each PWM chip
|-- export (w/o) ask the kernel to export a PWM channel
|-- npwm (r/o) number of PWM channels in this PWM chip
|-- pwmX/ for each exported PWM channel
| |-- duty_cycle (r/w) duty cycle (in nanoseconds)
| |-- enable (r/w) enable/disable PWM
| |-- period (r/w) period (in nanoseconds)
| `-- polarity (r/w) polarity of PWM (normal/inversed)
`-- unexport (w/o) return a PWM channel to the kernel
Based on work by Lars Poeschel.
Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Lars Poeschel <poeschel@lemonage.de>
Cc: Ryan Mallon <rmallon@gmail.com>
Cc: Rob Landley <rob@landley.net>
Signed-off-by: Thierry Reding <thierry.reding@gmail.com>
79 lines
2.2 KiB
Text
79 lines
2.2 KiB
Text
What: /sys/class/pwm/
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
The pwm/ class sub-directory belongs to the Generic PWM
|
|
Framework and provides a sysfs interface for using PWM
|
|
channels.
|
|
|
|
What: /sys/class/pwm/pwmchipN/
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
A /sys/class/pwm/pwmchipN directory is created for each
|
|
probed PWM controller/chip where N is the base of the
|
|
PWM chip.
|
|
|
|
What: /sys/class/pwm/pwmchipN/npwm
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
The number of PWM channels supported by the PWM chip.
|
|
|
|
What: /sys/class/pwm/pwmchipN/export
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Exports a PWM channel from the PWM chip for sysfs control.
|
|
Value is between 0 and /sys/class/pwm/pwmchipN/npwm - 1.
|
|
|
|
What: /sys/class/pwm/pwmchipN/unexport
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Unexports a PWM channel.
|
|
|
|
What: /sys/class/pwm/pwmchipN/pwmX
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
A /sys/class/pwm/pwmchipN/pwmX directory is created for
|
|
each exported PWM channel where X is the exported PWM
|
|
channel number.
|
|
|
|
What: /sys/class/pwm/pwmchipN/pwmX/period
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Sets the PWM signal period in nanoseconds.
|
|
|
|
What: /sys/class/pwm/pwmchipN/pwmX/duty_cycle
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Sets the PWM signal duty cycle in nanoseconds.
|
|
|
|
What: /sys/class/pwm/pwmchipN/pwmX/polarity
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Sets the output polarity of the PWM signal to "normal" or
|
|
"inversed".
|
|
|
|
What: /sys/class/pwm/pwmchipN/pwmX/enable
|
|
Date: May 2013
|
|
KernelVersion: 3.11
|
|
Contact: H Hartley Sweeten <hsweeten@visionengravers.com>
|
|
Description:
|
|
Enable/disable the PWM signal.
|
|
0 is disabled
|
|
1 is enabled
|