/linux/Documentation/devicetree/bindings/iio/adc/ |
H A D | ti,tsc2046.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Oleksij Rempel <o.rempel@pengutronix.de> 18 - ti,tsc2046e-adc 26 vref-supply: 29 "#io-channel-cells": 32 '#address-cells': 35 '#size-cells': 39 - compatible [all …]
|
/linux/arch/arm/boot/dts/nxp/imx/ |
H A D | imx6qdl-skov-cpu-revc.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 7 compatible = "resistive-adc-touch"; 8 io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>, <&adc_ts 5>; 9 io-channel-names = "y", "z1", "z2", "x"; 10 touchscreen-min-pressure = <65000>; 11 touchscreen-inverted-y; 12 touchscreen-swapped-x-y; 13 touchscreen-x-plate-ohms = <300>; 14 touchscreen-y-plate-ohms = <800>; 19 pinctrl-names = "default"; [all …]
|
H A D | imx6dl-plym2m.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 7 /dts-v1/; 8 #include <dt-bindings/gpio/gpio.h> 9 #include <dt-bindings/leds/common.h> 17 stdout-path = &uart4; 21 compatible = "pwm-backlight"; 23 brightness-levels = <0 1000>; 24 num-interpolated-steps = <20>; 25 default-brightness-level = <19>; 26 power-supply = <®_12v0>; [all …]
|
H A D | imx6dl-victgo.dts | 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 7 /dts-v1/; 9 #include "imx6qdl-vicut1.dtsi" 15 gpio-keys { 16 compatible = "gpio-keys"; 17 pinctrl-names = "default"; 18 pinctrl-0 = <&pinctrl_gpiokeys>; 21 key-power { 25 wakeup-source; 28 key-enter { [all …]
|
/linux/arch/arm64/boot/dts/freescale/ |
H A D | imx8mp-skov-revb-lt6.dts | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 3 /dts-v1/; 5 #include "imx8mp-skov-reva.dtsi" 8 model = "SKOV IMX8MP CPU revB - LT6"; 9 compatible = "skov,imx8mp-skov-revb-lt6", "fsl,imx8mp"; 12 compatible = "resistive-adc-touch"; 13 io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>, <&adc_ts 5>; 14 io-channel-names = "y", "z1", "z2", "x"; 15 touchscreen-min-pressure = <65000>; 16 touchscreen-inverted-y; [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-bus-iio-adc-mcp3564 | 3 Contact: linux-iio@vger.kernel.org 6 circuit of the Delta-Sigma modulator. The different BOOST 12 Contact: linux-iio@vger.kernel.org 15 the current biasing circuit of the Delta-Sigma modulator. 19 Contact: linux-iio@vger.kernel.org 22 auto-zeroing algorithm (the input multiplexer and the ADC 26 input as VIN+/VIN-, one with VIN+/VIN- inverted. In this case the 30 ultra-low offset without any digital calibration. The resulting 39 Contact: linux-iio@vger.kernel.org 47 higher Oversampling Ratio values (over 256). To overcome this [all …]
|
/linux/sound/soc/codecs/ |
H A D | wm8974.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8974.c -- WM8974 ALSA Soc Audio driver 5 * Copyright 2006-2009 Wolfson Microelectronics PLC. 55 static const char *wm8974_companding[] = {"Off", "NC", "u-law", "A-law" }; 91 static const DECLARE_TLV_DB_SCALE(digital_tlv, -12750, 50, 1); 92 static const DECLARE_TLV_DB_SCALE(eq_tlv, -1200, 100, 0); 93 static const DECLARE_TLV_DB_SCALE(inpga_tlv, -1200, 75, 0); 94 static const DECLARE_TLV_DB_SCALE(spk_tlv, -5700, 100, 0); 103 SOC_ENUM("Playback De-emphasis", wm8974_enum[2]), 168 /* DAC / ADC oversampling */ [all …]
|
H A D | nau8325.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 // nau8325.c -- Nuvoton NAU8325 audio codec driver 30 #define CLK_PROC_BYPASS (-1) 192 static const DECLARE_TLV_DB_MINMAX_MUTE(dac_vol_tlv, -8000, 600); 195 SOC_ENUM("DAC Oversampling Rate", nau8325_dac_oversampl_enum), 219 snd_soc_dapm_to_component(w->dapm); in nau8325_dac_event() 224 regmap_update_bits(nau8325->regmap, NAU8325_R12_MUTE_CTRL, in nau8325_dac_event() 230 regmap_update_bits(nau8325->regmap, NAU8325_R12_MUTE_CTRL, in nau8325_dac_event() 235 return -EINVAL; in nau8325_dac_event() 245 snd_soc_dapm_to_component(w->dapm); in nau8325_powerup_event() [all …]
|
H A D | wm8770.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8770.c -- WM8770 ALSA SoC Audio driver 105 regcache_mark_dirty(wm8770->regmap); \ 114 static const DECLARE_TLV_DB_SCALE(adc_tlv, -1200, 100, 0); 115 static const DECLARE_TLV_DB_SCALE(dac_dig_tlv, -12750, 50, 1); 116 static const DECLARE_TLV_DB_SCALE(dac_alg_tlv, -12700, 100, 1); 187 SOC_SINGLE("ADC 128x Oversampling Switch", WM8770_MSTRCTRL, 3, 1, 0), 308 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in vout12supply_event() 325 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in vout34supply_event() 349 component = dai->component; in wm8770_set_fmt() [all …]
|
H A D | wm8985.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8985.c -- WM8985 / WM8758 ALSA SoC Audio driver 49 { 1, 0x0000 }, /* R1 - Power management 1 */ 50 { 2, 0x0000 }, /* R2 - Power management 2 */ 51 { 3, 0x0000 }, /* R3 - Power management 3 */ 52 { 4, 0x0050 }, /* R4 - Audio Interface */ 53 { 5, 0x0000 }, /* R5 - Companding control */ 54 { 6, 0x0140 }, /* R6 - Clock Gen control */ 55 { 7, 0x0000 }, /* R7 - Additional control */ 56 { 8, 0x0000 }, /* R8 - GPIO Control */ [all …]
|
H A D | wm8983.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * wm8983.c -- WM8983 ALSA SoC Audio driver 29 { 0x01, 0x0000 }, /* R1 - Power management 1 */ 30 { 0x02, 0x0000 }, /* R2 - Power management 2 */ 31 { 0x03, 0x0000 }, /* R3 - Power management 3 */ 32 { 0x04, 0x0050 }, /* R4 - Audio Interface */ 33 { 0x05, 0x0000 }, /* R5 - Companding control */ 34 { 0x06, 0x0140 }, /* R6 - Clock Gen control */ 35 { 0x07, 0x0000 }, /* R7 - Additional control */ 36 { 0x08, 0x0000 }, /* R8 - GPIO Control */ [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"); 68 /* ratio for input clk freq */ 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() 304 "Off", "NC", "u-law", "A-law" }; [all …]
|
H A D | nau8810.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * nau8810.c -- NAU8810 ALSA Soc Audio driver 169 struct soc_bytes_ext *params = (void *)kcontrol->private_value; in nau8810_eq_get() 174 val = (u16 *)ucontrol->value.bytes.data; in nau8810_eq_get() 176 for (i = 0; i < params->max / sizeof(u16); i++) { in nau8810_eq_get() 177 regmap_read(nau8810->regmap, reg + i, ®_val); in nau8810_eq_get() 178 /* conversion of 16-bit integers between native CPU format in nau8810_eq_get() 190 * cut-off frequency, bandwidth control, and equalizer path. 201 struct soc_bytes_ext *params = (void *)kcontrol->private_value; in nau8810_eq_put() 207 data = kmemdup(ucontrol->value.bytes.data, in nau8810_eq_put() [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 | 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" 54 int ratio; member 83 /* ratio for input clk freq */ 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() [all …]
|
H A D | nau8822.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // nau8822.c -- NAU8822 ALSA Soc Audio driver 8 // Co-author: John Hsu <kchsu0@nuvoton.com> 9 // Co-author: Seven Li <wtli@nuvoton.com> 185 struct soc_bytes_ext *params = (void *)kcontrol->private_value; in nau8822_eq_get() 190 val = (u16 *)ucontrol->value.bytes.data; in nau8822_eq_get() 192 for (i = 0; i < params->max / sizeof(u16); i++) { in nau8822_eq_get() 194 /* conversion of 16-bit integers between native CPU format in nau8822_eq_get() 206 * cut-off frequency, bandwidth control, and equalizer path. 217 struct soc_bytes_ext *params = (void *)kcontrol->private_value; in nau8822_eq_put() [all …]
|
/linux/drivers/iio/adc/ |
H A D | stm32-dfsdm-adc.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2017, STMicroelectronics - All Rights Reserved 10 #include <linux/dma-mapping.h> 11 #include <linux/iio/adc/stm32-dfsdm-adc.h> 14 #include <linux/iio/hw-consumer.h> 16 #include <linux/iio/timer/stm32-lptim-trigger.h> 17 #include <linux/iio/timer/stm32-timer-trigger.h> 29 #include "stm32-dfsdm.h" 37 /* Oversampling attribute default */ 40 /* Oversampling max values */ [all …]
|
H A D | ti-tsc2046.c | 1 // SPDX-License-Identifier: GPL-2.0 29 * - rate limiting: 31 * - hrtimer: 61 * conversion has 12-bit resolution, whereas with this bit high, the next 62 * conversion has 8-bit resolution. This driver is optimized for 12-bit mode. 68 * SER/DFR - The SER/DFR bit controls the reference mode, either single-ended 75 * auto-wake/suspend mode. In most case this bits should stay zero. 231 bit_count = DIV_ROUND_UP(time * NSEC_PER_USEC, priv->time_per_bit_ns); in tsc2046_adc_time_to_count() 234 …dev_dbg(&priv->spi->dev, "Effective speed %u, time per bit: %u, count bits: %u, count samples: %u\… in tsc2046_adc_time_to_count() 235 priv->effective_speed_hz, priv->time_per_bit_ns, in tsc2046_adc_time_to_count() [all …]
|
H A D | ad7606.c | 1 // SPDX-License-Identifier: GPL-2.0 152 * -SER/PAR 153 * -SEQEN 155 * -WR/BURST 156 * -DB4/SER1W 193 .name = "ad7605-4", 202 .name = "ad7606-8", 213 .name = "ad7606-6", 224 .name = "ad7606-4", 315 if (st->gpio_reset) { in ad7606_reset() [all …]
|
/linux/drivers/iio/humidity/ |
H A D | hts221_core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 132 err = regmap_read(hw->regmap, HTS221_REG_WHOAMI_ADDR, &data); in hts221_check_whoami() 134 dev_err(hw->dev, "failed to read whoami register\n"); in hts221_check_whoami() 139 dev_err(hw->dev, "wrong whoami {%02x vs %02x}\n", in hts221_check_whoami() 141 return -ENODEV; in hts221_check_whoami() 156 return -EINVAL; in hts221_update_odr() 158 err = regmap_update_bits(hw->regmap, HTS221_REG_CNTRL1_ADDR, in hts221_update_odr() 165 hw->odr = odr; in hts221_update_odr() 178 if (avg->avg_avl[i] == val) in hts221_update_avg() 182 return -EINVAL; in hts221_update_avg() [all …]
|
/linux/sound/soc/meson/ |
H A D | aiu-encoder-i2s.c | 1 // SPDX-License-Identifier: GPL-2.0 10 #include <sound/soc-dai.h> 58 return -EINVAL; in aiu_encoder_i2s_setup_desc() 68 return -EINVAL; in aiu_encoder_i2s_setup_desc() 94 dev_err(component->dev, "Unsupported i2s divider: %u\n", bs); in aiu_encoder_i2s_set_legacy_div() 95 return -EINVAL; in aiu_encoder_i2s_set_legacy_div() 118 * However, in 16 bits - 8ch mode, this factor needs to be in aiu_encoder_i2s_set_more_div() 124 dev_err(component->dev, in aiu_encoder_i2s_set_more_div() 126 return -EINVAL; in aiu_encoder_i2s_set_more_div() 139 bs - 1)); in aiu_encoder_i2s_set_more_div() [all …]
|
/linux/sound/pci/ice1712/ |
H A D | maya44.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 50 /* clock ratio identifiers for snd_wm8776_set_rate() */ 83 snd_vt1724_write_i2c(ice, wm->addr, in wm8776_write() 86 wm->regs[reg] = val; in wm8776_write() 96 val |= wm->regs[reg] & ~mask; in wm8776_write_bits() 97 if (val != wm->regs[reg]) { in wm8776_write_bits() 113 unsigned short offset; /* zero-value offset */ 126 .update = 0x180, /* update and zero-cross enable */ 134 .update = 0x100, /* zero-cross enable */ 150 /* headphone output: mute, -73..+6db (1db step) */ [all …]
|
H A D | aureon.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 11 * - we reuse the struct snd_akm4xxx record for storing the wm8770 codec data. 16 * - DAC digital volumes are not implemented in the mixer. 24 * added 64x/128x oversampling switch (should be 64x only for 96khz) 58 #define WM_DAC_ATTEN 0x00 /* DAC1-8 analog attenuation */ 60 #define WM_DAC_DIG_ATTEN 0x09 /* DAC1-8 digital attenuation */ 65 #define WM_DAC_CTRL2 0x15 /* de-emphasis and zefo-flag */ 68 #define WM_POWERDOWN 0x18 /* power-down controls */ 150 for (i = 7; i >= 0; i--) { in aureon_pca9554_write() 192 {"Internal Aux", "Wavetable", "Rear Line-In"}; in aureon_universe_inmux_info() [all …]
|
/linux/drivers/tty/serial/ |
H A D | atmel_serial.h | 1 /* SPDX-License-Identifier: GPL-2.0+ */ 27 #define ATMEL_US_STTTO BIT(11) /* Start Time-out */ 31 #define ATMEL_US_RETTO BIT(15) /* Rearm Time-out */ 81 #define ATMEL_US_MODE9 BIT(17) /* 9-bit Character Length */ 83 #define ATMEL_US_OVER BIT(19) /* Oversampling Mode */ 99 #define ATMEL_US_TIMEOUT BIT(8) /* Receiver Time-out */ 126 #define ATMEL_US_RTOR 0x24 /* Receiver Time-out Register for USART */ 127 #define ATMEL_UA_RTOR 0x28 /* Receiver Time-out Register for UART */ 128 #define ATMEL_US_TO GENMASK(15, 0) /* Time-out Value */ 133 #define ATMEL_US_FIDI 0x40 /* FI DI Ratio Register */
|
/linux/drivers/iio/accel/ |
H A D | bma400_core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * - Support for power management 9 * - Support events and interrupts 10 * - Create channel for step count 11 * - Create channel for sensor time 38 * The G-range selection may be one of 2g, 4g, 8, or 16g. The scale may 205 return &data->orientation; in bma400_accel_get_mount_matrix() 267 return -EINVAL; in usec_to_tapreg_raw() 278 ret = regmap_read(data->regmap, BMA400_TAP_CONFIG1, ®_val); in in_accel_gesture_tap_maxtomin_time_show() 303 return -EINVAL; in in_accel_gesture_tap_maxtomin_time_store() [all …]
|