LCOV - code coverage report
Current view: top level - zephyr/drivers/sensor - mcux_lpcmp.h Coverage Total Hit
Test: new.info Lines: 100.0 % 4 4
Test Date: 2025-09-05 22:20:39

            Line data    Source code
       1            1 : /*
       2              :  * Copyright (c) 2020 Vestas Wind Systems A/S
       3              :  * Copyright 2024 NXP
       4              :  *
       5              :  * SPDX-License-Identifier: Apache-2.0
       6              :  */
       7              : 
       8              : /**
       9              :  * @file
      10              :  * @brief Data structure for the NXP MCUX low-power analog comparator (LPCMP)
      11              :  */
      12              : 
      13              : #ifndef ZEPHYR_INCLUDE_DRIVERS_SENSOR_MCUX_LPCMP_H_
      14              : #define ZEPHYR_INCLUDE_DRIVERS_SENSOR_MCUX_LPCMP_H_
      15              : 
      16              : #ifdef __cplusplus
      17              : extern "C" {
      18              : #endif
      19              : 
      20              : #include <zephyr/drivers/sensor.h>
      21              : 
      22              : /**
      23              :  * @brief lpcmp channels.
      24              :  */
      25            1 : enum sensor_channel_mcux_lpcmp {
      26              :         /** LPCMP output. */
      27              :         SENSOR_CHAN_MCUX_LPCMP_OUTPUT = SENSOR_CHAN_PRIV_START,
      28              : };
      29              : 
      30              : /**
      31              :  * @brief lpcmp trigger types.
      32              :  */
      33            1 : enum sensor_trigger_type_mcux_lpcmp {
      34              :         /** LPCMP output rising event trigger. */
      35              :         SENSOR_TRIG_MCUX_LPCMP_OUTPUT_RISING = SENSOR_TRIG_PRIV_START,
      36              :         /** LPCMP output falling event trigger. */
      37              :         SENSOR_TRIG_MCUX_LPCMP_OUTPUT_FALLING,
      38              : };
      39              : 
      40              : /**
      41              :  * @brief lpcmp attribute types.
      42              :  */
      43            1 : enum sensor_attribute_mcux_lpcmp {
      44              :         /** LPCMP positive input mux. */
      45              :         SENSOR_ATTR_MCUX_LPCMP_POSITIVE_MUX_INPUT = SENSOR_ATTR_COMMON_COUNT,
      46              :         /** LPCMP negative input mux. */
      47              :         SENSOR_ATTR_MCUX_LPCMP_NEGATIVE_MUX_INPUT,
      48              : 
      49              :         /**
      50              :          * LPCMP internal DAC enable.
      51              :          *  0b: disable
      52              :          *  1b: enable
      53              :          */
      54              :         SENSOR_ATTR_MCUX_LPCMP_DAC_ENABLE,
      55              :         /**
      56              :          * LPCMP internal DAC high power mode disabled.
      57              :          *  0b: disable
      58              :          *  1b: enable
      59              :          */
      60              :         SENSOR_ATTR_MCUX_LPCMP_DAC_HIGH_POWER_MODE_ENABLE,
      61              :         /** LPCMP internal DAC voltage reference source. */
      62              :         SENSOR_ATTR_MCUX_LPCMP_DAC_REFERENCE_VOLTAGE_SOURCE,
      63              :         /** LPCMP internal DAC output voltage value. */
      64              :         SENSOR_ATTR_MCUX_LPCMP_DAC_OUTPUT_VOLTAGE,
      65              : 
      66              :         /** LPCMP internal filter sample enable. */
      67              :         SENSOR_ATTR_MCUX_LPCMP_SAMPLE_ENABLE,
      68              :         /** LPCMP internal filter sample count. */
      69              :         SENSOR_ATTR_MCUX_LPCMP_FILTER_COUNT,
      70              :         /** LPCMP internal filter sample period. */
      71              :         SENSOR_ATTR_MCUX_LPCMP_FILTER_PERIOD,
      72              : 
      73              :         /** LPCMP window signal invert. */
      74              :         SENSOR_ATTR_MCUX_LPCMP_COUTA_WINDOW_ENABLE,
      75              :         /** LPCMP window signal invert. */
      76              :         SENSOR_ATTR_MCUX_LPCMP_COUTA_WINDOW_SIGNAL_INVERT_ENABLE,
      77              :         /**
      78              :          * LPCMP COUTA signal value when a window is closed:
      79              :          *  00b: latched
      80              :          *  01b: set to low
      81              :          *  11b: set to high
      82              :          */
      83              :         SENSOR_ATTR_MCUX_LPCMP_COUTA_SIGNAL,
      84              :         /**
      85              :          * LPCMP COUT event to close an active window:
      86              :          *  xx0b: COUT event cannot close an active window
      87              :          *  001b: COUT rising edge event close an active window
      88              :          *  011b: COUT falling edge event close an active window
      89              :          *  1x1b: COUT both edges event close an active window
      90              :          */
      91              :         SENSOR_ATTR_MCUX_LPCMP_COUT_EVENT_TO_CLOSE_WINDOW
      92              : };
      93              : 
      94              : #ifdef __cplusplus
      95              : }
      96              : #endif
      97              : 
      98              : #endif /* ZEPHYR_INCLUDE_DRIVERS_SENSOR_MCUX_LPCMP_H_ */
        

Generated by: LCOV version 2.0-1