Merge tag 'u-boot-atmel-fixes-2020.07-a' of https://gitlab.denx.de/u-boot/custodians...
[oweals/u-boot.git] / drivers / pci / pci-rcar-gen2.c
index 8293a6d3342d1a7d391d6966510330053354ea54..e76abc1f84c1a98942b644e4dec9221ed78b0d2e 100644 (file)
@@ -1,9 +1,8 @@
+// SPDX-License-Identifier: GPL-2.0
 /*
  * Renesas RCar Gen2 PCIEC driver
  *
  * Copyright (C) 2018 Marek Vasut <marek.vasut@gmail.com>
- *
- * SPDX-License-Identifier:    GPL-2.0
  */
 
 #include <common.h>
@@ -12,6 +11,7 @@
 #include <dm.h>
 #include <errno.h>
 #include <pci.h>
+#include <linux/bitops.h>
 
 /* AHB-PCI Bridge PCI communication registers */
 #define RCAR_AHBPCI_PCICOM_OFFSET      0x800
@@ -98,7 +98,7 @@ static int rcar_gen2_pci_addr_valid(pci_dev_t d, uint offset)
 
        /* Only one EHCI/OHCI device built-in */
        slot = PCI_DEV(d);
-       if (slot > 2)
+       if (slot != 1 && slot != 2)
                return -EINVAL;
 
        /* bridge logic only has registers to 0x40 */
@@ -108,7 +108,7 @@ static int rcar_gen2_pci_addr_valid(pci_dev_t d, uint offset)
        return 0;
 }
 
-static u32 get_bus_address(struct udevice *dev, pci_dev_t bdf, u32 offset)
+static u32 get_bus_address(const struct udevice *dev, pci_dev_t bdf, u32 offset)
 {
        struct rcar_gen2_pci_priv *priv = dev_get_priv(dev);
 
@@ -127,7 +127,7 @@ static u32 setup_bus_address(struct udevice *dev, pci_dev_t bdf, u32 offset)
        return get_bus_address(dev, bdf, offset);
 }
 
-static int rcar_gen2_pci_read_config(struct udevice *dev, pci_dev_t bdf,
+static int rcar_gen2_pci_read_config(const struct udevice *dev, pci_dev_t bdf,
                                     uint offset, ulong *value,
                                     enum pci_size_t size)
 {