/linux/Documentation/devicetree/bindings/pwm/ |
H A D | mxs-pwm.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pwm/mxs-pwm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale MXS PWM controller 10 - Shawn Guo <shawnguo@kernel.org> 13 - $ref: pwm.yaml# 18 - const: fsl,imx23-pwm 19 - items: 20 - enum: [all …]
|
H A D | pwm.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/pwm/pwm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: PWM controllers (providers) 10 - Thierry Reding <thierry.reding@gmail.com> 16 pattern: "^pwm(@.*|-([0-9]|[1-9][0-9]+))?$" 18 "#pwm-cells": 20 Number of cells in a PWM specifier. Typically the cells represent, in 21 order: the chip-relative PWM number, the PWM period in nanoseconds and [all …]
|
H A D | snps,dw-apb-timers-pwm2.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/pwm/snps,dw-apb-timers-pwm2.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Synopsys DW-APB timers PWM controller 11 - Ben Dooks <ben.dooks@sifive.com> 14 This describes the DesignWare APB timers module when used in the PWM 16 control the functionality, the number of PWMs available and other 20 instead of having to encode the IP version number in the device tree 24 - $ref: pwm.yaml# [all …]
|
H A D | pwm-st.txt | 1 STMicroelectronics PWM driver bindings 2 -------------------------------------- 5 - compatible : "st,pwm" 6 - #pwm-cells : Number of cells used to specify a PWM. First cell 7 specifies the per-chip index of the PWM to use and the 8 second cell is the period in nanoseconds - fixed to 2 10 - reg : Physical base address and length of the controller's 12 - pinctrl-names: Set to "default". 13 - pinctrl-0: List of phandles pointing to pin configuration nodes 14 for PWM module. [all …]
|
H A D | pwm.txt | 1 Specifying PWM information for devices 4 1) PWM user nodes 5 ----------------- 7 PWM users should specify a list of PWM devices that they want to use 8 with a property containing a 'pwm-list': 10 pwm-list ::= <single-pwm> [pwm-list] 11 single-pwm ::= <pwm-phandle> <pwm-specifier> 12 pwm-phandle : phandle to PWM controller node 13 pwm-specifier : array of #pwm-cells specifying the given PWM 16 PWM properties should be named "pwms". The exact meaning of each pwms [all …]
|
H A D | pwm-lp3943.txt | 1 TI/National Semiconductor LP3943 PWM controller 4 - compatible: "ti,lp3943-pwm" 5 - #pwm-cells: Should be 2. See pwm.yaml in this directory for a 9 - ti,pwm0 or ti,pwm1: Output pin number(s) for PWM channel 0 or 1. 17 PWM 0 is for RGB LED brightness control 18 PWM 1 is for brightness control of LP8557 backlight device 26 * PWM 0 : output 8, 9 and 10 27 * PWM 1 : output 15 29 pwm3943: pwm { 30 compatible = "ti,lp3943-pwm"; [all …]
|
H A D | pwm-gpio.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/pwm/pwm-gpio.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Generic software PWM for modulating GPIOs 10 - Stefan Wahren <wahrenst@gmx.net> 13 - $ref: pwm.yaml# 17 const: pwm-gpio 19 "#pwm-cells": 22 See pwm.yaml in this directory for a description of the cells format. [all …]
|
/linux/drivers/video/backlight/ |
H A D | pwm_bl.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Simple PWM based backlight control, board code has to setup 4 * 1) pin configuration so PWM waveforms can output 16 #include <linux/pwm.h> 22 struct pwm_device *pwm; member 43 if (pb->enabled) in pwm_backlight_power_on() 46 if (pb->power_supply) { in pwm_backlight_power_on() 47 err = regulator_enable(pb->power_supply); in pwm_backlight_power_on() 49 dev_err(pb->dev, "failed to enable power supply\n"); in pwm_backlight_power_on() 52 if (pb->post_pwm_on_delay) in pwm_backlight_power_on() [all …]
|
/linux/Documentation/driver-api/ |
H A D | pwm.rst | 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. 15 ---------------- 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 24 PWM_LOOKUP("tegra-pwm", 0, "pwm-backlight", NULL, 36 ---------- [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-pwm | 1 What: /sys/class/pwm/ 6 The pwm/ class sub-directory belongs to the Generic PWM 7 Framework and provides a sysfs interface for using PWM 10 What: /sys/class/pwm/pwmchip<N>/ 15 A /sys/class/pwm/pwmchipN directory is created for each 16 probed PWM controller/chip where N is the base of the 17 PWM chip. 19 What: /sys/class/pwm/pwmchip<N>/npwm 24 The number of PWM channels supported by the PWM chip. 26 What: /sys/class/pwm/pwmchip<N>/export [all …]
|
/linux/Documentation/devicetree/bindings/hwmon/ |
H A D | npcm750-pwm-fan.txt | 1 Nuvoton NPCM PWM and Fan Tacho controller device 3 The Nuvoton BMC NPCM7XX supports 8 Pulse-width modulation (PWM) 6 The Nuvoton BMC NPCM8XX supports 12 Pulse-width modulation (PWM) 9 Required properties for pwm-fan node 10 - #address-cells : should be 1. 11 - #size-cells : should be 0. 12 - compatible : "nuvoton,npcm750-pwm-fan" for Poleg NPCM7XX. 13 : "nuvoton,npcm845-pwm-fan" for Arbel NPCM8XX. 14 - reg : specifies physical base address and size of the registers. 15 - reg-names : must contain: [all …]
|
H A D | aspeed-pwm-tacho.txt | 1 ASPEED AST2400/AST2500 PWM and Fan Tacho controller device driver 3 The ASPEED PWM controller can support upto 8 PWM outputs. The ASPEED Fan Tacho 6 There can be upto 8 fans supported. Each fan can have one PWM output and 9 Required properties for pwm-tacho node: 10 - #address-cells : should be 1. 12 - #size-cells : should be 1. 14 - #cooling-cells: should be 2. 16 - reg : address and length of the register set for the device. 18 - pinctrl-names : a pinctrl state named "default" must be defined. 20 - pinctrl-0 : phandle referencing pin configuration of the PWM ports. [all …]
|
H A D | pwm-fan.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/hwmon/pwm-fan.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Fan connected to PWM lines 10 - Jean Delvare <jdelvare@suse.com> 11 - Guenter Roeck <linux@roeck-us.net> 15 const: pwm-fan 17 cooling-levels: 18 description: PWM duty cycle values corresponding to thermal cooling states. [all …]
|
/linux/Documentation/hwmon/ |
H A D | sysfs-interface.rst | 5 through the sysfs interface. Since lm-sensors 3.0.0, libsensors is 6 completely chip-independent. It assumes that all the kernel drivers 10 This is a major improvement compared to lm-sensors 2. 22 For this reason, even if we aim at a chip-independent libsensors, it will 37 Up to lm-sensors 3.0.0, libsensors looks for hardware monitoring attributes 38 in the "physical" device directory. Since lm-sensors 3.0.1, attributes found 47 The common scheme for files naming is: <type><number>_<item>. Usual 52 this). A number is always used for elements that can be present more 55 they have a simple name, and no number. 61 to cause an alarm) is chip-dependent. [all …]
|
H A D | f71882fg.rst | 103 This is the 64-pin variant of the F71889FG, they have the 119 ----------- 125 These chips also have fan controlling features, using either DC or PWM, in 133 ---------- 136 interface as documented in sysfs-interface, without any exceptions. 140 ----------- 142 Both PWM (pulse-width modulation) and DC fan speed control methods are 149 vica versa. So the temperature zone trip points 1-4 (or 1-2) go from high temp 153 There are 2 modes to specify the speed of the fan, PWM duty cycle (or DC 154 voltage) mode, where 0-100% duty cycle (0-100% of 12V) is specified. And RPM [all …]
|
H A D | dme1737.rst | 18 Addresses scanned: none, address read from Super-I/O config space 34 Addresses scanned: none, address read from Super-I/O config space 43 ----------------- 47 and PWM output control functions. Using this parameter 52 Include non-standard LPC addresses 0x162e and 0x164e 55 - VIA EPIA SN18000 59 ----------- 63 and SCH5127 Super-I/O chips. These chips feature monitoring of 3 temp sensors 64 temp[1-3] (2 remote diodes and 1 internal), 8 voltages in[0-7] (7 external and 65 1 internal) and up to 6 fan speeds fan[1-6]. Additionally, the chips implement [all …]
|
/linux/drivers/pwm/ |
H A D | pwm-cros-ec.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Expose a PWM controlled by the ChromeOS EC to the host processor. 13 #include <linux/pwm.h> 16 #include <dt-bindings/mfd/cros_ec.h> 19 * struct cros_ec_pwm_device - Driver data for EC PWM 22 * @use_pwm_type: Use PWM types instead of generic channels 44 return -EINVAL; in cros_ec_dt_type_to_pwm_type() 51 struct cros_ec_device *ec = ec_pwm->ec; in cros_ec_pwm_set_duty() 62 msg->version = 0; in cros_ec_pwm_set_duty() 63 msg->command = EC_CMD_PWM_SET_DUTY; in cros_ec_pwm_set_duty() [all …]
|
H A D | pwm-mxs.c | 1 // SPDX-License-Identifier: GPL-2.0+ 13 #include <linux/pwm.h> 49 static int mxs_pwm_apply(struct pwm_chip *chip, struct pwm_device *pwm, in mxs_pwm_apply() argument 60 * If the PWM channel is disabled, make sure to turn on the in mxs_pwm_apply() 64 if (!pwm_is_enabled(pwm)) { in mxs_pwm_apply() 65 ret = clk_prepare_enable(mxs->clk); in mxs_pwm_apply() 70 if (!state->enabled && pwm_is_enabled(pwm)) in mxs_pwm_apply() 71 writel(1 << pwm->hwpwm, mxs->base + PWM_CTRL + CLR); in mxs_pwm_apply() 73 rate = clk_get_rate(mxs->clk); in mxs_pwm_apply() 76 c = c * state->period; in mxs_pwm_apply() [all …]
|
H A D | pwm-rz-mtu3.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Renesas RZ/G2L MTU3a PWM Timer driver 8 …* https://www.renesas.com/eu/en/document/mah/rzg2l-group-rzg2lc-group-users-manual-hardware-0?lang… 11 * - When PWM is disabled, the output is driven to Hi-Z. 12 * - While the hardware supports both polarities, the driver (for now) 14 * - HW uses one counter and two match components to configure duty_cycle 16 * - Multi-Function Timer Pulse Unit (a.k.a MTU) has 7 HW channels for PWM 18 * - MTU{1, 2} channels have a single IO, whereas all other HW channels have 20 * - Each IO is modelled as an independent PWM channel. 21 * - rz_mtu3_channel_io_map table is used to map the PWM channel to the [all …]
|
H A D | pwm-lpc18xx-sct.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * NXP LPC18xx State Configurable Timer - Pulse Width Modulator driver 17 * number of simultaneous channels is limited to 15. Notice that period is 18 * global to all the channels, thus PWM driver will refuse setting different 28 #include <linux/pwm.h> 117 writel(val, lpc18xx_pwm->base + reg); in lpc18xx_pwm_writel() 123 return readl(lpc18xx_pwm->base + reg); in lpc18xx_pwm_readl() 127 struct pwm_device *pwm, in lpc18xx_pwm_set_conflict_res() argument 132 mutex_lock(&lpc18xx_pwm->res_lock); in lpc18xx_pwm_set_conflict_res() 140 val &= ~LPC18XX_PWM_RES_MASK(pwm->hwpwm); in lpc18xx_pwm_set_conflict_res() [all …]
|
/linux/drivers/hwmon/ |
H A D | mlxreg-fan.c | 1 // SPDX-License-Identifier: (GPL-2.0 OR BSD-3-Clause) 27 * FAN datasheet defines the formula for RPM calculations as RPM = 15/t-high. 28 * The logic in a programmable device measures the time t-high by sampling the 29 * tachometer every t-sample (with the default value 11.32 uS) and increment 31 * RPM = 15 / (t-sample * (K + Regval)), where: 33 * - 0xff - represents tachometer fault; 34 * - 0xfe - represents tachometer minimum value , which is 4444 RPM; 35 * - 0x00 - represents tachometer maximum value , which is 300000 RPM; 39 * used: RPM = 15 / ((Regval + K) * 11.32) * 10^(-6)), which in the 42 * - for Regval 0x00, RPM will be 15000000 * 100 / (44 * 1132) = 30115; [all …]
|
H A D | emc2305.c | 1 // SPDX-License-Identifier: GPL-2.0+ 33 * Factor by equations [2] and [3] from data sheet; valid for fans where the number of edges 59 * struct emc2305_cdev_data - device-specific cooling device state 70 * Fan low limit feature is supported through 'hwmon' interface: 'hwmon' 'pwm' attribute is 73 * subsystem to select a lower duty cycle than the duty cycle selected with the 'pwm' 75 * From other side, fan speed is to be updated in hardware through 'pwm' only in case the 77 * speed will be just stored with no PWM update. 87 * struct emc2305_data - device-specific data 91 * @pwm_num: number of PWM channels 92 * @pwm_separate: separate PWM settings for every channel [all …]
|
/linux/drivers/staging/greybus/ |
H A D | pwm.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * PWM Greybus driver. 12 #include <linux/pwm.h> 38 * The request returns the highest allowed PWM id parameter. So add one in gb_pwm_get_npwm() 39 * to get the number of PWMs. in gb_pwm_get_npwm() 58 ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_ACTIVATE, in gb_pwm_activate_operation() 80 ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_DEACTIVATE, in gb_pwm_deactivate_operation() 105 ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_CONFIG, in gb_pwm_config_operation() 129 ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_POLARITY, in gb_pwm_set_polarity_operation() 151 ret = gb_operation_sync(pwmc->connection, GB_PWM_TYPE_ENABLE, in gb_pwm_enable_operation() [all …]
|
/linux/Documentation/devicetree/bindings/leds/backlight/ |
H A D | pwm-backlight.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/leds/backlight/pwm-backlight.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: pwm-backlight 10 - Lee Jones <lee@kernel.org> 11 - Daniel Thompson <daniel.thompson@linaro.org> 12 - Jingoo Han <jingoohan1@gmail.com> 15 - $ref: common.yaml# 19 const: pwm-backlight [all …]
|
/linux/drivers/ufs/host/ |
H A D | ufshcd-pltfrm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 14 u32 pwm_rx_gear; /* pwm rx gear to work in */ 15 u32 pwm_tx_gear; /* pwm tx gear to work in */ 18 u32 rx_lanes; /* number of rx lanes */ 19 u32 tx_lanes; /* number of tx lanes */ 20 u32 rx_pwr_pwm; /* rx pwm working pwr */ 21 u32 tx_pwr_pwm; /* tx pwm working pwr */
|