/linux-6.12.1/Documentation/devicetree/bindings/arm/bcm/ |
D | raspberrypi,bcm2835-firmware.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/arm/bcm/raspberrypi,bcm2835-firmware.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Eric Anholt <eric@anholt.net> 11 - Stefan Wahren <wahrenst@gmx.net> 17 const: raspberrypi,bcm2835-firmware 20 - compatible 25 - const: raspberrypi,bcm2835-firmware 26 - const: simple-mfd [all …]
|
/linux-6.12.1/drivers/hwmon/ |
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 …]
|
D | pwm-fan.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * pwm-fan.c - Hwmon driver for fans connected to PWM lines. 17 #include <linux/pwm.h> 42 struct pwm_device *pwm; member 70 atomic_inc(&tach->pulses); in pulse_handler() 78 unsigned int delta = ktime_ms_delta(ktime_get(), ctx->sample_start); in sample_timer() 82 for (i = 0; i < ctx->tach_count; i++) { in sample_timer() 83 struct pwm_fan_tach *tach = &ctx->tachs[i]; in sample_timer() 86 pulses = atomic_read(&tach->pulses); in sample_timer() 87 atomic_sub(pulses, &tach->pulses); in sample_timer() [all …]
|
D | emc2305.c | 1 // SPDX-License-Identifier: GPL-2.0+ 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 93 * @pwm_min: array of minimum PWM per channel [all …]
|
D | nzxt-smart2.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Reverse-engineered NZXT RGB & Fan Controller/Smart Device v2 driver. 77 * a 2-byte output report { 0x60, 0x03 }. 85 /* Fan type as detected by the device. See FAN_TYPE_* enum. */ 90 * The device sends these reports at a fixed interval (update interval) - 91 * one report with type = FAN_STATUS_REPORT_SPEED, and one report with type = 98 u8 type; member 100 /* Fan type as detected by the device. See FAN_TYPE_* enum. */ 104 /* When type == FAN_STATUS_REPORT_SPEED */ 112 * Fan duty cycle, in percent. Non-zero even for [all …]
|
D | f71882fg.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 4 * Copyright (C) 2007-2011 Hans de Goede <hdegoede@redhat.com> * 16 #include <linux/hwmon-sysfs.h> 26 #define SIO_UNLOCK_KEY 0x87 /* Key to enable Super-I/O */ 27 #define SIO_LOCK_KEY 0xAA /* Key to disable Super-I/O */ 94 #define F71882FG_REG_POINT_PWM(pwm, point) (0xAA + (point) + (16 * (pwm))) argument 95 #define F71882FG_REG_POINT_TEMP(pwm, point) (0xA6 + (point) + (16 * (pwm))) argument 186 [f71808a] = 2, /* +1 fan which is monitor + simple pwm only */ 241 enum chips type; member 246 enum chips type; member [all …]
|
D | aspeed-pwm-tacho.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 11 #include <linux/hwmon-sysfs.h> 22 /* ASPEED PWM & FAN Tach Register Definition */ 47 /* ASPEED_PTCR_CTRL : 0x00 - General Control Register */ 74 /* ASPEED_PTCR_CLK_CTRL : 0x04 - Clock Control Register */ 75 /* TYPE N */ 80 /* TYPE M */ 87 * ASPEED_PTCR_DUTY_CTRL/1/2/3 : 0x08/0x0C/0x48/0x4C - PWM-FAN duty control 97 /* ASPEED_PTCR_TYPEM_CTRL : 0x10/0x18/0x50 - Type M/N/O Ctrl 0 Register */ 105 /* ASPEED_PTCR_TACH_SOURCE : 0x20/0x60 - Tach Source Register */ [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/mfd/ |
D | st,stm32-lptimer.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mfd/st,stm32-lptimer.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Low-Power Timers 10 The STM32 Low-Power Timer (LPTIM) is a 16-bit timer that provides several 12 - PWM output (with programmable prescaler, configurable polarity) 13 - Trigger source for STM32 ADC/DAC (LPTIM_OUT) 14 - Several counter modes: 15 - quadrature encoder to detect angular position and direction of rotary [all …]
|
D | st,stm32-timers.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mfd/st,stm32-timers.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 This hardware block provides 3 types of timer along with PWM functionality: 11 - advanced-control timers consist of a 16-bit auto-reload counter driven 12 by a programmable prescaler, break input feature, PWM outputs and 13 complementary PWM outputs channels. 14 - general-purpose timers consist of a 16-bit or 32-bit auto-reload counter 15 driven by a programmable prescaler and PWM outputs. [all …]
|
D | st,stmpe.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 touchscreen, ADC, PWM or rotator. It can contain one or several different 15 - Linus Walleij <linus.walleij@linaro.org> 18 - $ref: /schemas/spi/spi-peripheral-props.yaml# 23 - st,stmpe601 24 - st,stmpe801 25 - st,stmpe811 26 - st,stmpe1600 [all …]
|
/linux-6.12.1/drivers/pwm/ |
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 …]
|
/linux-6.12.1/Documentation/devicetree/bindings/leds/backlight/ |
D | mediatek,mt6370-backlight.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/backlight/mediatek,mt6370-backlight.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - ChiaEn Wu <chiaen_wu@richtek.com> 21 - $ref: common.yaml# 26 - mediatek,mt6370-backlight 27 - mediatek,mt6372-backlight 29 default-brightness: 32 max-brightness: [all …]
|
/linux-6.12.1/Documentation/hwmon/ |
D | nct6775.rst | 19 * Nuvoton NCT5572D/NCT6771F/NCT6772F/NCT6775F/W83677HG-I 83 * Nuvoton NCT6796D-S/NCT6799D-R 93 Guenter Roeck <linux@roeck-us.net> 96 ----------- 103 PCH, and SMBUS. Depending on the chip type, 2 to 6 of the temperature sources 117 value. Alarms are only supported for temp1 to temp6, depending on the chip type. 138 The mode works for fan1-fan5. 141 ---------------- 143 pwm[1-7] 144 - this file stores PWM duty cycle or DC value (fan speed) in range: [all …]
|
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-6.12.1/Documentation/devicetree/bindings/timer/ |
D | ingenic,tcu.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 11 Documentation/arch/mips/ingenic-tcu.rst. 14 - Paul Cercueil <paul@crapouillou.net> 21 - ingenic,jz4740-tcu 22 - ingenic,jz4725b-tcu 23 - ingenic,jz4760-tcu 24 - ingenic,jz4760b-tcu 25 - ingenic,jz4770-tcu [all …]
|
/linux-6.12.1/drivers/leds/ |
D | leds-pca9532.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * pca9532.c - 16-bit Led dimmer 18 #include <linux/leds-pca9532.h> 54 u8 pwm[2]; member 108 .name = "leds-pca953x", 116 /* We have two pwm/blinkers, but 16 possible leds to drive. Additionally, 117 * the clever Thecus people are using one pwm to drive the beeper. So, 118 * as a compromise we average one pwm to the values requested by all 121 static int pca9532_calcpwm(struct i2c_client *client, int pwm, int blink, in pca9532_calcpwm() argument 126 for (i = 0; i < data->chip_info->num_leds; i++) { in pca9532_calcpwm() [all …]
|
/linux-6.12.1/Documentation/driver-api/ |
D | miscellaneous.rst | 4 .. kernel-doc:: include/linux/parport.h 7 .. kernel-doc:: drivers/parport/ieee1284.c 10 .. kernel-doc:: drivers/parport/share.c 13 .. kernel-doc:: drivers/parport/daisy.c 19 .. kernel-doc:: drivers/tty/serial/8250/8250_core.c 24 Pulse-Width Modulation (PWM) 27 Pulse-width modulation is a modulation technique primarily used to 30 The PWM framework provides an abstraction for providers and consumers of 31 PWM signals. A controller that provides one or more PWM signals is 32 registered as :c:type:`struct pwm_chip <pwm_chip>`. Providers [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/input/ |
D | dlg,da7280.txt | 4 - compatible: Should be "dlg,da7280". 5 - reg: Specifies the I2C slave address. 7 - interrupt-parent : Specifies the phandle of the interrupt controller to 10 - dlg,actuator-type: Set Actuator type. it should be one of: 11 "LRA" - Linear Resonance Actuator type. 12 "ERM-bar" - Bar type Eccentric Rotating Mass. 13 "ERM-coin" - Coin type Eccentric Rotating Mass. 15 - dlg,const-op-mode: Haptic operation mode for FF_CONSTANT. 17 1 - Direct register override(DRO) mode triggered by i2c(default), 18 2 - PWM data source mode controlled by PWM duty, [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/leds/ |
D | leds-qcom-lpg.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/leds-qcom-lpg.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 20 - enum: 21 - qcom,pm660l-lpg 22 - qcom,pm8150b-lpg 23 - qcom,pm8150l-lpg 24 - qcom,pm8350c-pwm [all …]
|
D | leds-pwm-multicolor.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/leds-pwm-multicolor.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Multi-color LEDs connected to PWM 10 - Sven Schwermer <sven.schwermer@disruptive-technologies.com> 13 This driver combines several monochrome PWM LEDs into one multi-color 18 const: pwm-leds-multicolor 20 multi-led: 21 type: object [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/pwm/ |
D | google,cros-ec-pwm.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/pwm/google,cros-ec-pwm.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: PWM controlled by ChromeOS EC 10 - Thierry Reding <thierry.reding@gmail.com> 11 - '"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>' 14 Google's ChromeOS EC PWM is a simple PWM attached to the Embedded Controller 15 (EC) and controlled via a host-command interface. 16 An EC PWM node should be only found as a sub-node of the EC node (see [all …]
|
/linux-6.12.1/drivers/input/misc/ |
D | pwm-beeper.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Copyright (C) 2010, Lars-Peter Clausen <lars@metafoo.de> 4 * PWM beeper driver 14 #include <linux/pwm.h> 20 struct pwm_device *pwm; member 36 pwm_get_state(beeper->pwm, &state); in pwm_beeper_on() 42 error = pwm_apply_might_sleep(beeper->pwm, &state); in pwm_beeper_on() 46 if (!beeper->amplifier_on) { in pwm_beeper_on() 47 error = regulator_enable(beeper->amplifier); in pwm_beeper_on() 49 pwm_disable(beeper->pwm); in pwm_beeper_on() [all …]
|
D | max8997_haptic.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * MAX8997-haptic controller driver 15 #include <linux/pwm.h> 17 #include <linux/mfd/max8997-private.h> 44 struct pwm_device *pwm; member 48 enum max8997_haptic_motor_type type; member 60 if (chip->mode == MAX8997_EXTERNAL_MODE) { in max8997_haptic_set_duty_cycle() 61 unsigned int duty = chip->pwm_period * chip->level / 100; in max8997_haptic_set_duty_cycle() 62 ret = pwm_config(chip->pwm, duty, chip->pwm_period); in max8997_haptic_set_duty_cycle() 66 duty_index = DIV_ROUND_UP(chip->level * 64, 100); in max8997_haptic_set_duty_cycle() [all …]
|
/linux-6.12.1/arch/arm/boot/dts/samsung/ |
D | exynos5422-odroidhc1.dts | 1 // SPDX-License-Identifier: GPL-2.0 10 /dts-v1/; 11 #include <dt-bindings/leds/common.h> 12 #include "exynos5422-odroid-core.dtsi" 16 compatible = "hardkernel,odroid-hc1", "samsung,exynos5800", \ 19 led-controller { 20 compatible = "pwm-leds"; 22 led-1 { 25 pwms = <&pwm 2 2000000 0>; 26 pwm-names = "pwm2"; [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/soc/microchip/ |
D | atmel,at91rm9200-tcb.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/soc/microchip/atmel,at91rm9200-tcb.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Alexandre Belloni <alexandre.belloni@bootlin.com> 19 - enum: 20 - atmel,at91rm9200-tcb 21 - atmel,at91sam9x5-tcb 22 - atmel,sama5d2-tcb 23 - const: simple-mfd [all …]
|