Lines Matching +full:soc +full:- +full:nvmem
1 // SPDX-License-Identifier: GPL-2.0-only
3 * sfr.c - driver for special function registers
10 #include <linux/nvmem-provider.h>
28 return regmap_bulk_read(priv->regmap, SFR_SN0 + offset, in atmel_sfr_read()
33 .name = "atmel-sfr",
43 struct device *dev = &pdev->dev; in atmel_sfr_probe()
44 struct device_node *np = dev->of_node; in atmel_sfr_probe()
45 struct nvmem_device *nvmem; in atmel_sfr_probe() local
52 return -ENOMEM; in atmel_sfr_probe()
54 priv->regmap = syscon_node_to_regmap(np); in atmel_sfr_probe()
55 if (IS_ERR(priv->regmap)) { in atmel_sfr_probe()
57 return PTR_ERR(priv->regmap); in atmel_sfr_probe()
63 nvmem = devm_nvmem_register(dev, &atmel_sfr_nvmem_config); in atmel_sfr_probe()
64 if (IS_ERR(nvmem)) { in atmel_sfr_probe()
65 dev_err(dev, "error registering nvmem config\n"); in atmel_sfr_probe()
66 return PTR_ERR(nvmem); in atmel_sfr_probe()
78 .compatible = "atmel,sama5d2-sfr",
80 .compatible = "atmel,sama5d4-sfr",
90 .name = "atmel-sfr",
97 MODULE_DESCRIPTION("Atmel SFR SN driver for SAMA5D2/4 SoC family");