123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- /* SPDX-License-Identifier: GPL-2.0-or-later */
- /*
- * System Control Driver
- *
- * Copyright (C) 2012 Freescale Semiconductor, Inc.
- * Copyright (C) 2012 Linaro Ltd.
- *
- * Author: Dong Aisheng <[email protected]>
- */
- #ifndef __LINUX_MFD_SYSCON_H__
- #define __LINUX_MFD_SYSCON_H__
- #include <linux/err.h>
- #include <linux/errno.h>
- struct device_node;
- #ifdef CONFIG_MFD_SYSCON
- extern struct regmap *device_node_to_regmap(struct device_node *np);
- extern struct regmap *syscon_node_to_regmap(struct device_node *np);
- extern struct regmap *syscon_regmap_lookup_by_compatible(const char *s);
- extern struct regmap *syscon_regmap_lookup_by_phandle(
- struct device_node *np,
- const char *property);
- extern struct regmap *syscon_regmap_lookup_by_phandle_args(
- struct device_node *np,
- const char *property,
- int arg_count,
- unsigned int *out_args);
- extern struct regmap *syscon_regmap_lookup_by_phandle_optional(
- struct device_node *np,
- const char *property);
- #else
- static inline struct regmap *device_node_to_regmap(struct device_node *np)
- {
- return ERR_PTR(-ENOTSUPP);
- }
- static inline struct regmap *syscon_node_to_regmap(struct device_node *np)
- {
- return ERR_PTR(-ENOTSUPP);
- }
- static inline struct regmap *syscon_regmap_lookup_by_compatible(const char *s)
- {
- return ERR_PTR(-ENOTSUPP);
- }
- static inline struct regmap *syscon_regmap_lookup_by_phandle(
- struct device_node *np,
- const char *property)
- {
- return ERR_PTR(-ENOTSUPP);
- }
- static inline struct regmap *syscon_regmap_lookup_by_phandle_args(
- struct device_node *np,
- const char *property,
- int arg_count,
- unsigned int *out_args)
- {
- return ERR_PTR(-ENOTSUPP);
- }
- static inline struct regmap *syscon_regmap_lookup_by_phandle_optional(
- struct device_node *np,
- const char *property)
- {
- return NULL;
- }
- #endif
- #endif /* __LINUX_MFD_SYSCON_H__ */
|