]> git.sur5r.net Git - u-boot/blobdiff - drivers/reset/sti-reset.c
mtd: nand: mxs_nand: use self init
[u-boot] / drivers / reset / sti-reset.c
index a79708cde2800a7169e905396afb808b15aa6767..d8cc485ce6a544756bba3659ad8c79aabff42a8d 100644 (file)
@@ -1,8 +1,7 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
- * Copyright (c) 2017
- * Patrice Chotard <patrice.chotard@st.com>
- *
- * SPDX-License-Identifier:    GPL-2.0+
+ * Copyright (C) 2017, STMicroelectronics - All Rights Reserved
+ * Author(s): Patrice Chotard, <patrice.chotard@st.com> for STMicroelectronics.
  */
 
 #include <common.h>
@@ -201,24 +200,24 @@ phys_addr_t sti_reset_get_regmap(const char *compatible)
        node = fdt_node_offset_by_compatible(gd->fdt_blob, -1,
                                             compatible);
        if (node < 0) {
-               error("unable to find %s node\n", compatible);
+               pr_err("unable to find %s node\n", compatible);
                return node;
        }
 
        ret = uclass_get_device_by_of_offset(UCLASS_SYSCON, node, &syscon);
        if (ret) {
-               error("%s: uclass_get_device_by_of_offset failed: %d\n",
+               pr_err("%s: uclass_get_device_by_of_offset failed: %d\n",
                      __func__, ret);
                return ret;
        }
 
        regmap = syscon_get_regmap(syscon);
        if (!regmap) {
-               error("unable to get regmap for %s\n", syscon->name);
+               pr_err("unable to get regmap for %s\n", syscon->name);
                return -ENODEV;
        }
 
-       return regmap->base;
+       return regmap->ranges[0].start;
 }
 
 static int sti_reset_program_hw(struct reset_ctl *reset_ctl, int assert)
@@ -251,7 +250,7 @@ static int sti_reset_program_hw(struct reset_ctl *reset_ctl, int assert)
                        if (ch->deassert_cnt > 0)
                                return 0;
                } else
-                       error("Reset balancing error: reset_ctl=%p dev=%p id=%lu\n",
+                       pr_err("Reset balancing error: reset_ctl=%p dev=%p id=%lu\n",
                              reset_ctl, reset_ctl->dev, reset_ctl->id);
        }
 
@@ -266,9 +265,9 @@ static int sti_reset_program_hw(struct reset_ctl *reset_ctl, int assert)
                return 0;
 
        reg = (void __iomem *)base + ch->ack_offset;
-       if (wait_for_bit(__func__, reg, BIT(ch->ack_bit), ctrl_val,
-                        1000, false)) {
-               error("Stuck on waiting ack reset_ctl=%p dev=%p id=%lu\n",
+       if (wait_for_bit_le32(reg, BIT(ch->ack_bit), ctrl_val,
+                             1000, false)) {
+               pr_err("Stuck on waiting ack reset_ctl=%p dev=%p id=%lu\n",
                      reset_ctl, reset_ctl->dev, reset_ctl->id);
 
                return -ETIMEDOUT;