mfd: syscon: Introduce syscon_base_lookup_by_phandle() function
Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
42193d5b66
commit
c2c5f48b91
|
@ -41,6 +41,26 @@ void __iomem *syscon_base_lookup_by_pdevname(const char *s)
|
|||
return ERR_PTR(-ENODEV);
|
||||
}
|
||||
|
||||
void __iomem *syscon_base_lookup_by_phandle(struct device_node *np,
|
||||
const char *property)
|
||||
{
|
||||
struct device_node *node;
|
||||
struct syscon *syscon;
|
||||
struct device_d *dev;
|
||||
|
||||
node = of_parse_phandle(np, property, 0);
|
||||
if (!node)
|
||||
return ERR_PTR(-ENODEV);
|
||||
|
||||
dev = of_find_device_by_node(node);
|
||||
if (!dev)
|
||||
return ERR_PTR(-ENODEV);
|
||||
|
||||
syscon = dev->priv;
|
||||
|
||||
return syscon->base;
|
||||
}
|
||||
|
||||
static int syscon_probe(struct device_d *dev)
|
||||
{
|
||||
struct syscon *syscon;
|
||||
|
|
|
@ -16,11 +16,19 @@
|
|||
|
||||
#ifdef CONFIG_MFD_SYSCON
|
||||
void __iomem *syscon_base_lookup_by_pdevname(const char *);
|
||||
void __iomem *syscon_base_lookup_by_phandle
|
||||
(struct device_node *np, const char *property);
|
||||
#else
|
||||
static inline void __iomem *syscon_base_lookup_by_pdevname(const char *)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline void __iomem *syscon_base_lookup_by_phandle
|
||||
(struct device_node *np, const char *property)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue