/linux/sound/usb/caiaq/ |
H A D | control.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 24 struct snd_usb_caiaqdev *cdev = caiaqdev(chip->card); in control_info() 25 int pos = kcontrol->private_value; in control_info() 29 uinfo->count = 1; in control_info() 32 switch (cdev->chip.usb_id) { in control_info() 37 uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER; in control_info() 38 uinfo->value.integer.min = 0; in control_info() 39 uinfo->value.integer.max = 2; in control_info() 54 uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER; in control_info() 55 uinfo->value.integer.min = 0; in control_info() [all …]
|
/linux/drivers/leds/ |
H A D | leds-bd2802.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * leds-bd2802.c - RGB LED Driver 8 * Datasheet: http://www.rohm.com/products/databook/driver/pdf/bd2802gu-e.pdf 16 #include <linux/leds-bd2802.h> 73 struct led_state led[2]; member 104 /*--------------------------------------------------------------*/ 106 /*--------------------------------------------------------------*/ 108 static inline int bd2802_is_rgb_off(struct bd2802_led *led, enum led_ids id, in bd2802_is_rgb_off() argument 113 return !led->led[id].r; in bd2802_is_rgb_off() 115 return !led->led[id].g; in bd2802_is_rgb_off() [all …]
|
H A D | leds-lm3692x.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // TI LM3692x LED chip family driver 3 // Copyright (C) 2017-18 Texas Instruments Incorporated - https://www.ti.com/ 101 * @led_dev: LED class device pointer 104 * @regulator: LED supply regulator pointer 105 * @led_enable: LED sync to be enabled 145 static int lm3692x_fault_check(struct lm3692x_led *led) in lm3692x_fault_check() argument 150 ret = regmap_read(led->regmap, LM3692X_FAULT_FLAGS, &read_buf); in lm3692x_fault_check() 155 dev_err(&led->client->dev, "Detected a fault 0x%X\n", read_buf); in lm3692x_fault_check() 160 regmap_read(led->regmap, LM3692X_FAULT_FLAGS, &read_buf); in lm3692x_fault_check() [all …]
|
H A D | leds-cpcap.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 7 #include <linux/mfd/motorola-cpcap.h> 52 /* camera privacy led */ 62 struct led_classdev led; member 81 static int cpcap_led_set_power(struct cpcap_led *led, bool status) in cpcap_led_set_power() argument 85 if (status == led->powered) in cpcap_led_set_power() 89 err = regulator_enable(led->vdd); in cpcap_led_set_power() 91 err = regulator_disable(led->vdd); in cpcap_led_set_power() 94 dev_err(led->dev, "regulator failure: %d", err); in cpcap_led_set_power() 98 led->powered = status; in cpcap_led_set_power() [all …]
|
H A D | leds-max8997.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * leds-max8997.c - LED class driver for MAX8997 LEDs. 14 #include <linux/mfd/max8997-private.h> 47 static void max8997_led_set_mode(struct max8997_led *led, in max8997_led_set_mode() argument 51 struct i2c_client *client = led->iodev->i2c; in max8997_led_set_mode() 57 val = led->id ? in max8997_led_set_mode() 59 led->cdev.max_brightness = MAX8997_LED_FLASH_MAX_BRIGHTNESS; in max8997_led_set_mode() 63 val = led->id ? in max8997_led_set_mode() 65 led->cdev.max_brightness = MAX8997_LED_MOVIE_MAX_BRIGHTNESS; in max8997_led_set_mode() 70 val = led->id ? in max8997_led_set_mode() [all …]
|
H A D | leds-ns2.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * leds-ns2.c - Driver for the Network Space v2 (and parents) dual-GPIO LED 9 * Based on leds-gpio.c by Raphael Assenat <raph@8d.com> 39 * The Network Space v2 dual-GPIO LED is wired to a CPLD. Three different LED 40 * modes are available: off, on and SATA activity blinking. The LED modes are 42 * for the command/slow GPIOs corresponds to a LED mode. 56 static int ns2_led_get_mode(struct ns2_led *led, enum ns2_led_modes *mode) in ns2_led_get_mode() argument 62 cmd_level = gpiod_get_value_cansleep(led->cmd); in ns2_led_get_mode() 63 slow_level = gpiod_get_value_cansleep(led->slow); in ns2_led_get_mode() 65 for (i = 0; i < led->num_modes; i++) { in ns2_led_get_mode() [all …]
|
H A D | leds-lm3697.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // TI LM3697 LED chip family driver 3 // Copyright (C) 2018 Texas Instruments Incorporated - https://www.ti.com/ 15 #include <linux/leds-ti-lmu-common.h> 47 * struct lm3697_led - 48 * @hvled_strings: Array of LED strings associated with a control bank 49 * @label: LED label 50 * @led_dev: LED class device 53 * @control_bank: Control bank the LED is associated to. 0 is control bank A 55 * @enabled: LED brightness level (or LED_OFF) [all …]
|
H A D | leds-wm8350.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * LED driver for WM8350 driven LEDS. 88 static int wm8350_led_enable(struct wm8350_led *led) in wm8350_led_enable() argument 92 if (led->enabled) in wm8350_led_enable() 95 ret = regulator_enable(led->isink); in wm8350_led_enable() 97 dev_err(led->cdev.dev, "Failed to enable ISINK: %d\n", ret); in wm8350_led_enable() 101 ret = regulator_enable(led->dcdc); in wm8350_led_enable() 103 dev_err(led->cdev.dev, "Failed to enable DCDC: %d\n", ret); in wm8350_led_enable() 104 regulator_disable(led->isink); in wm8350_led_enable() 108 led->enabled = 1; in wm8350_led_enable() [all …]
|
H A D | leds-lm3533.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * leds-lm3533.c -- LM3533 LED driver 5 * Copyright (C) 2011-2012 Texas Instruments 59 static inline int lm3533_led_get_ctrlbank_id(struct lm3533_led *led) in lm3533_led_get_ctrlbank_id() argument 61 return led->id + 2; in lm3533_led_get_ctrlbank_id() 64 static inline u8 lm3533_led_get_lv_reg(struct lm3533_led *led, u8 base) in lm3533_led_get_lv_reg() argument 66 return base + led->id; in lm3533_led_get_lv_reg() 69 static inline u8 lm3533_led_get_pattern(struct lm3533_led *led) in lm3533_led_get_pattern() argument 71 return led->id; in lm3533_led_get_pattern() 74 static inline u8 lm3533_led_get_pattern_reg(struct lm3533_led *led, in lm3533_led_get_pattern_reg() argument [all …]
|
H A D | leds-lp8860.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * TI LP8860 4-Channel LED Driver 90 * @led_dev: led class device pointer 94 * @regulator: LED supply regulator pointer 139 static int lp8860_unlock_eeprom(struct lp8860_led *led, int lock) in lp8860_unlock_eeprom() argument 143 mutex_lock(&led->lock); in lp8860_unlock_eeprom() 146 ret = regmap_write(led->regmap, in lp8860_unlock_eeprom() 150 dev_err(&led->client->dev, "EEPROM Unlock failed\n"); in lp8860_unlock_eeprom() 154 ret = regmap_write(led->regmap, in lp8860_unlock_eeprom() 158 dev_err(&led->client->dev, "EEPROM Unlock failed\n"); in lp8860_unlock_eeprom() [all …]
|
H A D | leds-regulator.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * leds-regulator.c - LED class driver for regulator driven LEDs. 7 * Inspired by leds-wm8350 driver. 15 #include <linux/leds-regulator.h> 40 * and the LED can be turned on and off. in led_regulator_get_max_brightness() 53 return -EINVAL; in led_regulator_get_voltage() 55 return regulator_list_voltage(supply, brightness - 1); in led_regulator_get_voltage() 59 static void regulator_led_enable(struct regulator_led *led) in regulator_led_enable() argument 63 if (led->enabled) in regulator_led_enable() 66 ret = regulator_enable(led->vcc); in regulator_led_enable() [all …]
|
H A D | leds-wm831x-status.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * LED driver for WM831x status LEDs 38 static void wm831x_status_set(struct wm831x_status *led) in wm831x_status_set() argument 42 mutex_lock(&led->mutex); in wm831x_status_set() 44 led->reg_val &= ~(WM831X_LED_SRC_MASK | WM831X_LED_MODE_MASK | in wm831x_status_set() 47 spin_lock_irqsave(&led->value_lock, flags); in wm831x_status_set() 49 led->reg_val |= led->src << WM831X_LED_SRC_SHIFT; in wm831x_status_set() 50 if (led->blink) { in wm831x_status_set() 51 led->reg_val |= 2 << WM831X_LED_MODE_SHIFT; in wm831x_status_set() 52 led->reg_val |= led->blink_time << WM831X_LED_DUR_SHIFT; in wm831x_status_set() [all …]
|
H A D | leds-pm8058.c | 1 // SPDX-License-Identifier: GPL-2.0-only 30 struct pm8058_led *led; in pm8058_led_set() local 35 led = container_of(cled, struct pm8058_led, cdev); in pm8058_led_set() 36 switch (led->ledtype) { in pm8058_led_set() 50 ret = regmap_update_bits(led->map, led->reg, mask, val); in pm8058_led_set() 52 pr_err("Failed to set LED brightness\n"); in pm8058_led_set() 57 struct pm8058_led *led; in pm8058_led_get() local 61 led = container_of(cled, struct pm8058_led, cdev); in pm8058_led_get() 63 ret = regmap_read(led->map, led->reg, &val); in pm8058_led_get() 65 pr_err("Failed to get LED brightness\n"); in pm8058_led_get() [all …]
|
H A D | leds-cht-wcove.c | 1 // SPDX-License-Identifier: GPL-2.0 30 #define CHT_WC_LED1_SWCTL BIT(0) /* HW or SW control of charging led */ 34 #define CHT_WC_LED_I_MA2_5 (2 << 2) /* LED current limit */ 35 #define CHT_WC_LED_I_MASK GENMASK(3, 2) /* LED current limit mask */ 56 /* Mask + values for turning the LED on/off */ 109 struct cht_wc_led *led = container_of(cdev, struct cht_wc_led, cdev); in cht_wc_leds_brightness_set() local 112 mutex_lock(&led->mutex); in cht_wc_leds_brightness_set() 115 ret = regmap_update_bits(led->regmap, led->regs->ctrl, in cht_wc_leds_brightness_set() 116 led->regs->on_off_mask, led->regs->off_val); in cht_wc_leds_brightness_set() 118 dev_err(cdev->dev, "Failed to turn off: %d\n", ret); in cht_wc_leds_brightness_set() [all …]
|
H A D | leds-pca963x.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Author: Peter Meerwald <p.meerwald@bct-electronic.com> 9 * Based on leds-pca955x.c 11 * LED driver for the PCA9633 I2C LED driver (7-bit slave address 0x62) 12 * LED driver for the PCA9634/5 I2C LED driver (7-bit slave address set by hw.) 18 * in identical fashion. The delay_on/delay_off values of the last LED 22 * or by adding the 'nxp,hw-blink' property to the DTS. 36 /* LED select registers determine the source that drives LED outputs */ 37 #define PCA963X_LED_OFF 0x0 /* LED driver off */ 38 #define PCA963X_LED_ON 0x1 /* LED driver on */ [all …]
|
H A D | leds-el15203000.c | 1 // SPDX-License-Identifier: GPL-2.0 14 * +-----+---------+ 15 * | LED | COMMAND | 16 * +-----+---------+ 18 * +-----+---------+ 22 * +----------+--------------+-------------------------------------------+ 24 * +----------+--------------+-------------------------------------------+ 26 * +----------+--------------+-------------------------------------------+ 28 * +----------+--------------+-------------------------------------------+ 30 * +----------+--------------+-------------------------------------------+ [all …]
|
H A D | leds-an30259a.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 // Driver for Panasonic AN30259A 3-channel LED driver 22 /* LED power registers */ 24 #define AN30259A_LED_EN(x) BIT((x) - 1) 25 #define AN30259A_LED_SLOPE(x) BIT(((x) - 1) + 4) 27 #define AN30259A_REG_LEDCC(x) (0x03 + ((x) - 1)) 30 #define AN30259A_REG_SLOPE(x) (0x06 + ((x) - 1)) 34 #define AN30259A_REG_LEDCNT1(x) (0x09 + (4 * ((x) - 1))) 38 #define AN30259A_REG_LEDCNT2(x) (0x0A + (4 * ((x) - 1))) 43 #define AN30259A_REG_LEDCNT3(x) (0x0B + (4 * ((x) - 1))) [all …]
|
/linux/drivers/net/wireless/broadcom/b43/ |
H A D | leds.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 LED control 7 Copyright (c) 2005 Martin Langer <martin-langer@gmx.de>, 9 Copyright (c) 2005-2007 Michael Buesch <m@bues.ch> 48 struct b43_led *led) in b43_led_update() argument 53 if (!led->wl) in b43_led_update() 56 radio_enabled = (dev->phy.radio_on && dev->radio_hw_enable); in b43_led_update() 58 /* The led->state read is racy, but we don't care. In case we raced in b43_led_update() 62 turn_on = atomic_read(&led->state) != LED_OFF; in b43_led_update() 65 if (turn_on == led->hw_state) in b43_led_update() [all …]
|
/linux/Documentation/devicetree/bindings/leds/ |
H A D | leds-mt6360.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/leds-mt6360.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: LED driver for MT6360 PMIC from MediaTek Integrated. 10 - Gene Chen <gene_chen@richtek.com> 15 Add MT6360 LED driver include 2-channel Flash LED with torch/strobe mode, 16 and 4-channel RGB LED support Register/Flash/Breath Mode 20 const: mediatek,mt6360-led 22 "#address-cells": [all …]
|
H A D | leds-lp55xx.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/leds-lp55xx.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: TI/National Semiconductor LP55xx and LP8501 LED Drivers 10 - Jacek Anaszewski <jacek.anaszewski@gmail.com> 11 - Pavel Machek <pavel@ucw.cz> 15 LED Drivers. 27 - national,lp5521 28 - national,lp5523 [all …]
|
H A D | qcom,spmi-flash-led.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/leds/qcom,spmi-flash-led.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Flash LED device inside Qualcomm Technologies, Inc. PMICs 10 - Fenglin Wu <quic_fenglinw@quicinc.com> 13 Flash LED controller is present inside some Qualcomm Technologies, Inc. PMICs. 14 The flash LED module can have different number of LED channels supported 24 - enum: 25 - qcom,pm6150l-flash-led [all …]
|
/linux/drivers/leds/flash/ |
H A D | leds-mt6360.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 #include <linux/led-class-flash.h> 9 #include <linux/led-class-multicolor.h> 15 #include <media/v4l2-flash-led-class.h> 29 #define MT6360_ISNK_ENMASK(_led_no) BIT(7 - (_led_no)) 39 #define MT6360_REG_FLEDBASE(_id) (0x372 + 4 * (_id - MT6360_LED_FLASH1)) 49 #define MT6360_FLCSEN_MASK(_id) BIT(MT6360_LED_FLASH2 - _id) 101 struct mt6360_led *led = container_of(mccdev, struct mt6360_led, mc); in mt6360_mc_brightness_set() local 102 struct mt6360_priv *priv = led->priv; in mt6360_mc_brightness_set() 106 mutex_lock(&priv->lock); in mt6360_mc_brightness_set() [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-class-led-trigger-netdev | 1 What: /sys/class/leds/<led>/device_name 4 Contact: linux-leds@vger.kernel.org 8 What: /sys/class/leds/<led>/interval 11 Contact: linux-leds@vger.kernel.org 13 Specifies the duration of the LED blink in milliseconds. 21 What: /sys/class/leds/<led>/link 24 Contact: linux-leds@vger.kernel.org 28 If set to 0 (default), the LED's normal state is off. 30 If set to 1, the LED's normal state reflects the link state 32 Setting this value also immediately changes the LED state. [all …]
|
/linux/drivers/hid/ |
H A D | hid-gt683r.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * MSI GT683R led driver 14 #include "hid-ids.h" 63 struct device *dev = led_cdev->dev->parent; in gt683r_brightness_set() 65 struct gt683r_led *led = hid_get_drvdata(hdev); in gt683r_brightness_set() local 68 if (led_cdev == &led->led_devs[i]) in gt683r_brightness_set() 73 led->brightnesses[i] = brightness; in gt683r_brightness_set() 74 schedule_work(&led->work); in gt683r_brightness_set() 83 struct hid_device *hdev = to_hid_device(dev->parent); in mode_show() 84 struct gt683r_led *led = hid_get_drvdata(hdev); in mode_show() local [all …]
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_led.c | 37 nouveau_led_get_brightness(struct led_classdev *led) in nouveau_led_get_brightness() argument 39 struct drm_device *drm_dev = container_of(led, struct nouveau_led, led)->dev; in nouveau_led_get_brightness() 41 struct nvif_object *device = &drm->client.device.object; in nouveau_led_get_brightness() 54 nouveau_led_set_brightness(struct led_classdev *led, enum led_brightness value) in nouveau_led_set_brightness() argument 56 struct drm_device *drm_dev = container_of(led, struct nouveau_led, led)->dev; in nouveau_led_set_brightness() 58 struct nvif_object *device = &drm->clien in nouveau_led_set_brightness() [all...] |