PCI: cadence: Fix find_first_zero_bit() limit
[ Upstream commit 0aa3a0937feeb91a0e4e438c3c063b749b194192 ]
The ep->ob_region_map bitmap is a long and it has BITS_PER_LONG bits.
Link: https://lore.kernel.org/r/20220315065829.GA13572@kili
Fixes: 37dddf14f1
("PCI: cadence: Add EndPoint Controller driver for Cadence PCIe controller")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
6cc647a692
commit
5085bb8ae9
1 changed files with 1 additions and 2 deletions
|
@ -178,8 +178,7 @@ static int cdns_pcie_ep_map_addr(struct pci_epc *epc, u8 fn, phys_addr_t addr,
|
||||||
struct cdns_pcie *pcie = &ep->pcie;
|
struct cdns_pcie *pcie = &ep->pcie;
|
||||||
u32 r;
|
u32 r;
|
||||||
|
|
||||||
r = find_first_zero_bit(&ep->ob_region_map,
|
r = find_first_zero_bit(&ep->ob_region_map, BITS_PER_LONG);
|
||||||
sizeof(ep->ob_region_map) * BITS_PER_LONG);
|
|
||||||
if (r >= ep->max_regions - 1) {
|
if (r >= ep->max_regions - 1) {
|
||||||
dev_err(&epc->dev, "no free outbound region\n");
|
dev_err(&epc->dev, "no free outbound region\n");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
Loading…
Reference in a new issue