Lines Matching refs:syscon
33 struct syscon { struct
45 static struct syscon *of_syscon_register(struct device_node *np) in of_syscon_register() argument
47 struct syscon *syscon; in of_syscon_register() local
56 syscon = kzalloc(sizeof(*syscon), GFP_KERNEL); in of_syscon_register()
57 if (!syscon) in of_syscon_register()
79 syscon->regmap = regmap; in of_syscon_register()
80 syscon->np = np; in of_syscon_register()
83 list_add_tail(&syscon->list, &syscon_list); in of_syscon_register()
86 return syscon; in of_syscon_register()
91 kfree(syscon); in of_syscon_register()
97 struct syscon *entry, *syscon = NULL; in syscon_node_to_regmap() local
103 syscon = entry; in syscon_node_to_regmap()
109 if (!syscon) in syscon_node_to_regmap()
110 syscon = of_syscon_register(np); in syscon_node_to_regmap()
112 if (IS_ERR(syscon)) in syscon_node_to_regmap()
113 return ERR_CAST(syscon); in syscon_node_to_regmap()
115 return syscon->regmap; in syscon_node_to_regmap()
143 struct syscon *syscon; in syscon_regmap_lookup_by_pdevname() local
150 syscon = dev_get_drvdata(dev); in syscon_regmap_lookup_by_pdevname()
152 return syscon->regmap; in syscon_regmap_lookup_by_pdevname()
181 struct syscon *syscon; in syscon_probe() local
185 syscon = devm_kzalloc(dev, sizeof(*syscon), GFP_KERNEL); in syscon_probe()
186 if (!syscon) in syscon_probe()
200 syscon->regmap = devm_regmap_init_mmio(dev, base, in syscon_probe()
202 if (IS_ERR(syscon->regmap)) { in syscon_probe()
204 return PTR_ERR(syscon->regmap); in syscon_probe()
207 platform_set_drvdata(pdev, syscon); in syscon_probe()