1af873fceSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 293fbe91bSBenjamin Gaignard /* 393fbe91bSBenjamin Gaignard * Copyright (C) STMicroelectronics 2016 493fbe91bSBenjamin Gaignard * 593fbe91bSBenjamin Gaignard * Author: Benjamin Gaignard <[email protected]> 693fbe91bSBenjamin Gaignard */ 793fbe91bSBenjamin Gaignard 893fbe91bSBenjamin Gaignard #ifndef _STM32_TIMER_TRIGGER_H_ 993fbe91bSBenjamin Gaignard #define _STM32_TIMER_TRIGGER_H_ 1093fbe91bSBenjamin Gaignard 1193fbe91bSBenjamin Gaignard #define TIM1_TRGO "tim1_trgo" 126fb34812SFabrice Gasnier #define TIM1_TRGO2 "tim1_trgo2" 1393fbe91bSBenjamin Gaignard #define TIM1_CH1 "tim1_ch1" 1493fbe91bSBenjamin Gaignard #define TIM1_CH2 "tim1_ch2" 1593fbe91bSBenjamin Gaignard #define TIM1_CH3 "tim1_ch3" 1693fbe91bSBenjamin Gaignard #define TIM1_CH4 "tim1_ch4" 1793fbe91bSBenjamin Gaignard 1893fbe91bSBenjamin Gaignard #define TIM2_TRGO "tim2_trgo" 1993fbe91bSBenjamin Gaignard #define TIM2_CH1 "tim2_ch1" 2093fbe91bSBenjamin Gaignard #define TIM2_CH2 "tim2_ch2" 2193fbe91bSBenjamin Gaignard #define TIM2_CH3 "tim2_ch3" 2293fbe91bSBenjamin Gaignard #define TIM2_CH4 "tim2_ch4" 2393fbe91bSBenjamin Gaignard 2493fbe91bSBenjamin Gaignard #define TIM3_TRGO "tim3_trgo" 2593fbe91bSBenjamin Gaignard #define TIM3_CH1 "tim3_ch1" 2693fbe91bSBenjamin Gaignard #define TIM3_CH2 "tim3_ch2" 2793fbe91bSBenjamin Gaignard #define TIM3_CH3 "tim3_ch3" 2893fbe91bSBenjamin Gaignard #define TIM3_CH4 "tim3_ch4" 2993fbe91bSBenjamin Gaignard 3093fbe91bSBenjamin Gaignard #define TIM4_TRGO "tim4_trgo" 3193fbe91bSBenjamin Gaignard #define TIM4_CH1 "tim4_ch1" 3293fbe91bSBenjamin Gaignard #define TIM4_CH2 "tim4_ch2" 3393fbe91bSBenjamin Gaignard #define TIM4_CH3 "tim4_ch3" 3493fbe91bSBenjamin Gaignard #define TIM4_CH4 "tim4_ch4" 3593fbe91bSBenjamin Gaignard 3693fbe91bSBenjamin Gaignard #define TIM5_TRGO "tim5_trgo" 3793fbe91bSBenjamin Gaignard #define TIM5_CH1 "tim5_ch1" 3893fbe91bSBenjamin Gaignard #define TIM5_CH2 "tim5_ch2" 3993fbe91bSBenjamin Gaignard #define TIM5_CH3 "tim5_ch3" 4093fbe91bSBenjamin Gaignard #define TIM5_CH4 "tim5_ch4" 4193fbe91bSBenjamin Gaignard 4293fbe91bSBenjamin Gaignard #define TIM6_TRGO "tim6_trgo" 4393fbe91bSBenjamin Gaignard 4493fbe91bSBenjamin Gaignard #define TIM7_TRGO "tim7_trgo" 4593fbe91bSBenjamin Gaignard 4693fbe91bSBenjamin Gaignard #define TIM8_TRGO "tim8_trgo" 476fb34812SFabrice Gasnier #define TIM8_TRGO2 "tim8_trgo2" 4893fbe91bSBenjamin Gaignard #define TIM8_CH1 "tim8_ch1" 4993fbe91bSBenjamin Gaignard #define TIM8_CH2 "tim8_ch2" 5093fbe91bSBenjamin Gaignard #define TIM8_CH3 "tim8_ch3" 5193fbe91bSBenjamin Gaignard #define TIM8_CH4 "tim8_ch4" 5293fbe91bSBenjamin Gaignard 5393fbe91bSBenjamin Gaignard #define TIM9_TRGO "tim9_trgo" 5493fbe91bSBenjamin Gaignard #define TIM9_CH1 "tim9_ch1" 5593fbe91bSBenjamin Gaignard #define TIM9_CH2 "tim9_ch2" 5693fbe91bSBenjamin Gaignard 5725892d6eSFabrice Gasnier #define TIM10_OC1 "tim10_oc1" 5825892d6eSFabrice Gasnier 5925892d6eSFabrice Gasnier #define TIM11_OC1 "tim11_oc1" 6025892d6eSFabrice Gasnier 6193fbe91bSBenjamin Gaignard #define TIM12_TRGO "tim12_trgo" 6293fbe91bSBenjamin Gaignard #define TIM12_CH1 "tim12_ch1" 6393fbe91bSBenjamin Gaignard #define TIM12_CH2 "tim12_ch2" 6493fbe91bSBenjamin Gaignard 6525892d6eSFabrice Gasnier #define TIM13_OC1 "tim13_oc1" 6625892d6eSFabrice Gasnier 6725892d6eSFabrice Gasnier #define TIM14_OC1 "tim14_oc1" 6825892d6eSFabrice Gasnier 6945fff14bSFabrice Gasnier #define TIM15_TRGO "tim15_trgo" 7045fff14bSFabrice Gasnier 7125892d6eSFabrice Gasnier #define TIM16_OC1 "tim16_oc1" 7225892d6eSFabrice Gasnier 7325892d6eSFabrice Gasnier #define TIM17_OC1 "tim17_oc1" 7425892d6eSFabrice Gasnier 75*e2f9d754SFabrice Gasnier #define TIM20_OC1 "tim20_oc1" 76*e2f9d754SFabrice Gasnier #define TIM20_OC2 "tim20_oc2" 77*e2f9d754SFabrice Gasnier #define TIM20_OC3 "tim20_oc3" 78*e2f9d754SFabrice Gasnier #define TIM20_TRGO "tim20_trgo" 79*e2f9d754SFabrice Gasnier #define TIM20_TRGO2 "tim20_trgo2" 80*e2f9d754SFabrice Gasnier 8120c89b4dSFabrice Gasnier #if IS_REACHABLE(CONFIG_IIO_STM32_TIMER_TRIGGER) 8293fbe91bSBenjamin Gaignard bool is_stm32_timer_trigger(struct iio_trigger *trig); 8320c89b4dSFabrice Gasnier #else is_stm32_timer_trigger(struct iio_trigger * trig)8420c89b4dSFabrice Gasnierstatic inline bool is_stm32_timer_trigger(struct iio_trigger *trig) 8520c89b4dSFabrice Gasnier { 8620c89b4dSFabrice Gasnier #if IS_ENABLED(CONFIG_IIO_STM32_TIMER_TRIGGER) 8720c89b4dSFabrice Gasnier pr_warn_once("stm32-timer-trigger not linked in\n"); 8820c89b4dSFabrice Gasnier #endif 8920c89b4dSFabrice Gasnier return false; 9020c89b4dSFabrice Gasnier } 9120c89b4dSFabrice Gasnier #endif 9293fbe91bSBenjamin Gaignard #endif 93