Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: /* 2: * Per-device information from the pin control system. 3: * This is the stuff that get included into the device 4: * core. 5: * 6: * Copyright (C) 2012 ST-Ericsson SA 7: * Written on behalf of Linaro for ST-Ericsson 8: * This interface is used in the core to keep track of pins. 9: * 10: * Author: Linus Walleij <linus.walleij@linaro.org> 11: * 12: * License terms: GNU General Public License (GPL) version 2 13: */ 14: 15: #ifndef PINCTRL_DEVINFO_H 16: #define PINCTRL_DEVINFO_H 17: 18: #ifdef CONFIG_PINCTRL 19: 20: /* The device core acts as a consumer toward pinctrl */ 21: #include <linux/pinctrl/consumer.h> 22: 23: /** 24: * struct dev_pin_info - pin state container for devices 25: * @p: pinctrl handle for the containing device 26: * @default_state: the default state for the handle, if found 27: */ 28: struct dev_pin_info { 29: struct pinctrl *p; 30: struct pinctrl_state *default_state; 31: #ifdef CONFIG_PM 32: struct pinctrl_state *sleep_state; 33: struct pinctrl_state *idle_state; 34: #endif 35: }; 36: 37: extern int pinctrl_bind_pins(struct device *dev); 38: 39: #else 40: 41: /* Stubs if we're not using pinctrl */ 42: 43: static inline int pinctrl_bind_pins(struct device *dev) 44: { 45: return 0; 46: } 47: 48: #endif /* CONFIG_PINCTRL */ 49: #endif /* PINCTRL_DEVINFO_H */ 50: