| /kernel/linux/linux-5.10/drivers/iio/adc/ |
| D | mcp3911.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for Microchip MCP3911, Two-channel Analog Front End 52 struct regulator *vref; member 57 static int mcp3911_read(struct mcp3911 *adc, u8 reg, u32 *val, u8 len) in mcp3911_read() argument 61 reg = MCP3911_REG_READ(reg, adc->dev_addr); in mcp3911_read() 62 ret = spi_write_then_read(adc->spi, ®, 1, val, len); in mcp3911_read() 67 *val >>= ((4 - len) * 8); in mcp3911_read() 68 dev_dbg(&adc->spi->dev, "reading 0x%x from register 0x%x\n", *val, in mcp3911_read() 73 static int mcp3911_write(struct mcp3911 *adc, u8 reg, u32 val, u8 len) in mcp3911_write() argument 75 dev_dbg(&adc->spi->dev, "writing 0x%x to register 0x%x\n", val, reg); in mcp3911_write() [all …]
|
| D | max1241.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * MAX1241 low-power, 12-bit serial ADC 5 * Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX1240-MAX1241.pdf 26 struct regulator *vref; member 42 static int max1241_read(struct max1241 *adc) in max1241_read() argument 58 .rx_buf = &adc->data, in max1241_read() 63 return spi_sync_transfer(adc->spi, xfers, ARRAY_SIZE(xfers)); in max1241_read() 71 struct max1241 *adc = iio_priv(indio_dev); in max1241_read_raw() local 75 mutex_lock(&adc->lock); in max1241_read_raw() 77 if (adc->shutdown) { in max1241_read_raw() [all …]
|
| D | lpc18xx_adc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IIO ADC driver for NXP LPC18xx ADC 8 * - Hardware triggers 9 * - Burst mode 10 * - Interrupts 11 * - DMA 27 /* LPC18XX ADC registers and bits */ 43 struct regulator *vref; member 70 static int lpc18xx_adc_read_chan(struct lpc18xx_adc *adc, unsigned int ch) in lpc18xx_adc_read_chan() argument 75 reg = adc->cr_reg | BIT(ch) | LPC18XX_ADC_CR_START_NOW; in lpc18xx_adc_read_chan() [all …]
|
| D | npcm_adc.c | 1 // SPDX-License-Identifier: GPL-2.0 26 struct regulator *vref; member 30 /* ADC registers */ 50 /* ADC General Definition */ 80 regtemp = ioread32(info->regs + NPCM_ADCCON); in npcm_adc_isr() 82 iowrite32(regtemp, info->regs + NPCM_ADCCON); in npcm_adc_isr() 83 wake_up_interruptible(&info->wq); in npcm_adc_isr() 84 info->int_status = true; in npcm_adc_isr() 95 /* Select ADC channel */ in npcm_adc_read() 96 regtemp = ioread32(info->regs + NPCM_ADCCON); in npcm_adc_read() [all …]
|
| D | fsl-imx25-gcq.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2014-2015 Pengutronix, Markus Pargmann <mpa@pengutronix.de> 6 * connected to the imx25 ADC. 9 #include <dt-bindings/iio/adc/fsl-imx25-gcq.h> 13 #include <linux/mfd/imx25-tsadc.h> 22 static const char * const driver_name = "mx25-gcq"; 41 struct regulator *vref[4]; member 86 regmap_read(priv->regs, MX25_ADCQ_SR, &stats); in mx25_gcq_irq() 89 regmap_update_bits(priv->regs, MX25_ADCQ_MR, in mx25_gcq_irq() 91 complete(&priv->completed); in mx25_gcq_irq() [all …]
|
| /kernel/linux/linux-6.6/drivers/iio/adc/ |
| D | max1241.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * MAX1241 low-power, 12-bit serial ADC 5 * Datasheet: https://datasheets.maximintegrated.com/en/ds/MAX1240-MAX1241.pdf 25 struct regulator *vref; member 41 static int max1241_read(struct max1241 *adc) in max1241_read() argument 57 .rx_buf = &adc->data, in max1241_read() 62 return spi_sync_transfer(adc->spi, xfers, ARRAY_SIZE(xfers)); in max1241_read() 70 struct max1241 *adc = iio_priv(indio_dev); in max1241_read_raw() local 74 mutex_lock(&adc->lock); in max1241_read_raw() 76 if (adc->shutdown) { in max1241_read_raw() [all …]
|
| D | lpc18xx_adc.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * IIO ADC driver for NXP LPC18xx ADC 8 * - Hardware triggers 9 * - Burst mode 10 * - Interrupts 11 * - DMA 26 /* LPC18XX ADC registers and bits */ 42 struct regulator *vref; member 69 static int lpc18xx_adc_read_chan(struct lpc18xx_adc *adc, unsigned int ch) in lpc18xx_adc_read_chan() argument 74 reg = adc->cr_reg | BIT(ch) | LPC18XX_ADC_CR_START_NOW; in lpc18xx_adc_read_chan() [all …]
|
| D | mcp3911.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Driver for Microchip MCP3911, Two-channel Analog Front End 73 struct regulator *vref; member 87 static int mcp3911_read(struct mcp3911 *adc, u8 reg, u32 *val, u8 len) in mcp3911_read() argument 91 reg = MCP3911_REG_READ(reg, adc->dev_addr); in mcp3911_read() 92 ret = spi_write_then_read(adc->spi, ®, 1, val, len); in mcp3911_read() 97 *val >>= ((4 - len) * 8); in mcp3911_read() 98 dev_dbg(&adc->spi->dev, "reading 0x%x from register 0x%lx\n", *val, in mcp3911_read() 103 static int mcp3911_write(struct mcp3911 *adc, u8 reg, u32 val, u8 len) in mcp3911_write() argument 105 dev_dbg(&adc->spi->dev, "writing 0x%x to register 0x%x\n", val, reg); in mcp3911_write() [all …]
|
| D | imx93_adc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * NXP i.MX93 ADC driver 22 #define IMX93_ADC_DRIVER_NAME "imx93-adc" 42 /* ADC bit shift */ 61 /* ADC status */ 76 struct regulator *vref; member 102 static void imx93_adc_power_down(struct imx93_adc *adc) in imx93_adc_power_down() argument 107 mcr = readl(adc->regs + IMX93_ADC_MCR); in imx93_adc_power_down() 109 writel(mcr, adc->regs + IMX93_ADC_MCR); in imx93_adc_power_down() 111 ret = readl_poll_timeout(adc->regs + IMX93_ADC_MSR, msr, in imx93_adc_power_down() [all …]
|
| D | imx8qxp-adc.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * NXP i.MX8QXP ADC driver 30 #define ADC_DRIVER_NAME "imx8qxp-adc" 46 /* ADC bit shift */ 75 /* ADC PARAMETER*/ 96 struct regulator *vref; member 97 /* Serialise ADC channel reads */ 123 static void imx8qxp_adc_reset(struct imx8qxp_adc *adc) in imx8qxp_adc_reset() argument 128 ctrl = readl(adc->regs + IMX8QXP_ADR_ADC_CTRL); in imx8qxp_adc_reset() 130 writel(ctrl, adc->regs + IMX8QXP_ADR_ADC_CTRL); in imx8qxp_adc_reset() [all …]
|
| D | npcm_adc.c | 1 // SPDX-License-Identifier: GPL-2.0 34 struct regulator *vref; member 48 /* ADC registers */ 67 /* ADC General Definition */ 106 regtemp = ioread32(info->regs + NPCM_ADCCON); in npcm_adc_isr() 108 iowrite32(regtemp, info->regs + NPCM_ADCCON); in npcm_adc_isr() 109 wake_up_interruptible(&info->wq); in npcm_adc_isr() 110 info->int_status = true; in npcm_adc_isr() 121 /* Select ADC channel */ in npcm_adc_read() 122 regtemp = ioread32(info->regs + NPCM_ADCCON); in npcm_adc_read() [all …]
|
| D | fsl-imx25-gcq.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2014-2015 Pengutronix, Markus Pargmann <mpa@pengutronix.de> 6 * connected to the imx25 ADC. 9 #include <dt-bindings/iio/adc/fsl-imx25-gcq.h> 13 #include <linux/mfd/imx25-tsadc.h> 22 static const char * const driver_name = "mx25-gcq"; 41 struct regulator *vref[4]; member 86 regmap_read(priv->regs, MX25_ADCQ_SR, &stats); in mx25_gcq_irq() 89 regmap_update_bits(priv->regs, MX25_ADCQ_MR, in mx25_gcq_irq() 91 complete(&priv->completed); in mx25_gcq_irq() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/iio/adc/ |
| 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 10 STM32 ADC is a successive approximation analog-to-digital converter. 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. 19 Each STM32 ADC block can have up to 3 ADC instances. [all …]
|
| D | cosmic,10001-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/cosmic,10001-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Cosmic Circuits CC-10001 ADC 10 - Jonathan Cameron <jic23@kernel.org> 13 Cosmic Circuits 10001 10-bit ADC device. 17 const: cosmic,10001-adc 22 adc-reserved-channels: 31 clock-names: [all …]
|
| D | aspeed,ast2600-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/aspeed,ast2600-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: ADC that forms part of an ASPEED server management processor. 10 - Billy Tsai <billy_tsai@aspeedtech.com> 13 • 10-bits resolution for 16 voltage channels. 16 • Channel scanning can be non-continuous. 17 • Programmable ADC clock frequency. 21 • Built-in a compensating method. [all …]
|
| D | fsl,imx7d-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/fsl,imx7d-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale ADC found on the imx7d SoC 10 - Haibo Chen <haibo.chen@nxp.com> 14 const: fsl,imx7d-adc 25 clock-names: 26 const: adc 28 vref-supply: true [all …]
|
| D | nxp,lpc1850-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/nxp,lpc1850-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NXP LPC1850 ADC 10 - Jonathan Cameron <jic23@kernel.org> 13 Supports the ADC found on the LPC1850 SoC. 17 const: nxp,lpc1850-adc 28 vref-supply: true 33 "#io-channel-cells": [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/iio/adc/ |
| 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. 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. 19 Each STM32 ADC block can have up to 3 ADC instances. [all …]
|
| D | cosmic,10001-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/cosmic,10001-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Cosmic Circuits CC-10001 ADC 10 - Jonathan Cameron <jic23@kernel.org> 13 Cosmic Circuits 10001 10-bit ADC device. 17 const: cosmic,10001-adc 22 adc-reserved-channels: 31 clock-names: [all …]
|
| D | fsl,imx7d-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/fsl,imx7d-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Freescale ADC found on the imx7d SoC 10 - Haibo Chen <haibo.chen@nxp.com> 14 const: fsl,imx7d-adc 25 clock-names: 26 const: adc 28 vref-supply: true [all …]
|
| D | renesas,gyroadc.txt | 1 * Renesas R-Car GyroADC device driver 5 are sampled by the GyroADC block in a round-robin fashion and the result 9 - compatible: Should be "<soc-specific>", "renesas,rcar-gyroadc". 10 The <soc-specific> should be one of: 11 renesas,r8a7791-gyroadc - for the GyroADC block present 13 renesas,r8a7792-gyroadc - for the GyroADC with interrupt 15 - reg: Address and length of the register set for the device 16 - clocks: References to all the clocks specified in the clock-names 18 Documentation/devicetree/bindings/clock/clock-bindings.txt. 19 - clock-names: Shall contain "fck". The "fck" is the GyroADC block clock. [all …]
|
| D | nxp,lpc1850-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/nxp,lpc1850-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: NXP LPC1850 ADC bindings 10 - Joachim Eastwood <manabian@gmail.com> 13 Supports the ADC found on the LPC1850 SoC. 17 const: nxp,lpc1850-adc 28 vref-supply: true 33 "#io-channel-cells": [all …]
|
| /kernel/linux/patches/linux-5.10/imx8mm_patch/patches/drivers/ |
| D | 0023_linux_drivers_iio.patch | 7 Change-Id: I60767bd38b95d43a7415b9e21575ad772380ae56 9 diff --git a/drivers/iio/adc/Kconfig b/drivers/iio/adc/Kconfig 11 --- a/drivers/iio/adc/Kconfig 12 +++ b/drivers/iio/adc/Kconfig 13 @@ -530,6 +530,16 @@ config IMX7D_ADC 18 + tristate "IMX8QXP ADC driver" 22 + Say yes here to build support for IMX8QXP ADC. 28 tristate "LP8788 ADC driver" 30 diff --git a/drivers/iio/adc/Makefile b/drivers/iio/adc/Makefile 32 --- a/drivers/iio/adc/Makefile [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/staging/iio/adc/ |
| D | spear-adc.txt | 1 * ST SPEAr ADC device driver 4 - compatible: Should be "st,spear600-adc" 5 - reg: Address and length of the register set for the device 6 - interrupts: Should contain the ADC interrupt 7 - sampling-frequency: Default sampling frequency 10 - vref-external: External voltage reference in milli-volts. If omitted 12 - average-samples: Number of samples to generate an average value. If 17 adc: adc@d8200000 { 18 compatible = "st,spear600-adc"; 20 interrupt-parent = <&vic1>; [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/staging/iio/adc/ |
| D | spear-adc.txt | 1 * ST SPEAr ADC device driver 4 - compatible: Should be "st,spear600-adc" 5 - reg: Address and length of the register set for the device 6 - interrupts: Should contain the ADC interrupt 7 - sampling-frequency: Default sampling frequency 10 - vref-external: External voltage reference in milli-volts. If omitted 12 - average-samples: Number of samples to generate an average value. If 17 adc: adc@d8200000 { 18 compatible = "st,spear600-adc"; 20 interrupt-parent = <&vic1>; [all …]
|