/linux/Documentation/devicetree/bindings/iio/adc/ |
H A D | atmel,sama9260-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/atmel,sama9260-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: AT91 sama9260 and similar Analog to Digital Converter (ADC) 10 - Alexandre Belloni <alexandre.belloni@bootlin.com> 15 - atmel,at91sam9260-adc 16 - atmel,at91sam9rl-adc 17 - atmel,at91sam9g45-adc 18 - atmel,at91sam9x5-adc [all …]
|
H A D | atmel,sama5d2-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/atmel,sama5d2-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: AT91 SAMA5D2 Analog to Digital Converter (ADC) 10 - Eugen Hristev <eugen.hristev@microchip.com> 15 - atmel,sama5d2-adc 16 - microchip,sam9x60-adc 17 - microchip,sama7g5-adc 28 clock-names: [all …]
|
/linux/Documentation/sound/soc/ |
H A D | pops-clicks.rst | 7 audio module is either loaded or unloaded (at module load time the sound card is 13 click every time a component power state is changed. 22 components in a specific order. This order is different for startup and 23 shutdown and follows some basic rules:- 26 Startup Order :- DAC --> Mixers --> Output PGA --> Digital Unmute 28 Shutdown Order :- Digital Mute --> Output PGA --> Mixers --> DAC 38 ADC until all the pops have occurred. This follows similar power rules to 40 startup or shutdown. 43 Startup Order - Input PGA --> Mixers --> ADC 45 Shutdown Order - ADC --> Mixers --> Input PGA
|
/linux/arch/arm/boot/dts/microchip/ |
H A D | at91sam9g20.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * at91sam9g20.dtsi - Device Tree Include file for AT91SAM9G20 family SoC 5 * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> 23 compatible = "mmio-sram"; 25 #address-cells = <1>; 26 #size-cells = <1>; 33 compatible = "atmel,at91sam9g20-i2c"; 37 compatible = "atmel,at91sam9rl-ssc"; 40 adc0: adc@fffe0000 { 41 atmel,adc-startup-time = <40>; [all …]
|
H A D | at91sam9x5.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * at91sam9x5.dtsi - Device Tree Include file for AT91SAM9x5 family SoC 11 #include <dt-bindings/dma/at91.h> 12 #include <dt-bindings/pinctrl/at91.h> 13 #include <dt-bindings/interrupt-controller/irq.h> 14 #include <dt-bindings/gpio/gpio.h> 15 #include <dt-bindings/clock/at91.h> 16 #include <dt-bindings/mfd/at91-usart.h> 19 #address-cells = <1>; 20 #size-cells = <1>; [all …]
|
/linux/drivers/leds/ |
H A D | leds-lp5523.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * lp5523.c - LP5523, LP55231 LED Driver 20 #include <linux/platform_data/leds-lp55xx.h> 23 #include "leds-lp55xx-common.h" 88 /* Chip startup time is 500 us, 1 - 2 ms gives some margin */ in lp5523_post_init_device() 92 val |= (chip->pdata->charge_pump_mode << LP5523_CP_MODE_SHIFT) & LP5523_CP_MODE_MASK; in lp5523_post_init_device() 150 chip->engine_idx = i; in lp5523_init_program_engine() 155 pattern[i - 1][j]); in lp5523_init_program_engine() 171 dev_err(&chip->cl->dev, in lp5523_init_program_engine() 174 ret = -1; in lp5523_init_program_engine() [all …]
|
/linux/drivers/power/supply/ |
H A D | ab8500-bm.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 267 * struct ab8500_fg_parameters - Fuel gauge algorithm parameters, in seconds 269 * @recovery_sleep_timer: Time between measurements while recovering 270 * @recovery_total_time: Total recovery time 271 * @init_timer: Measurement interval during startup 272 * @init_discard_time: Time we discard voltage measurement at startup 273 * @init_total_time: Total init time during startup 274 * @high_curr_time: Time current has to be high to go to recovery 275 * @accu_charging: FG accumulation time while charging 276 * @accu_high_curr_ua: FG accumulation time in high current mode [all …]
|
H A D | ab8500_charger.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) ST-Ericsson SA 2012 36 #include "ab8500-bm.h" 37 #include "ab8500-chargalg.h" 94 /* Lowest charger voltage is 3.39V -> 0x4E */ 112 /* UsbLineStatus register - usb types */ 174 * struct ab8500_charger_interrupts - ab8500 interrupts 218 * struct ab8500_charger - ab8500 Charger device information 222 * VBUS detected during startup 224 * @vddadc_en_ac: Indicate if VDD ADC supply is enabled because AC [all …]
|
/linux/arch/arm/boot/dts/nxp/imx/ |
H A D | mba6ulx.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 3 * Copyright 2018-2022 TQ-Systems GmbH 4 * Author: Markus Niebel <Markus.Niebel@tq-group.com> 8 model = "TQ-Systems MBA6ULx Baseboard"; 18 stdout-path = &uart1; 22 compatible = "pwm-backlight"; 23 power-supply = <®_mba6ul_3v3>; 24 enable-gpios = <&expander_out0 4 GPIO_ACTIVE_HIGH>; 29 compatible = "gpio-beeper"; 33 gpio_buttons: gpio-keys { [all …]
|
H A D | imx6qdl-apalis.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 3 * Copyright 2014-2022 Toradex 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/pwm/pwm.h> 19 /delete-property/ mmc3; 29 compatible = "pwm-backlight"; 30 brightness-levels = <0 45 63 88 119 158 203 255>; 31 default-brightness-level = <4>; 32 enable-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>; 33 pinctrl-names = "default"; [all …]
|
/linux/sound/soc/codecs/ |
H A D | ak4619.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * ak4619.c -- Asahi Kasei ALSA SoC Audio driver 39 #define ADC_DF 0x0a /* ADC Digital Filter Setting */ 40 #define ADC_AI 0x0b /* ADC Analog Input Setting */ 41 #define ADC_MHPF 0x0D /* ADC Mute & HPF Control */ 47 #define DAC_DEMP 0x13 /* DAC De-Emphasis Setting */ 91 /* ADC Digital Volume */ 95 /* ADC Digital Filter Setting */ 105 /* ADC Mute & HPF Control */ 126 /* DAC De-Emphasis Setting */ [all …]
|
H A D | es8316.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * es8316.c -- es8316 ALSA SoC audio driver 6 * Authors: David Yang <yangxiaohua@everest-semi.com>, 21 #include <sound/soc-dapm.h> 50 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(dac_vol_tlv, -9600, 50, 1); 51 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(adc_vol_tlv, -9600, 50, 1); 52 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(alc_max_gain_tlv, -650, 150, 0); 53 static const SNDRV_CTL_TLVD_DECLARE_DB_SCALE(alc_min_gain_tlv, -1200, 150, 0); 56 0, 10, TLV_DB_SCALE_ITEM(-1650, 150, 0), 57 11, 11, TLV_DB_SCALE_ITEM(-150, 0, 0), [all …]
|
H A D | wm8988.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8988.c -- WM8988 ALSA SoC audio driver 154 "Mute ADC Output"}; 167 static const DECLARE_TLV_DB_SCALE(pga_tlv, -1725, 75, 0); 168 static const DECLARE_TLV_DB_SCALE(adc_tlv, -9750, 50, 1); 169 static const DECLARE_TLV_DB_SCALE(dac_tlv, -12750, 50, 1); 170 static const DECLARE_TLV_DB_SCALE(out_tlv, -12100, 100, 1); 171 static const DECLARE_TLV_DB_SCALE(bypass_tlv, -1500, 300, 0); 180 SOC_ENUM("Treble Cut-off", treble), 184 SOC_ENUM("3D Lower Cut-off", stereo_3d_lc), [all …]
|
H A D | nau8825.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * Co-author: Meng-Huang Kuo <mhkuo@nuvoton.com> 35 #define NUVOTON_CODEC_DAI "nau8825-hifi" 223 * nau8825_sema_acquire - acquire the semaphore of nau88l25 233 * this function returns -ETIME. If the sleep is interrupted by a signal, 234 * this function will return -EINTR. It returns 0 if the semaphore was 246 ret = down_timeout(&nau8825->xtalk_sem, timeout); in nau8825_sema_acquire() 248 dev_warn(nau8825->dev, "Acquire semaphore timeout\n"); in nau8825_sema_acquire() 250 ret = down_trylock(&nau8825->xtalk_sem); in nau8825_sema_acquire() 252 dev_warn(nau8825->dev, "Acquire semaphore fail\n"); in nau8825_sema_acquire() [all …]
|
H A D | es8311.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * es8311.c -- es8311 ALSA SoC audio driver 38 static const DECLARE_TLV_DB_SCALE(es8311_adc_vol_tlv, -9550, 50, 0); 68 0, 1, TLV_DB_SCALE_ITEM(-3010, 600, 0), 69 2, 3, TLV_DB_SCALE_ITEM(-2060, 250, 0), 70 4, 5, TLV_DB_SCALE_ITEM(-1610, 160, 0), 71 6, 7, TLV_DB_SCALE_ITEM(-1320, 120, 0), 72 8, 9, TLV_DB_SCALE_ITEM(-1100, 90, 0), 73 10, 11, TLV_DB_SCALE_ITEM(-930, 80, 0), 74 12, 15, TLV_DB_SCALE_ITEM(-780, 60, 0), [all …]
|
H A D | nau8824.c | 1 // SPDX-License-Identifier: GPL-2.0-only 35 static int quirk_override = -1; 37 MODULE_PARM_DESC(quirk, "Board-specific quirk override"); 43 /* the ADC threshold of headset */ 46 /* the ADC threshold of headset */ 211 ret = down_timeout(&nau8824->jd_sem, timeout); in nau8824_sema_acquire() 213 dev_warn(nau8824->dev, "Acquire semaphore timeout\n"); in nau8824_sema_acquire() 215 ret = down_interruptible(&nau8824->jd_sem); in nau8824_sema_acquire() 217 dev_warn(nau8824->dev, "Acquire semaphore fail\n"); in nau8824_sema_acquire() 225 up(&nau8824->jd_sem); in nau8824_sema_release() [all …]
|
H A D | nau8540.c | 1 // SPDX-License-Identifier: GPL-2.0-only 24 #include <sound/soc-dapm.h> 182 static const DECLARE_TLV_DB_MINMAX(adc_vol_tlv, -12800, 3600); 183 static const DECLARE_TLV_DB_MINMAX(fepga_gain_tlv, -100, 3600); 206 "ADC channel 1", "ADC channel 2", "ADC channel 3", "ADC channel 4" 235 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in nau8540_fepga_event() 240 regmap_update_bits(nau8540->regmap, NAU8540_REG_FEPGA2, in nau8540_fepga_event() 256 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in nau8540_precharge_event() 261 regmap_update_bits(nau8540->regmap, NAU8540_REG_REFERENCE, in nau8540_precharge_event() 264 regmap_update_bits(nau8540->regmap, NAU8540_REG_REFERENCE, in nau8540_precharge_event() [all …]
|
H A D | ssm2602.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 59 * core, and then powers on output, DAC, and whole chip at the same time 85 48, 127, TLV_DB_SCALE_ITEM(-7400, 100, 0) 88 static const DECLARE_TLV_DB_SCALE(ssm260x_inpga_tlv, -3450, 150, 0); 89 static const DECLARE_TLV_DB_SCALE(ssm260x_sidetone_tlv, -1500, 300, 0); 96 SOC_SINGLE("ADC High Pass Filter Switch", SSM2602_APDIGI, 0, 1, 1), 99 SOC_ENUM("Playback De-emphasis", ssm2602_enum[1]), 136 * is activated too early, or even before the ADC is powered up, audible in ssm2602_mic_switch_event() 148 SND_SOC_DAPM_ADC("ADC", "HiFi Capture", SSM2602_PWR, 2, 1), 178 ARRAY_SIZE(ssm260x_output_mixer_controls) - 1), /* Last element is the mic */ [all …]
|
H A D | adau1701.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Author: Lars-Peter Clausen <lars@metafoo.de> 99 #define ADAU1707_CLKDIV_UNSET (-1U) 130 SND_SOC_DAPM_ADC("ADC", "Capture", ADAU1701_AUXNPOW, 7, 1), 146 { "ADC", NULL, "IN0" }, 147 { "ADC", NULL, "IN1" }, 191 size = adau1701_register_size(&client->dev, reg); in adau1701_reg_write() 193 return -EINVAL; in adau1701_reg_write() 198 for (i = size + 1; i >= 2; --i) { in adau1701_reg_write() 209 return -EIO; in adau1701_reg_write() [all …]
|
H A D | sgtl5000.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // sgtl5000.c -- SGTL5000 ALSA SoC Audio driver 5 // Copyright 2010-2011 Freescale Semiconductor, Inc. All Rights Reserved. 26 #include <sound/soc-dapm.h> 80 /* AVC: Threshold dB -> register: pre-calculated values */ 110 #define LINREG_VDDD ((1600 - LDO_VOLTAGE / 1000) / 50) 190 /* When VAG powering on to get local loop from Line-In, the sleep in vag_power_on() 203 /* count dac/adc consumers unconditional */ in vag_power_consumers() 210 * If the event comes from HP and Line-In is selected, in vag_power_consumers() 212 * As HP_POWERUP is not set when HP muxed to line-in, in vag_power_consumers() [all …]
|
H A D | wm8994.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8994.c -- WM8994 ALSA SoC Audio driver 5 * Copyright 2009-12 Wolfson Microelectronics plc 114 struct wm8994 *control = wm8994->wm8994; in wm8958_micd_set_rate() 120 idle = !wm8994->jack_mic; in wm8958_micd_set_rate() 124 sysclk = wm8994->aifclk[1]; in wm8958_micd_set_rate() 126 sysclk = wm8994->aifclk[0]; in wm8958_micd_set_rate() 128 if (control->pdata.micd_rates) { in wm8958_micd_set_rate() 129 rates = control->pdata.micd_rates; in wm8958_micd_set_rate() 130 num_rates = control->pdata.num_micd_rates; in wm8958_micd_set_rate() [all …]
|
/linux/drivers/iio/temperature/ |
H A D | mlx90614.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * mlx90614.c - Support for Melexis MLX90614/MLX90615 contactless IR temperature sensor 9 * Driver for the Melexis MLX90614/MLX90615 I2C 16-bit IR thermopile sensor 11 * MLX90614 - 17-bit ADC + MLX90302 DSP 12 * MLX90615 - 16-bit ADC + MLX90325 DSP 14 * (7-bit I2C slave address 0x5a, 100KHz bus speed only!) 21 * always has a pull-up so we do not need an extra GPIO to drive it high. If 57 #define MLX90614_TIMING_EEPROM 20 /* time for EEPROM write/erase to complete */ 58 #define MLX90614_TIMING_WAKEUP 34 /* time to hold SDA low for wake-up */ 59 #define MLX90614_TIMING_STARTUP 250 /* time before first data after wake-up */ [all …]
|
H A D | ltc2983.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Analog Devices LTC2983 Multi-Sensor Digital Temperature Measurement System 60 (((chan - 1) * 4) + LTC2983_CHAN_ASSIGN_START_REG) 62 (((chan - 1) * 4) + LTC2983_TEMP_RES_START_REG) 312 * instance a resolution of 2^-10 means we have 10 fractional bits. 326 s64 __res = -(s32)val; in __convert_to_raw_sign() 330 return (u32)-__res; in __convert_to_raw_sign() 337 const struct device *dev = &st->spi->dev; in __ltc2983_fault_handler() 341 return -EIO; in __ltc2983_fault_handler() 354 u32 reg = LTC2983_CHAN_START_ADDR(sensor->chan); in __ltc2983_chan_assign_common() [all …]
|
/linux/drivers/mfd/ |
H A D | ucb1x00-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/drivers/mfd/ucb1x00-core.c 8 * the ADC, interrupts, and accessing registers. It is designed 11 * to be used on other non-MCP-enabled hardware platforms. 35 * ucb1x00_io_set_dir - set IO direction 54 spin_lock_irqsave(&ucb->io_lock, flags); in ucb1x00_io_set_dir() 55 ucb->io_dir |= out; in ucb1x00_io_set_dir() 56 ucb->io_dir &= ~in; in ucb1x00_io_set_dir() 58 ucb1x00_reg_write(ucb, UCB_IO_DIR, ucb->io_dir); in ucb1x00_io_set_dir() 59 spin_unlock_irqrestore(&ucb->io_lock, flags); in ucb1x00_io_set_dir() [all …]
|
/linux/drivers/media/dvb-frontends/ |
H A D | dib7000m.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Linux-DVB Driver for DiBcom's DiB7000M and 4 * first generation DiB7000P-demodulator-family. 6 * Copyright (C) 2005-7 DiBcom (http://www.dibcom.fr/) 80 if (mutex_lock_interruptible(&state->i2c_buffer_lock) < 0) { in dib7000m_read_word() 85 state->i2c_write_buffer[0] = (reg >> 8) | 0x80; in dib7000m_read_word() 86 state->i2c_write_buffer[1] = reg & 0xff; in dib7000m_read_word() 88 memset(state->msg, 0, 2 * sizeof(struct i2c_msg)); in dib7000m_read_word() 89 state->msg[0].addr = state->i2c_addr >> 1; in dib7000m_read_word() 90 state->msg[0].flags = 0; in dib7000m_read_word() [all …]
|