| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/iio/adc/ |
| D | adi,ad7124.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 4 --- 5 $id: http://devicetree.org/schemas/iio/adc/adi,ad7124.yaml# 6 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 title: Analog Devices AD7124 ADC device driver 11 - Stefan Popa <stefan.popa@analog.com> 14 Bindings for the Analog Devices AD7124 ADC device. Datasheet can be 16 https://www.analog.com/media/en/technical-documentation/data-sheets/AD7124-8.pdf 21 - adi,ad7124-4 22 - adi,ad7124-8 [all …]
|
| D | st,stm32-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: "http://devicetree.org/schemas/iio/adc/st,stm32-adc.yaml#" 5 $schema: "http://devicetree.org/meta-schemas/core.yaml#" 7 title: STMicroelectronics STM32 ADC bindings 10 STM32 ADC is a successive approximation analog-to-digital converter. 11 It has several multiplexed input channels. Conversions can be performed 12 in single, continuous, scan or discontinuous mode. Result of the ADC is 13 stored in a left-aligned or right-aligned 32-bit data register. 17 voltage goes beyond the user-defined, higher or lower thresholds. [all …]
|
| D | adc.txt | 4 - bipolar : Boolean, if set the channel is used in bipolar mode. 5 - diff-channels : Differential channels muxed for this ADC. The first value 10 adc@0 { 11 compatible = "some,adc"; 15 diff-channels = <0 1>; 20 diff-channels = <2 3>;
|
| D | adi,ad7292.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/adi,ad7292.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Analog Devices AD7292 10-Bit Monitor and Control System 10 - Marcelo Schmitt <marcelo.schmitt1@gmail.com> 13 Analog Devices AD7292 10-Bit Monitor and Control System with ADC, DACs, 17 https://www.analog.com/media/en/technical-documentation/data-sheets/ad7292.pdf 22 - adi,ad7292 27 vref-supply: [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/iio/adc/ |
| D | st,stm32-adc.txt | 1 STMicroelectronics STM32 ADC device driver 3 STM32 ADC is a successive approximation analog-to-digital converter. 4 It has several multiplexed input channels. Conversions can be performed 5 in single, continuous, scan or discontinuous mode. Result of the ADC is 6 stored in a left-aligned or right-aligned 32-bit data register. 10 voltage goes beyond the user-defined, higher or lower thresholds. 12 Each STM32 ADC block can have up to 3 ADC instances. 16 - regular conversion can be done in sequence, running in background 17 - injected conversions have higher priority, and so have the ability to 21 Contents of a stm32 adc root node: [all …]
|
| /kernel/linux/linux-4.19/drivers/iio/adc/ |
| D | stm32-adc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * This file is part of STM32 ADC driver 5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved 11 #include <linux/dma-mapping.h> 15 #include <linux/iio/timer/stm32-lptim-trigger.h> 16 #include <linux/iio/timer/stm32-timer-trigger.h> 28 #include "stm32-adc-core.h" 33 /* BOOST bit must be set on STM32H7 when ADC clock is above 20MHz */ 36 #define STM32_ADC_CH_MAX 20 /* max number of channels */ 53 /* extsel - trigger mux selection value */ [all …]
|
| D | stx104.c | 35 #define STX104_IN_CHAN(chan, diff) { \ argument 43 .differential = diff \ 56 * struct stx104_iio - IIO device private data structure 57 * @chan_out_states: channels' output states 66 * struct stx104_gpio - GPIO device private data structure 90 adc_config = inb(priv->base + 11); in stx104_read_raw() 96 if (chan->output) { in stx104_read_raw() 97 *val = priv->chan_out_states[chan->channel]; in stx104_read_raw() 101 /* select ADC channel */ in stx104_read_raw() 102 outb(chan->channel | (chan->channel << 4), priv->base + 2); in stx104_read_raw() [all …]
|
| /kernel/linux/linux-5.10/drivers/iio/adc/ |
| D | stm32-adc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * This file is part of STM32 ADC driver 5 * Copyright (C) 2016, STMicroelectronics - All Rights Reserved 11 #include <linux/dma-mapping.h> 15 #include <linux/iio/timer/stm32-lptim-trigger.h> 16 #include <linux/iio/timer/stm32-timer-trigger.h> 29 #include "stm32-adc-core.h" 34 /* BOOST bit must be set on STM32H7 when ADC clock is above 20MHz */ 37 #define STM32_ADC_CH_MAX 20 /* max number of channels */ 55 /* extsel - trigger mux selection value */ [all …]
|
| D | stx104.c | 1 // SPDX-License-Identifier: GPL-2.0-only 27 #define STX104_IN_CHAN(chan, diff) { \ argument 35 .differential = diff \ 48 * struct stx104_iio - IIO device private data structure 49 * @chan_out_states: channels' output states 58 * struct stx104_gpio - GPIO device private data structure 82 adc_config = inb(priv->base + 11); in stx104_read_raw() 88 if (chan->output) { in stx104_read_raw() 89 *val = priv->chan_out_states[chan->channel]; in stx104_read_raw() 93 /* select ADC channel */ in stx104_read_raw() [all …]
|
| D | ad7292.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Analog Devices AD7292 SPI ADC driver 91 st->d8[0] = AD7292_RD_FLAG_MSK(addr); in ad7292_spi_reg_read() 93 ret = spi_write_then_read(st->spi, st->d8, 1, &st->d16, 2); in ad7292_spi_reg_read() 97 return be16_to_cpu(st->d16); in ad7292_spi_reg_read() 103 unsigned int shift = 16 - (8 * len); in ad7292_spi_subreg_read() 106 st->d8[0] = AD7292_RD_FLAG_MSK(addr); in ad7292_spi_subreg_read() 107 st->d8[1] = sub_addr; in ad7292_spi_subreg_read() 109 ret = spi_write_then_read(st->spi, st->d8, 2, &st->d16, len); in ad7292_spi_subreg_read() 113 return (be16_to_cpu(st->d16) >> shift); in ad7292_spi_subreg_read() [all …]
|
| /kernel/linux/linux-5.10/sound/soc/codecs/ |
| D | pcm186x.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments PCM186x Universal Audio ADC 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - https://www.ti.com 30 "avdd", /* Analog power supply. Connect to 3.3-V supply. */ 31 "dvdd", /* Digital power supply. Connect to 3.3-V supply. */ 32 "iovdd", /* I/O power supply. Connect to 3.3-V or 1.8-V. */ 45 static const DECLARE_TLV_DB_SCALE(pcm186x_pga_tlv, -1200, 50, 0); 48 SOC_DOUBLE_R_S_TLV("ADC Capture Volume", PCM186X_PGA_VAL_CH1_L, 49 PCM186X_PGA_VAL_CH1_R, 0, -24, 80, 7, 0, 55 PCM186X_PGA_VAL_CH1_R, 0, -24, 80, 7, 0, [all …]
|
| D | wm8978.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8978.c -- WM8978 ALSA SoC Audio Codec driver 5 * Copyright (C) 2009-2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de> 7 * Copyright 2006-2009 Wolfson Microelectronics PLC. 106 static const char *wm8978_companding[] = {"Off", "NC", "u-law", "A-law"}; 133 static const DECLARE_TLV_DB_SCALE(digital_tlv, -12750, 50, 1); 134 static const DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 135 static const DECLARE_TLV_DB_SCALE(inpga_tlv, -1200, 75, 0); 136 static const DECLARE_TLV_DB_SCALE(spk_tlv, -5700, 100, 0); 137 static const DECLARE_TLV_DB_SCALE(boost_tlv, -1500, 300, 1); [all …]
|
| D | ad1836.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * Copyright 2009-2011 Analog Devices Inc. 38 * AD1836 volume/mute/de-emphasis etc. controls 54 SOC_DOUBLE("ADC" #x " Capture Switch", AD1836_ADC_CTRL2, \ 94 { "ADC", NULL, "ADC1IN" }, 95 { "ADC", NULL, "ADC2IN" }, 99 /* ADC high-pass filter */ 100 SOC_SINGLE("ADC High Pass Filter Switch", AD1836_ADC_CTRL1, 103 /* DAC de-emphasis */ 110 SND_SOC_DAPM_ADC("ADC", "Capture", SND_SOC_NOPM, 0, 0), [all …]
|
| /kernel/linux/linux-4.19/sound/soc/codecs/ |
| D | pcm186x.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Texas Instruments PCM186x Universal Audio ADC 5 * Copyright (C) 2015-2017 Texas Instruments Incorporated - http://www.ti.com 30 "avdd", /* Analog power supply. Connect to 3.3-V supply. */ 31 "dvdd", /* Digital power supply. Connect to 3.3-V supply. */ 32 "iovdd", /* I/O power supply. Connect to 3.3-V or 1.8-V. */ 45 static const DECLARE_TLV_DB_SCALE(pcm186x_pga_tlv, -1200, 50, 0); 48 SOC_DOUBLE_R_S_TLV("ADC Capture Volume", PCM186X_PGA_VAL_CH1_L, 49 PCM186X_PGA_VAL_CH1_R, 0, -24, 80, 7, 0, 55 PCM186X_PGA_VAL_CH1_R, 0, -24, 80, 7, 0, [all …]
|
| D | wm8978.c | 2 * wm8978.c -- WM8978 ALSA SoC Audio Codec driver 4 * Copyright (C) 2009-2010 Guennadi Liakhovetski <g.liakhovetski@gmx.de> 6 * Copyright 2006-2009 Wolfson Microelectronics PLC. 109 static const char *wm8978_companding[] = {"Off", "NC", "u-law", "A-law"}; 136 static const DECLARE_TLV_DB_SCALE(digital_tlv, -12750, 50, 1); 137 static const DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 138 static const DECLARE_TLV_DB_SCALE(inpga_tlv, -1200, 75, 0); 139 static const DECLARE_TLV_DB_SCALE(spk_tlv, -5700, 100, 0); 140 static const DECLARE_TLV_DB_SCALE(boost_tlv, -1500, 300, 1); 148 SOC_ENUM("ADC Companding", adc_compand), [all …]
|
| D | ad1836.c | 5 * Copyright 2009-2011 Analog Devices Inc. 7 * Licensed under the GPL-2 or later. 39 * AD1836 volume/mute/de-emphasis etc. controls 55 SOC_DOUBLE("ADC" #x " Capture Switch", AD1836_ADC_CTRL2, \ 95 { "ADC", NULL, "ADC1IN" }, 96 { "ADC", NULL, "ADC2IN" }, 100 /* ADC high-pass filter */ 101 SOC_SINGLE("ADC High Pass Filter Switch", AD1836_ADC_CTRL1, 104 /* DAC de-emphasis */ 111 SND_SOC_DAPM_ADC("ADC", "Capture", SND_SOC_NOPM, 0, 0), [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/mux/ |
| D | adi,adg792a.txt | 4 - compatible : "adi,adg792a" or "adi,adg792g" 5 - #mux-control-cells : <0> if parallel (the three muxes are bound together 8 * Standard mux-controller bindings as described in mux-controller.txt 11 - gpio-controller : if present, #gpio-cells below is required. 12 - #gpio-cells : should be <2> 13 - First cell is the GPO line number, i.e. 0 or 1 14 - Second cell is used to specify active high (0) 18 - idle-state : if present, array of states that the mux controllers will have 32 mux: mux-controller@50 { 35 #mux-control-cells = <1>; [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/mux/ |
| D | adi,adg792a.txt | 4 - compatible : "adi,adg792a" or "adi,adg792g" 5 - #mux-control-cells : <0> if parallel (the three muxes are bound together 8 * Standard mux-controller bindings as described in mux-controller.txt 11 - gpio-controller : if present, #gpio-cells below is required. 12 - #gpio-cells : should be <2> 13 - First cell is the GPO line number, i.e. 0 or 1 14 - Second cell is used to specify active high (0) 18 - idle-state : if present, array of states that the mux controllers will have 32 mux: mux-controller@50 { 35 #mux-control-cells = <1>; [all …]
|
| /kernel/linux/linux-5.10/sound/soc/sunxi/ |
| D | sun8i-codec.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 6 * (C) Copyright 2010-2016 9 * Mylène Josserand <mylene.josserand@free-electrons.com> 23 #include <sound/soc-dapm.h> 114 regcache_cache_only(scodec->regmap, false); in sun8i_codec_runtime_resume() 116 ret = regcache_sync(scodec->regmap); in sun8i_codec_runtime_resume() 129 regcache_cache_only(scodec->regmap, true); in sun8i_codec_runtime_suspend() 130 regcache_mark_dirty(scodec->regmap); in sun8i_codec_runtime_suspend() 164 return -EINVAL; in sun8i_codec_get_hw_rate() 182 return -EINVAL; in sun8i_set_fmt() [all …]
|
| /kernel/linux/linux-4.19/drivers/staging/comedi/drivers/ |
| D | amplc_pci230.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 * COMEDI - Linux Control and Measurement Device Interface 35 * --------- --------- 43 * The AI subdevice has 16 single-ended channels or 8 differential 44 * channels. 46 * The PCI230 and PCI260 cards have 12-bit resolution. The PCI230+ and 47 * PCI260+ cards have 16-bit resolution. 51 * or PCI260 then it actually uses a "pseudo-differential" mode where the 62 * 0 => [-10, +10] V 63 * 1 => [-5, +5] V [all …]
|
| D | ni_daq_700.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Driver for DAQCard-700 DIO/AI 7 * COMEDI - Linux Control and Measurement Device Interface 13 * Description: National Instruments PCMCIA DAQCard-700 16 * Devices: [National Instruments] PCMCIA DAQ-Card-700 (ni_daq_700) 20 * The daqcard-700 appears in Comedi as a digital I/O subdevice (0) with 21 * 16 channels and a analog input subdevice (1) with 16 single-ended channels 22 * or 8 differential channels, and three input ranges. 24 * Digital: The channel 0 corresponds to the daqcard-700's output 27 * Digital direction configuration: channels 0-7 output, 8-15 input. [all …]
|
| /kernel/linux/linux-5.10/drivers/staging/comedi/drivers/ |
| D | amplc_pci230.c | 1 // SPDX-License-Identifier: GPL-2.0+ 8 * COMEDI - Linux Control and Measurement Device Interface 35 * --------- --------- 43 * The AI subdevice has 16 single-ended channels or 8 differential 44 * channels. 46 * The PCI230 and PCI260 cards have 12-bit resolution. The PCI230+ and 47 * PCI260+ cards have 16-bit resolution. 51 * or PCI260 then it actually uses a "pseudo-differential" mode where the 62 * 0 => [-10, +10] V 63 * 1 => [-5, +5] V [all …]
|
| D | ni_daq_700.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Driver for DAQCard-700 DIO/AI 7 * COMEDI - Linux Control and Measurement Device Interface 13 * Description: National Instruments PCMCIA DAQCard-700 16 * Devices: [National Instruments] PCMCIA DAQ-Card-700 (ni_daq_700) 20 * The daqcard-700 appears in Comedi as a digital I/O subdevice (0) with 21 * 16 channels and a analog input subdevice (1) with 16 single-ended channels 22 * or 8 differential channels, and three input ranges. 24 * Digital: The channel 0 corresponds to the daqcard-700's output 27 * Digital direction configuration: channels 0-7 output, 8-15 input. [all …]
|
| /kernel/linux/linux-4.19/drivers/input/keyboard/ |
| D | sun4i-lradc-keys.c | 2 * Allwinner sun4i low res adc attached tablet keys driver 22 * There are 2 channels, currently this driver only supports channel 0 since 85 u32 i, ints, val, voltage, diff, keycode = 0, closest = 0xffffffff; in sun4i_lradc_irq() local 87 ints = readl(lradc->base + LRADC_INTS); in sun4i_lradc_irq() 95 input_report_key(lradc->input, lradc->chan0_keycode, 0); in sun4i_lradc_irq() 96 lradc->chan0_keycode = 0; in sun4i_lradc_irq() 99 if ((ints & CHAN0_KEYDOWN_IRQ) && lradc->chan0_keycode == 0) { in sun4i_lradc_irq() 100 val = readl(lradc->base + LRADC_DATA0) & 0x3f; in sun4i_lradc_irq() 101 voltage = val * lradc->vref / 63; in sun4i_lradc_irq() 103 for (i = 0; i < lradc->chan0_map_count; i++) { in sun4i_lradc_irq() [all …]
|
| /kernel/linux/linux-5.10/drivers/input/keyboard/ |
| D | sun4i-lradc-keys.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Allwinner sun4i low res adc attached tablet keys driver 13 * There are 2 channels, currently this driver only supports channel 0 since 58 /* struct lradc_variant - Describe sun4i-a10-lradc-keys hardware variant 97 u32 i, ints, val, voltage, diff, keycode = 0, closest = 0xffffffff; in sun4i_lradc_irq() local 99 ints = readl(lradc->base + LRADC_INTS); in sun4i_lradc_irq() 107 input_report_key(lradc->input, lradc->chan0_keycode, 0); in sun4i_lradc_irq() 108 lradc->chan0_keycode = 0; in sun4i_lradc_irq() 111 if ((ints & CHAN0_KEYDOWN_IRQ) && lradc->chan0_keycode == 0) { in sun4i_lradc_irq() 112 val = readl(lradc->base + LRADC_DATA0) & 0x3f; in sun4i_lradc_irq() [all …]
|