/linux-6.3-rc2/drivers/pwm/ |
A D | Makefile | 4 obj-$(CONFIG_PWM_AB8500) += pwm-ab8500.o 5 obj-$(CONFIG_PWM_ATMEL) += pwm-atmel.o 13 obj-$(CONFIG_PWM_CLK) += pwm-clk.o 15 obj-$(CONFIG_PWM_CRC) += pwm-crc.o 17 obj-$(CONFIG_PWM_DWC) += pwm-dwc.o 21 obj-$(CONFIG_PWM_IMG) += pwm-img.o 22 obj-$(CONFIG_PWM_IMX1) += pwm-imx1.o 38 obj-$(CONFIG_PWM_MXS) += pwm-mxs.o 42 obj-$(CONFIG_PWM_PXA) += pwm-pxa.o 52 obj-$(CONFIG_PWM_STI) += pwm-sti.o [all …]
|
A D | core.c | 67 radix_tree_delete(&pwm_tree, pwm->pwm); in free_pwms() 110 err = pwm->chip->ops->request(pwm->chip, pwm); in pwm_device_request() 120 err = pwm->chip->ops->get_state(pwm->chip, pwm, &state); in pwm_device_request() 127 pwm->last = pwm->state; in pwm_device_request() 244 return pwm ? pwm->chip_data : NULL; in pwm_get_chip_data() 301 pwm->pwm = chip->base + i; in pwmchip_add() 304 radix_tree_insert(&pwm_tree, pwm->pwm, pwm); in pwmchip_add() 380 if (pwm < 0 || pwm >= MAX_PWMS) in pwm_request() 613 if (!pwm || !pwm->chip->ops) in pwm_capture() 620 err = pwm->chip->ops->capture(pwm->chip, pwm, result, timeout); in pwm_capture() [all …]
|
A D | pwm-twl.c | 32 #define TWL4030_PWM_TOGGLE(pwm, x) ((x) << (pwm)) argument 46 #define TWL6030_PWM_TOGGLE(pwm, x) ((x) << (pwm * 3)) argument 83 base = pwm->hwpwm * 3; in twl_pwm_config() 159 if (pwm->hwpwm == 1) { in twl4030_pwm_request() 197 if (pwm->hwpwm == 1) in twl4030_pwm_free() 291 if (pwm->state.enabled) in twl4030_pwm_apply() 297 err = twl_pwm_config(pwm->chip, pwm, state->duty_cycle, state->period); in twl4030_pwm_apply() 301 if (!pwm->state.enabled) in twl4030_pwm_apply() 316 if (pwm->state.enabled) in twl6030_pwm_apply() 322 err = twl_pwm_config(pwm->chip, pwm, state->duty_cycle, state->period); in twl6030_pwm_apply() [all …]
|
A D | sysfs.c | 19 struct pwm_device *pwm; member 33 return export->pwm; in child_to_pwm_device() 53 struct pwm_device *pwm = export->pwm; in period_store() local 88 struct pwm_device *pwm = export->pwm; in duty_cycle_store() local 123 struct pwm_device *pwm = export->pwm; in enable_store() local 182 struct pwm_device *pwm = export->pwm; in polarity_store() local 232 ATTRIBUTE_GROUPS(pwm); 256 export->pwm = pwm; in pwm_export_child() 305 pwm_put(pwm); in pwm_unexport_child() 327 if (IS_ERR(pwm)) in export_store() [all …]
|
A D | pwm-vt8500.c | 31 #define REG_CTRL(pwm) (((pwm) << 4) + 0x00) argument 32 #define REG_SCALAR(pwm) (((pwm) << 4) + 0x04) argument 33 #define REG_PERIOD(pwm) (((pwm) << 4) + 0x08) argument 34 #define REG_DUTY(pwm) (((pwm) << 4) + 0x0C) argument 160 struct pwm_device *pwm, in vt8500_pwm_set_polarity() argument 183 bool enabled = pwm->state.enabled; in vt8500_pwm_apply() 185 if (state->polarity != pwm->state.polarity) { in vt8500_pwm_apply() 191 vt8500_pwm_disable(chip, pwm); in vt8500_pwm_apply() 203 vt8500_pwm_disable(chip, pwm); in vt8500_pwm_apply() 215 err = vt8500_pwm_config(pwm->chip, pwm, state->duty_cycle, state->period); in vt8500_pwm_apply() [all …]
|
A D | pwm-lpss.c | 116 if (pwm_lpss_read(pwm) & PWM_SW_UPDATE) { in pwm_lpss_is_updating() 149 ctrl = pwm_lpss_read(pwm); in pwm_lpss_prepare() 155 pwm_lpss_write(pwm, ctrl); in pwm_lpss_prepare() 162 pwm_lpss_write(pwm, pwm_lpss_read(pwm) | PWM_ENABLE); in pwm_lpss_cond_enable() 166 struct pwm_device *pwm, in pwm_lpss_prepare_enable() argument 171 ret = pwm_lpss_is_updating(pwm); in pwm_lpss_prepare_enable() 177 ret = pwm_lpss_wait_for_update(pwm); in pwm_lpss_prepare_enable() 192 if (!pwm_is_enabled(pwm)) { in pwm_lpss_apply() 200 } else if (pwm_is_enabled(pwm)) { in pwm_lpss_apply() 201 pwm_lpss_write(pwm, pwm_lpss_read(pwm) & ~PWM_ENABLE); in pwm_lpss_apply() [all …]
|
A D | pwm-twl-led.c | 133 struct pwm_device *pwm) in twl4030_pwmled_disable() argument 165 if (pwm->state.enabled) in twl4030_pwmled_apply() 178 ret = twl4030_pwmled_config(pwm->chip, pwm, in twl4030_pwmled_apply() 183 if (!pwm->state.enabled) in twl4030_pwmled_apply() 222 pwm->label); in twl6030_pwmled_enable() 249 pwm->label); in twl6030_pwmled_disable() 273 if (pwm->state.enabled) in twl6030_pwmled_apply() 279 err = twl6030_pwmled_config(pwm->chip, pwm, in twl6030_pwmled_apply() 284 if (!pwm->state.enabled) in twl6030_pwmled_apply() 300 pwm->label); in twl6030_pwmled_request() [all …]
|
A D | pwm-stmpe.c | 48 pwm->hwpwm); in stmpe_24xx_pwm_enable() 57 pwm->hwpwm); in stmpe_24xx_pwm_enable() 74 pwm->hwpwm); in stmpe_24xx_pwm_disable() 83 pwm->hwpwm); in stmpe_24xx_pwm_disable() 117 pin = pwm->hwpwm; in stmpe_24xx_pwm_config() 128 pwm->hwpwm); in stmpe_24xx_pwm_config() 134 switch (pwm->hwpwm) { in stmpe_24xx_pwm_config() 251 if (pwm_is_enabled(pwm)) in stmpe_24xx_pwm_config() 271 if (pwm->state.enabled) in stmpe_24xx_pwm_apply() 277 err = stmpe_24xx_pwm_config(pwm->chip, pwm, state->duty_cycle, state->period); in stmpe_24xx_pwm_apply() [all …]
|
A D | pwm-jz4740.c | 57 if (!jz4740_pwm_can_use_chn(jz, pwm->hwpwm)) in jz4740_pwm_request() 60 snprintf(name, sizeof(name), "timer%u", pwm->hwpwm); in jz4740_pwm_request() 73 pwm_set_chip_data(pwm, clk); in jz4740_pwm_request() 80 struct clk *clk = pwm_get_chip_data(pwm); in jz4740_pwm_free() 94 regmap_write(jz->map, TCU_REG_TESR, BIT(pwm->hwpwm)); in jz4740_pwm_enable() 108 regmap_write(jz->map, TCU_REG_TDFRc(pwm->hwpwm), 0x0); in jz4740_pwm_disable() 118 regmap_write(jz->map, TCU_REG_TECR, BIT(pwm->hwpwm)); in jz4740_pwm_disable() 124 struct jz4740_pwm_chip *jz4740 = to_jz4740(pwm->chip); in jz4740_pwm_apply() 126 struct clk *clk = pwm_get_chip_data(pwm); in jz4740_pwm_apply() 167 jz4740_pwm_disable(chip, pwm); in jz4740_pwm_apply() [all …]
|
A D | pwm-samsung.c | 121 struct pwm_device *pwm) in __pwm_samsung_manual_update() argument 146 reg = readl(pwm->base + REG_TCFG1); in pwm_samsung_set_divisor() 236 pwm->hwpwm); in pwm_samsung_request() 244 pwm_set_chip_data(pwm, our_chan); in pwm_samsung_request() 251 kfree(pwm_get_chip_data(pwm)); in pwm_samsung_free() 306 struct pwm_device *pwm) in pwm_samsung_manual_update() argument 421 struct pwm_device *pwm, in pwm_samsung_set_polarity() argument 440 pwm_samsung_disable(chip, pwm); in pwm_samsung_apply() 451 pwm_samsung_disable(chip, pwm); in pwm_samsung_apply() 468 if (!pwm->state.enabled) in pwm_samsung_apply() [all …]
|
/linux-6.3-rc2/drivers/clocksource/ |
A D | samsung_pwm_timer.c | 223 samsung_timer_set_divisor(pwm.event_id, pwm.tdiv); in samsung_clockevent_resume() 269 samsung_timer_set_divisor(pwm.event_id, pwm.tdiv); in samsung_clockevent_init() 271 clock_rate = pclk / (pwm.tscaler_div * pwm.tdiv); in samsung_clockevent_init() 278 irq_number = pwm.irq[pwm.event_id]; in samsung_clockevent_init() 299 samsung_timer_set_divisor(pwm.source_id, pwm.tdiv); in samsung_clocksource_resume() 301 samsung_time_setup(pwm.source_id, pwm.tcnt_max); in samsung_clocksource_resume() 341 clock_rate = pclk / (pwm.tscaler_div * pwm.tdiv); in samsung_clocksource_init() 343 samsung_time_setup(pwm.source_id, pwm.tcnt_max); in samsung_clocksource_init() 347 pwm.source_reg = pwm.base + 0x40; in samsung_clocksource_init() 349 pwm.source_reg = pwm.base + pwm.source_id * 0x0c + 0x14; in samsung_clocksource_init() [all …]
|
/linux-6.3-rc2/include/linux/ |
A D | pwm.h | 83 unsigned int pwm; member 105 *state = pwm->state; in pwm_get_state() 112 pwm_get_state(pwm, &state); in pwm_is_enabled() 119 if (pwm) in pwm_set_period() 134 if (pwm) in pwm_set_duty_cycle() 159 *args = pwm->args; in pwm_get_args() 185 pwm_get_state(pwm, state); in pwm_init_state() 188 pwm_get_args(pwm, &args); in pwm_init_state() 330 if (!pwm) in pwm_config() 355 if (!pwm) in pwm_enable() [all …]
|
/linux-6.3-rc2/Documentation/devicetree/bindings/pwm/ |
A D | renesas,pwm-rcar.yaml | 4 $id: http://devicetree.org/schemas/pwm/renesas,pwm-rcar.yaml# 16 - renesas,pwm-r8a7742 # RZ/G1H 17 - renesas,pwm-r8a7743 # RZ/G1M 39 - const: renesas,pwm-rcar 45 '#pwm-cells': 67 - $ref: pwm.yaml# 75 - renesas,pwm-r8a7778 76 - renesas,pwm-r8a7779 88 pwm0: pwm@e6e30000 { 89 compatible = "renesas,pwm-r8a7743", "renesas,pwm-rcar"; [all …]
|
A D | imx-pwm.yaml | 4 $id: http://devicetree.org/schemas/pwm/imx-pwm.yaml# 13 - $ref: pwm.yaml# 16 "#pwm-cells": 27 - fsl,imx1-pwm 28 - fsl,imx27-pwm 31 - fsl,imx25-pwm 32 - fsl,imx31-pwm 33 - fsl,imx50-pwm 34 - fsl,imx51-pwm 77 pwm@53fb4000 { [all …]
|
A D | pwm-rockchip.yaml | 4 $id: http://devicetree.org/schemas/pwm/pwm-rockchip.yaml# 15 - const: rockchip,rk2928-pwm 16 - const: rockchip,rk3288-pwm 17 - const: rockchip,rk3328-pwm 18 - const: rockchip,vop-pwm 31 - rockchip,px30-pwm 47 "#pwm-cells": 58 - $ref: pwm.yaml# 77 - const: pwm 100 pwm0: pwm@20030000 { [all …]
|
A D | allwinner,sun4i-a10-pwm.yaml | 4 $id: http://devicetree.org/schemas/pwm/allwinner,sun4i-a10-pwm.yaml# 14 "#pwm-cells": 19 - const: allwinner,sun4i-a10-pwm 21 - const: allwinner,sun5i-a13-pwm 22 - const: allwinner,sun7i-a20-pwm 23 - const: allwinner,sun8i-h3-pwm 59 - $ref: pwm.yaml# 95 pwm: pwm@1c20e00 { 99 #pwm-cells = <3>; 106 pwm@300a000 { [all …]
|
A D | nvidia,tegra20-pwm.yaml | 4 $id: http://devicetree.org/schemas/pwm/nvidia,tegra20-pwm.yaml# 17 - nvidia,tegra20-pwm 18 - nvidia,tegra186-pwm 22 - nvidia,tegra30-pwm 28 - nvidia,tegra20-pwm 50 - const: pwm 52 "#pwm-cells": 73 - $ref: pwm.yaml 88 pwm: pwm@7000a000 { 91 #pwm-cells = <2>; [all …]
|
A D | pwm.txt | 8 with a property containing a 'pwm-list': 10 pwm-list ::= <single-pwm> [pwm-list] 11 single-pwm ::= <pwm-phandle> <pwm-specifier> 13 pwm-specifier : array of #pwm-cells specifying the given PWM 29 pwm: pwm { 30 #pwm-cells = <2>; 36 pwms = <&pwm 0 5000000>; 37 pwm-names = "backlight"; 47 <dt-bindings/pwm/pwm.h>) in a third cell: 54 pwm-names = "backlight"; [all …]
|
A D | mediatek,pwm-disp.yaml | 4 $id: http://devicetree.org/schemas/pwm/mediatek,pwm-disp.yaml# 14 - $ref: pwm.yaml# 20 - mediatek,mt2701-disp-pwm 21 - mediatek,mt6595-disp-pwm 22 - mediatek,mt8173-disp-pwm 23 - mediatek,mt8183-disp-pwm 29 - mediatek,mt8186-disp-pwm 38 "#pwm-cells": 57 - "#pwm-cells" 69 pwm0: pwm@1401e000 { [all …]
|
A D | mediatek,mt2712-pwm.yaml | 4 $id: http://devicetree.org/schemas/pwm/mediatek,mt2712-pwm.yaml# 13 - $ref: pwm.yaml# 19 - mediatek,mt2712-pwm 20 - mediatek,mt6795-pwm 21 - mediatek,mt7622-pwm 22 - mediatek,mt7623-pwm 23 - mediatek,mt7628-pwm 36 "#pwm-cells": 66 - "#pwm-cells" 78 pwm0: pwm@11006000 { [all …]
|
A D | pwm-samsung.yaml | 4 $id: http://devicetree.org/schemas/pwm/pwm-samsung.yaml# 52 - const: pwm-tclk0 55 - const: pwm-tclk1 58 - const: pwm-tclk0 59 - const: pwm-tclk1 68 "#pwm-cells": 74 samsung,pwm-outputs: 94 - $ref: pwm.yaml# 101 - samsung,s3c2410-pwm 111 pwm@7f006000 { [all …]
|
A D | atmel,at91sam-pwm.yaml | 5 $id: http://devicetree.org/schemas/pwm/atmel,at91sam-pwm.yaml# 14 - $ref: "pwm.yaml#" 21 - atmel,at91sam9rl-pwm 22 - atmel,sama5d3-pwm 23 - atmel,sama5d2-pwm 24 - microchip,sam9x60-pwm 26 - const: microchip,sama7g5-pwm 27 - const: atmel,sama5d2-pwm 32 "#pwm-cells": 43 pwm0: pwm@f8034000 { [all …]
|
A D | pwm-meson.txt | 5 - compatible: Shall contain "amlogic,meson8b-pwm" 6 or "amlogic,meson-gxbb-pwm" 7 or "amlogic,meson-gxbb-ao-pwm" 8 or "amlogic,meson-axg-ee-pwm" 9 or "amlogic,meson-axg-ao-pwm" 10 or "amlogic,meson-g12a-ee-pwm" 11 or "amlogic,meson-g12a-ao-pwm-ab" 13 - #pwm-cells: Should be 3. See pwm.yaml in this directory for a description of 23 pwm_ab: pwm@8550 { 24 compatible = "amlogic,meson-gxbb-pwm"; [all …]
|
/linux-6.3-rc2/drivers/input/keyboard/ |
A D | lm8323.c | 355 if (pwm->desired_brightness != pwm->brightness) in pwm_done() 456 if (pwm->running || pwm->desired_brightness == pwm->brightness) in lm8323_pwm_work() 460 up = (pwm->desired_brightness > pwm->brightness); in lm8323_pwm_work() 461 steps = abs(pwm->desired_brightness - pwm->brightness); in lm8323_pwm_work() 491 pwm->brightness = pwm->desired_brightness; in lm8323_pwm_work() 562 pwm = &lm->pwm[id - 1]; in init_pwm() 564 pwm->id = id; in init_pwm() 623 int pwm; in lm8323_probe() local 691 for (pwm = 0; pwm < LM8323_NUM_PWMS; pwm++) { in lm8323_probe() 746 if (lm->pwm[pwm].enabled) in lm8323_probe() [all …]
|
/linux-6.3-rc2/include/trace/events/ |
A D | pwm.h | 3 #define TRACE_SYSTEM pwm 11 DECLARE_EVENT_CLASS(pwm, 13 TP_PROTO(struct pwm_device *pwm, const struct pwm_state *state, int err), 15 TP_ARGS(pwm, state, err), 18 __field(struct pwm_device *, pwm) 27 __entry->pwm = pwm; 36 __entry->pwm, __entry->period, __entry->duty_cycle, 41 DEFINE_EVENT(pwm, pwm_apply, 45 TP_ARGS(pwm, state, err) 48 DEFINE_EVENT(pwm, pwm_get, [all …]
|