/linux/Documentation/devicetree/bindings/mfd/ |
H A D | st,stm32-lptimer.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mfd/st,stm32-lptimer.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Low-Power Timers 10 The STM32 Low-Power Timer (LPTIM) is a 16-bit timer that provides several 12 - PWM output (with programmable prescaler, configurable polarity) 13 - Trigger source for STM32 ADC/DAC (LPTIM_OUT) 14 - Several counter modes: 15 - quadrature encoder to detect angular position and direction of rotary [all …]
|
H A D | st,stm32-timers.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mfd/st,stm32-timers.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Timers 10 This hardware block provides 3 types of timer along with PWM functionality: 11 - advanced-control timers consist of a 16-bit auto-reload counter driven 14 - general-purpose timers consist of a 16-bit or 32-bit auto-reload counter 16 - basic timers consist of a 16-bit auto-reload counter driven by a 20 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> [all …]
|
/linux/drivers/iio/trigger/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 7 menu "Triggers - standalone" 10 tristate "High resolution timer trigger" 13 Provides a frequency based IIO trigger using high resolution 17 module will be called iio-trig-hrtimer. 20 tristate "Generic interrupt trigger" 23 trigger. This may be provided by a gpio driver for example. 26 module will be called iio-trig-interrupt. 29 tristate "STM32 Low-Power Timer Trigger" 32 Select this option to enable STM32 Low-Power Timer Trigger. [all …]
|
H A D | stm32-lptimer-trigger.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STM32 Low-Power Timer Trigger driver 9 * Inspired by Benjamin Gaignard's stm32-timer-trigger driver 12 #include <linux/iio/timer/stm32-lptim-trigger.h> 13 #include <linux/mfd/stm32-lptimer.h> 19 /* List Low-Power Timer triggers */ 34 if (indio_dev->modes & INDIO_HARDWARE_TRIGGERED) in stm32_lptim_validate_device() 37 return -EINVAL; in stm32_lptim_validate_device() 46 * @trig: trigger to be checked 48 * return true if the trigger is a valid STM32 IIO Low-Power Timer Trigger [all …]
|
H A D | stm32-timer-trigger.c | 1 // SPDX-License-Identifier: GPL-2.0 11 #include <linux/iio/timer/stm32-timer-trigger.h> 12 #include <linux/iio/trigger.h> 13 #include <linux/mfd/stm32-timers.h> 22 /* List the triggers created by each timer */ 43 /* List the triggers accepted by each timer */ 50 { }, /* timer 6 */ 51 { }, /* timer 7 */ 54 { }, /* timer 10 */ 55 { }, /* timer 11 */ [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 3 # Makefile for triggers not associated with iio-devices 8 obj-$(CONFIG_IIO_HRTIMER_TRIGGER) += iio-trig-hrtimer.o 9 obj-$(CONFIG_IIO_INTERRUPT_TRIGGER) += iio-trig-interrupt.o 10 obj-$(CONFIG_IIO_STM32_LPTIMER_TRIGGER) += stm32-lptimer-trigger.o 11 obj-$(CONFIG_IIO_STM32_TIMER_TRIGGER) += stm32-timer-trigger.o 12 obj-$(CONFIG_IIO_SYSFS_TRIGGER) += iio-trig-sysfs.o 13 obj-$(CONFIG_IIO_TIGHTLOOP_TRIGGER) += iio-trig-loop.o
|
/linux/arch/arm/boot/dts/st/ |
H A D | stm32f746.dtsi | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 43 #include "../armv7-m.dtsi" 44 #include <dt-bindings/clock/stm32fx-clock.h> 45 #include <dt-bindings/mfd/stm32f7-rcc.h> 48 #address-cells = <1>; 49 #size-cells = <1>; 52 clk_hse: clk-hse { 53 #clock-cells = <0>; 54 compatible = "fixed-clock"; [all …]
|
H A D | stm32f429.dtsi | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 22 * MA 02110-1301 USA 48 #include "../armv7-m.dtsi" 49 #include <dt-bindings/clock/stm32fx-clock.h> 50 #include <dt-bindings/mfd/stm32f4-rcc.h> 53 #address-cells = <1>; 54 #size-cells = <1>; 57 clk_hse: clk-hse { 58 #clock-cells = <0>; [all …]
|
H A D | stm32mp131.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 3 * Copyright (C) STMicroelectronics 2021 - All Rights Reserved 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/stm32mp13-clks.h> 8 #include <dt-bindings/reset/stm32mp13-resets.h> 11 #address-cells = <1>; 12 #size-cells = <1>; 15 #address-cells = <1>; 16 #size-cells = <0>; 19 compatible = "arm,cortex-a7"; [all …]
|
H A D | stm32mp151.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause) 3 * Copyright (C) STMicroelectronics 2017 - All Rights Reserved 6 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #include <dt-bindings/clock/stm32mp1-clks.h> 8 #include <dt-bindings/reset/stm32mp1-resets.h> 11 #address-cells = <1>; 12 #size-cells = <1>; 15 #address-cells = <1>; 16 #size-cells = <0>; 19 compatible = "arm,cortex-a7"; [all …]
|
H A D | stm32h743.dtsi | 2 * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> 4 * This file is dual-licensed: you can use it either under the terms 43 #include "../armv7-m.dtsi" 44 #include <dt-bindings/clock/stm32h7-clks.h> 45 #include <dt-bindings/mfd/stm32h7-rcc.h> 46 #include <dt-bindings/interrupt-controller/irq.h> 49 #address-cells = <1>; 50 #size-cells = <1>; 53 clk_hse: clk-hse { 54 #clock-cells = <0>; [all …]
|
H A D | stm32f469-disco.dts | 2 * Copyright 2016 - Lee Jones <lee.jones@linaro.org> 4 * This file is dual-licensed: you can use it either under the terms 22 * MA 02110-1301 USA 48 /dts-v1/; 50 #include "stm32f469-pinctrl.dtsi" 51 #include <dt-bindings/gpio/gpio.h> 52 #include <dt-bindings/input/input.h> 55 model = "STMicroelectronics STM32F469i-DISCO board"; 56 compatible = "st,stm32f469i-disco", "st,stm32f469"; 60 stdout-path = "serial0:115200n8"; [all …]
|
H A D | stm32f769-disco.dts | 2 * Copyright 2017 - Vikas MANOCHA <vikas.manocha@st.com> 4 * This file is dual-licensed: you can use it either under the terms 43 /dts-v1/; 45 #include "stm32f769-pinctrl.dtsi" 46 #include <dt-bindings/input/input.h> 47 #include <dt-bindings/gpio/gpio.h> 50 model = "STMicroelectronics STM32F769-DISCO board"; 51 compatible = "st,stm32f769-disco", "st,stm32f769"; 55 stdout-path = "serial0:115200n8"; 63 reserved-memory { [all …]
|
H A D | stm32746g-eval.dts | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 43 /dts-v1/; 45 #include "stm32f746-pinctrl.dtsi" 46 #include <dt-bindings/input/input.h> 47 #include <dt-bindings/interrupt-controller/irq.h> 50 model = "STMicroelectronics STM32746g-EVAL board"; 51 compatible = "st,stm32746g-eval", "st,stm32f746"; 55 stdout-path = "serial0:115200n8"; 68 compatible = "gpio-leds"; [all …]
|
H A D | stm32429i-eval.dts | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 22 * MA 02110-1301 USA 48 /dts-v1/; 50 #include "stm32f429-pinctrl.dtsi" 51 #include <dt-bindings/input/input.h> 52 #include <dt-bindings/gpio/gpio.h> 53 #include <dt-bindings/media/video-interfaces.h> 56 model = "STMicroelectronics STM32429i-EVAL board"; 57 compatible = "st,stm32429i-eval", "st,stm32f429"; [all …]
|
H A D | stm32f429-disco.dts | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 22 * MA 02110-1301 USA 48 /dts-v1/; 50 #include "stm32f429-pinctrl.dtsi" 51 #include <dt-bindings/input/input.h> 52 #include <dt-bindings/interrupt-controller/irq.h> 53 #include <dt-bindings/gpio/gpio.h> 56 model = "STMicroelectronics STM32F429i-DISCO board"; 57 compatible = "st,stm32f429i-disco", "st,stm32f429"; [all …]
|
/linux/drivers/counter/ |
H A D | stm32-timer-cnt.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STM32 Timer Encoder and Counter driver 12 #include <linux/mfd/stm32-timers.h> 65 regmap_read(priv->regmap, TIM_CNT, &cnt); in stm32_count_read() 77 regmap_read(priv->regmap, TIM_ARR, &ceiling); in stm32_count_write() 79 return -EINVAL; in stm32_count_write() 81 return regmap_write(priv->regmap, TIM_CNT, val); in stm32_count_write() 91 regmap_read(priv->regmap, TIM_SMCR, &smcr); in stm32_count_function_read() 107 return -EINVAL; in stm32_count_function_read() 123 if (!priv->has_encoder) in stm32_count_function_write() [all …]
|
H A D | stm32-lptimer-cnt.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * STM32 Low-Power Timer Encoder and Counter driver 9 * Inspired by 104-quad-8 and stm32-timer-trigger drivers. 15 #include <linux/mfd/stm32-lptimer.h> 37 ret = regmap_read(priv->regmap, STM32_LPTIM_CR, &val); in stm32_lptim_is_enabled() 51 ret = regmap_write(priv->regmap, STM32_LPTIM_CR, val); in stm32_lptim_set_enable_state() 56 clk_disable(priv->clk); in stm32_lptim_set_enable_state() 57 priv->enabled = false; in stm32_lptim_set_enable_state() 61 /* LP timer must be enabled before writing CMP & ARR */ in stm32_lptim_set_enable_state() 62 ret = regmap_write(priv->regmap, STM32_LPTIM_ARR, priv->ceiling); in stm32_lptim_set_enable_state() [all …]
|
/linux/drivers/iio/adc/ |
H A 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 12 #include <linux/dma-mapping.h> 16 #include <linux/iio/timer/stm32-lptim-trigger.h> 17 #include <linux/iio/timer/stm32-timer-trigger.h> 18 #include <linux/iio/trigger.h> 26 #include <linux/nvmem-consumer.h> 31 #include "stm32-adc-core.h" 50 /* External trigger enable */ [all …]
|
H A D | stm32-dfsdm-adc.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * This file is the ADC part of the STM32 DFSDM driver 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> 18 #include <linux/iio/trigger.h> 29 #include "stm32-dfsdm.h" [all …]
|
/linux/include/linux/iio/timer/ |
H A D | stm32-timer-trigger.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 81 pr_warn_once("stm32-timer-trigger not linked in\n"); in is_stm32_timer_trigger()
|
/linux/include/linux/mfd/ |
H A D | stm32-timers.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 12 #include <linux/dma-mapping.h> 26 #define TIM_ARR 0x2c /* Auto-Reload Register */ 27 #define TIM_CCRx(x) (0x34 + 4 * ((x) - 1)) /* Capt/Comp Register x (x ∈ {1, .. 4}) */ 32 #define TIM_BDTR 0x44 /* Break and Dead-Time Reg */ 39 #define TIM_CR1_ARPE BIT(7) /* Auto-reload Preload Ena */ 43 #define TIM_SMCR_TS (BIT(4) | BIT(5) | BIT(6)) /* Trigger selection */ 45 #define TIM_DIER_CCxIE(x) BIT(1 + ((x) - 1)) /* CCx Interrupt Enable (x ∈ {1, .. 4}) */ 51 #define TIM_DIER_CCxDE(x) BIT(9 + ((x) - 1)) /* CCx DMA request Enable (x ∈ {1, .. 4}) */ 57 #define TIM_DIER_TDE BIT(14) /* Trigger DMA request Enable */ [all …]
|
/linux/drivers/watchdog/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 8 bool "Watchdog Timer Support" 16 on-line as fast as possible after a lock-up. There's both a watchdog 21 <file:Documentation/watchdog/watchdog-api.rst> in the kernel source. 34 tristate "WatchDog Timer Driver Core" 36 Say Y here if you want to use the new watchdog timer driver core. 37 This driver provides a framework for all watchdog timer drivers 45 to stop the timer if the process managing it closes the file 51 bool "Update boot-enabled watchdog until userspace takes over" 77 bool "Enable watchdog hrtimer-based pretimeouts" [all …]
|
/linux/drivers/mfd/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 57 tristate "Active-semi ACT8945A" 62 Support for the ACT8945A PMIC from Active-semi. This device 63 features three step-down DC/DC converters and four low-dropout 79 sun4i-gpadc-iio and the hwmon driver iio_hwmon. 82 called sun4i-gpadc. 113 tablets etc. It has 4 DC/DC step-down regulators, 3 DC/DC step-down 144 over at91-usart-serial driver and usart-spi-driver. Only one function 160 tristate "Atmel HLCDC (High-end LCD Controller)" 197 tristate "X-Powers AC100" [all …]
|
/linux/Documentation/ABI/testing/ |
H A D | sysfs-bus-iio | 3 Contact: linux-iio@vger.kernel.org 11 Contact: linux-iio@vger.kernel.org 17 periodic timer, GPIO or high resolution timer). 19 Contains trigger type specific elements. These do not 21 X is the IIO index of the trigger. 25 Contact: linux-iio@vger.kernel.org 31 Contact: linux-iio@vger.kernel.org 38 Contact: linux-iio@vger.kernel.org 44 The contents of the label are free-form, but there are some 51 * "proximity-wifi" [all …]
|