Lines Matching refs:PWM

2 Pulse Width Modulation (PWM) interface
5 This provides an overview about the Linux PWM interface
9 the Linux PWM API (although they could). However, PWMs are often
12 this kind of flexibility the generic PWM API exists.
17 Users of the legacy PWM API use unique IDs to refer to PWM devices.
19 Instead of referring to a PWM device via its unique ID, board setup code
20 should instead register a static mapping that can be used to match PWM
38 Legacy users can request a PWM device using pwm_request() and free it
42 device or a consumer name. pwm_put() is used to free the PWM device. Managed
45 After being requested, a PWM has to be configured using::
49 This API controls both the PWM period/duty_cycle config and the
58 The PWM user API also allows one to query the PWM state with pwm_get_state().
60 In addition to the PWM state, the PWM API also exposes PWM arguments, which
61 are the reference PWM config one should use on this PWM.
62 PWM arguments are usually platform-specific and allows the PWM user to only
65 be used to set the initial PWM config (usually done in the probe function
66 of the PWM user). PWM arguments are retrieved with pwm_get_args().
68 All consumers should really be reconfiguring the PWM upon resume as
77 /sys/class/pwm/. Each probed PWM controller/chip will be exported as
78 pwmchipN, where N is the base of the PWM chip. Inside the directory you
82 The number of PWM channels this chip supports (read-only).
85 Exports a PWM channel for use with sysfs (write-only).
88 Unexports a PWM channel from sysfs (write-only).
90 The PWM channels are numbered using a per-chip index from 0 to npwm-1.
92 When a PWM channel is exported a pwmX directory will be created in the
97 The total period of the PWM signal (read/write).
99 time of the PWM.
102 The active time of the PWM signal (read/write).
106 Changes the polarity of the PWM signal (read/write).
107 Writes to this property only work if the PWM chip supports changing
108 the polarity. The polarity can only be changed if the PWM is not
112 Enable/disable the PWM signal (read/write).
117 Implementing a PWM driver
123 to have multiple PWM drivers in the system. For this reason it's mandatory
124 for new drivers to use the generic PWM framework.
126 A new PWM controller/chip can be added using pwmchip_add() and removed
128 pwm_chip as argument which provides a description of the PWM chip, the
129 number of PWM devices provided by the chip and the chip-specific
130 implementation of the supported PWM operations to the framework.
132 When implementing polarity support in a PWM driver, make sure to respect the
133 signal conventions in the PWM framework. By definition, normal polarity
141 atomicity in the PWM config workflow, which is required when the PWM controls
144 The implementation of ->get_state() (a method used to retrieve initial PWM
145 state) is also encouraged for the same reason: letting the PWM user know
146 about the current PWM state would allow him to avoid glitches.
154 The PWM core list manipulations are protected by a mutex, so pwm_request()
156 PWM core does not enforce any locking to pwm_enable(), pwm_disable() and
163 Currently a PWM can only be configured with period_ns and duty_ns. For several