common: Drop linux/delay.h from common header
[oweals/u-boot.git] / drivers / reset / reset-bcm6345.c
index ebf6bee9e60deeec1dc285e0e1cf7ec793eab167..0511a0c63a3936854040b062b5a52c578af36895 100644 (file)
@@ -1,17 +1,19 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * Copyright (C) 2017 Álvaro Fernández Rojas <noltari@gmail.com>
  *
  * Derived from linux/arch/mips/bcm63xx/reset.c:
  *     Copyright (C) 2012 Jonas Gorski <jonas.gorski@gmail.com>
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #include <common.h>
 #include <dm.h>
 #include <errno.h>
+#include <log.h>
+#include <malloc.h>
 #include <reset-uclass.h>
 #include <asm/io.h>
+#include <linux/delay.h>
 
 #define MAX_RESETS     32
 
@@ -53,7 +55,7 @@ static int bcm6345_reset_request(struct reset_ctl *rst)
 }
 
 struct reset_ops bcm6345_reset_reset_ops = {
-       .free = bcm6345_reset_free,
+       .rfree = bcm6345_reset_free,
        .request = bcm6345_reset_request,
        .rst_assert = bcm6345_reset_assert,
        .rst_deassert = bcm6345_reset_deassert,
@@ -67,15 +69,11 @@ static const struct udevice_id bcm6345_reset_ids[] = {
 static int bcm6345_reset_probe(struct udevice *dev)
 {
        struct bcm6345_reset_priv *priv = dev_get_priv(dev);
-       fdt_addr_t addr;
-       fdt_size_t size;
 
-       addr = devfdt_get_addr_size_index(dev, 0, &size);
-       if (addr == FDT_ADDR_T_NONE)
+       priv->regs = dev_remap_addr(dev);
+       if (!priv->regs)
                return -EINVAL;
 
-       priv->regs = ioremap(addr, size);
-
        return 0;
 }