Lines Matching +full:imx8mq +full:- +full:reset

1 // SPDX-License-Identifier: GPL-2.0-only
5 * i.MX7 System Reset Controller (SRC) driver
14 #include <linux/reset-controller.h>
16 #include <dt-bindings/reset/imx7-reset.h>
17 #include <dt-bindings/reset/imx8mq-reset.h>
18 #include <dt-bindings/reset/imx8mp-reset.h>
51 const struct imx7_src_signal *signal = &imx7src->signals[id]; in imx7_reset_update()
53 return regmap_update_bits(imx7src->regmap, in imx7_reset_update()
54 signal->offset, signal->bit, value); in imx7_reset_update()
95 const unsigned int bit = imx7src->signals[id].bit; in imx7_reset_set()
223 const unsigned int bit = imx7src->signals[id].bit; in imx8mq_reset_set()
318 const unsigned int bit = imx7src->signals[id].bit; in imx8mp_reset_set()
364 struct device *dev = &pdev->dev; in imx7_reset_probe()
370 return -ENOMEM; in imx7_reset_probe()
372 imx7src->signals = variant->signals; in imx7_reset_probe()
373 imx7src->regmap = syscon_node_to_regmap(dev->of_node); in imx7_reset_probe()
374 if (IS_ERR(imx7src->regmap)) { in imx7_reset_probe()
375 dev_err(dev, "Unable to get imx7-src regmap"); in imx7_reset_probe()
376 return PTR_ERR(imx7src->regmap); in imx7_reset_probe()
378 regmap_attach_dev(dev, imx7src->regmap, &config); in imx7_reset_probe()
380 imx7src->rcdev.owner = THIS_MODULE; in imx7_reset_probe()
381 imx7src->rcdev.nr_resets = variant->signals_num; in imx7_reset_probe()
382 imx7src->rcdev.ops = &variant->ops; in imx7_reset_probe()
383 imx7src->rcdev.of_node = dev->of_node; in imx7_reset_probe()
385 return devm_reset_controller_register(dev, &imx7src->rcdev); in imx7_reset_probe()
389 { .compatible = "fsl,imx7d-src", .data = &variant_imx7 },
390 { .compatible = "fsl,imx8mq-src", .data = &variant_imx8mq },
391 { .compatible = "fsl,imx8mp-src", .data = &variant_imx8mp },
406 MODULE_DESCRIPTION("NXP i.MX7 reset driver");