LCOV - code coverage report
Current view: top level - include/linux/pinctrl - devinfo.h (source / functions) Hit Total Coverage
Test: landlock.info Lines: 4 4 100.0 %
Date: 2021-04-22 12:43:58 Functions: 0 0 -

          Line data    Source code
       1             : /* SPDX-License-Identifier: GPL-2.0-only */
       2             : /*
       3             :  * Per-device information from the pin control system.
       4             :  * This is the stuff that get included into the device
       5             :  * core.
       6             :  *
       7             :  * Copyright (C) 2012 ST-Ericsson SA
       8             :  * Written on behalf of Linaro for ST-Ericsson
       9             :  * This interface is used in the core to keep track of pins.
      10             :  *
      11             :  * Author: Linus Walleij <linus.walleij@linaro.org>
      12             :  */
      13             : 
      14             : #ifndef PINCTRL_DEVINFO_H
      15             : #define PINCTRL_DEVINFO_H
      16             : 
      17             : #ifdef CONFIG_PINCTRL
      18             : 
      19             : /* The device core acts as a consumer toward pinctrl */
      20             : #include <linux/pinctrl/consumer.h>
      21             : 
      22             : /**
      23             :  * struct dev_pin_info - pin state container for devices
      24             :  * @p: pinctrl handle for the containing device
      25             :  * @default_state: the default state for the handle, if found
      26             :  * @init_state: the state at probe time, if found
      27             :  * @sleep_state: the state at suspend time, if found
      28             :  * @idle_state: the state at idle (runtime suspend) time, if found
      29             :  */
      30             : struct dev_pin_info {
      31             :         struct pinctrl *p;
      32             :         struct pinctrl_state *default_state;
      33             :         struct pinctrl_state *init_state;
      34             : #ifdef CONFIG_PM
      35             :         struct pinctrl_state *sleep_state;
      36             :         struct pinctrl_state *idle_state;
      37             : #endif
      38             : };
      39             : 
      40             : extern int pinctrl_bind_pins(struct device *dev);
      41             : extern int pinctrl_init_done(struct device *dev);
      42             : 
      43             : #else
      44             : 
      45             : struct device;
      46             : 
      47             : /* Stubs if we're not using pinctrl */
      48             : 
      49           6 : static inline int pinctrl_bind_pins(struct device *dev)
      50             : {
      51           6 :         return 0;
      52             : }
      53             : 
      54           5 : static inline int pinctrl_init_done(struct device *dev)
      55             : {
      56           5 :         return 0;
      57             : }
      58             : 
      59             : #endif /* CONFIG_PINCTRL */
      60             : #endif /* PINCTRL_DEVINFO_H */

Generated by: LCOV version 1.14