PCI: dwc: ep: Fix advertised resizable BAR size regression
authorNiklas Cassel <cassel@kernel.org>
Sat, 16 Nov 2024 00:59:51 +0000 (01:59 +0100)
committerKrzysztof Wilczyński <kwilczynski@kernel.org>
Sat, 16 Nov 2024 18:21:28 +0000 (18:21 +0000)
commit118397c9baaac0b7ec81896f8d755d09aa82c485
tree70a6bd76914c9cfa09037b4d63ca4487b9af0d87
parent154fc1f6420840e8aa65e5b43a456ae8f34816dd
PCI: dwc: ep: Fix advertised resizable BAR size regression

The advertised resizable BAR size was fixed in commit 72e34b8593e0 ("PCI:
dwc: endpoint: Fix advertised resizable BAR size").

Commit 867ab111b242 ("PCI: dwc: ep: Add a generic dw_pcie_ep_linkdown()
API to handle Link Down event") was included shortly after this, and
moved the code to another function. When the code was moved, this fix
was mistakenly lost.

According to the spec, it is illegal to not have a bit set in
PCI_REBAR_CAP, and 1 MB is the smallest size allowed.

So, set bit 4 in PCI_REBAR_CAP, so that we actually advertise support
for a 1 MB BAR size.

Fixes: 867ab111b242 ("PCI: dwc: ep: Add a generic dw_pcie_ep_linkdown() API to handle Link Down event")
Link: https://lore.kernel.org/r/20241116005950.2480427-2-cassel@kernel.org
Link: https://lore.kernel.org/r/20240606-pci-deinit-v1-3-4395534520dc@linaro.org
Link: https://lore.kernel.org/r/20240307111520.3303774-1-cassel@kernel.org
Signed-off-by: Niklas Cassel <cassel@kernel.org>
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Cc: stable@vger.kernel.org
drivers/pci/controller/dwc/pcie-designware-ep.c