android_kernel_samsung_sm8650/drivers/pci
Ajay Agarwal 299c92ff85 UPSTREAM: PCI: dwc: Strengthen the MSI address allocation logic
There can be platforms that do not use/have 32-bit DMA addresses.
The current implementation of 32-bit IOVA allocation can fail for
such platforms, eventually leading to the probe failure.

Try to allocate a 32-bit msi_data. If this allocation fails,
attempt a 64-bit address allocation. Please note that if the
64-bit MSI address is allocated, then the EPs supporting 32-bit
MSI address only will not work.

Link: https://lore.kernel.org/linux-pci/20240221153840.1789979-1-ajayagarwal@google.com
Tested-by: Will McVicker <willmcvicker@google.com>
Signed-off-by: Ajay Agarwal <ajayagarwal@google.com>
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Serge Semin <fancer.lancer@gmail.com>
Reviewed-by: Will McVicker <willmcvicker@google.com>

Bug: 312402322
Change-Id: Ic09f14087e50e106dc6361722091b8b892efc517
(cherry picked from commit f3a296405b6e65fe478144c2f85602dc5668700c)
Signed-off-by: Ajay Agarwal <ajayagarwal@google.com>
2024-03-19 16:17:18 +00:00
..
controller UPSTREAM: PCI: dwc: Strengthen the MSI address allocation logic 2024-03-19 16:17:18 +00:00
endpoint PCI: epf-test: Fix DMA transfer completion detection 2023-07-23 13:49:36 +02:00
hotplug Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1" 2024-03-07 21:18:27 +00:00
msi
pcie Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1" 2024-03-07 21:18:27 +00:00
switch PCI: switchtec: Return -EFAULT for copy_to_user() errors 2023-03-10 09:33:31 +01:00
access.c Revert "PCI: Add locking to RMW PCI Express Capability Register accessors" 2023-10-12 12:05:33 +00:00
ats.c UPSTREAM: PCI: Enable PASID only when ACS RR & UF enabled on upstream path 2023-04-12 02:08:27 +00:00
bus.c PCI: s390: Fix use-after-free of PCI resources with per-function hotplug 2023-03-22 13:33:45 +01:00
doe.c PCI/DOE: Fix destroy_work_on_stack() race 2023-09-13 09:42:45 +02:00
ecam.c
host-bridge.c
iov.c PCI/IOV: Enlarge virtfn sysfs name buffer 2023-03-10 09:33:31 +01:00
irq.c PCI: Check for alloc failure in pci_request_irq() 2022-12-31 13:32:33 +01:00
Kconfig
Makefile
mmap.c
of.c
p2pdma.c
pci-acpi.c PCI/sysfs: Protect driver's D3cold preference from user space 2023-11-28 17:07:08 +00:00
pci-bridge-emul.c
pci-bridge-emul.h
pci-driver.c PCI: Unify delay handling for reset and resume 2023-03-10 09:34:30 +01:00
pci-label.c
pci-mid.c
pci-pf-stub.c
pci-stub.c
pci-sysfs.c This is the 6.1.64 stable release 2023-12-12 18:41:13 +00:00
pci.c Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1" 2024-03-07 21:18:27 +00:00
pci.h Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1" 2024-03-07 21:18:27 +00:00
probe.c This is the 6.1.64 stable release 2023-12-12 18:41:13 +00:00
proc.c
quirks.c Revert "Merge tag 'android14-6.1.75_r00' into android14-6.1" 2024-03-07 21:18:27 +00:00
remove.c
rom.c
search.c
setup-bus.c PCI: Distribute available resources for root buses, too 2023-03-11 13:55:38 +01:00
setup-irq.c
setup-res.c
slot.c
syscall.c
vc.c
vgaarb.c
vpd.c
xen-pcifront.c