#ifndef __PINCTRL_UNIPHIER_H__
#define __PINCTRL_UNIPHIER_H__
#include <linux/bits.h>
#include <linux/build_bug.h>
#include <linux/kernel.h>
#include <linux/types.h>
struct platform_device;
#define UNIPHIER_PIN_IECTRL_SHIFT …
#define UNIPHIER_PIN_IECTRL_BITS …
#define UNIPHIER_PIN_IECTRL_MASK …
#define UNIPHIER_PIN_DRVCTRL_SHIFT …
#define UNIPHIER_PIN_DRVCTRL_BITS …
#define UNIPHIER_PIN_DRVCTRL_MASK …
#define UNIPHIER_PIN_DRV_TYPE_SHIFT …
#define UNIPHIER_PIN_DRV_TYPE_BITS …
#define UNIPHIER_PIN_DRV_TYPE_MASK …
#define UNIPHIER_PIN_PUPDCTRL_SHIFT …
#define UNIPHIER_PIN_PUPDCTRL_BITS …
#define UNIPHIER_PIN_PUPDCTRL_MASK …
#define UNIPHIER_PIN_PULL_DIR_SHIFT …
#define UNIPHIER_PIN_PULL_DIR_BITS …
#define UNIPHIER_PIN_PULL_DIR_MASK …
#if UNIPHIER_PIN_PULL_DIR_SHIFT + UNIPHIER_PIN_PULL_DIR_BITS > BITS_PER_LONG
#error "unable to pack pin attributes."
#endif
#define UNIPHIER_PIN_IECTRL_NONE …
#define UNIPHIER_PIN_IECTRL_EXIST …
enum uniphier_pin_drv_type { … };
enum uniphier_pin_pull_dir { … };
#define UNIPHIER_PIN_IECTRL(x) …
#define UNIPHIER_PIN_DRVCTRL(x) …
#define UNIPHIER_PIN_DRV_TYPE(x) …
#define UNIPHIER_PIN_PUPDCTRL(x) …
#define UNIPHIER_PIN_PULL_DIR(x) …
#define UNIPHIER_PIN_ATTR_PACKED(iectrl, drvctrl, drv_type, pupdctrl, pull_dir) …
static inline unsigned int uniphier_pin_get_iectrl(void *drv_data)
{ … }
static inline unsigned int uniphier_pin_get_drvctrl(void *drv_data)
{ … }
static inline unsigned int uniphier_pin_get_drv_type(void *drv_data)
{ … }
static inline unsigned int uniphier_pin_get_pupdctrl(void *drv_data)
{ … }
static inline unsigned int uniphier_pin_get_pull_dir(void *drv_data)
{ … }
struct uniphier_pinctrl_group { … };
struct uniphier_pinmux_function { … };
struct uniphier_pinctrl_socdata { … };
#define UNIPHIER_PINCTRL_PIN(a, b, c, d, e, f, g) …
#define __UNIPHIER_PINCTRL_GROUP(grp, mux) …
#define UNIPHIER_PINCTRL_GROUP(grp) …
#define UNIPHIER_PINCTRL_GROUP_GPIO(grp) …
#define UNIPHIER_PINMUX_FUNCTION(func) …
int uniphier_pinctrl_probe(struct platform_device *pdev,
const struct uniphier_pinctrl_socdata *socdata);
extern const struct dev_pm_ops uniphier_pinctrl_pm_ops;
#endif