Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 085f8871 authored by Alistair Strachan's avatar Alistair Strachan Committed by Greg Kroah-Hartman
Browse files

staging: Android: vsoc: Create wc kernel mapping for region shm.



Map the region shm as write-combining instead of uncachable.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Arve Hjønnevåg <arve@android.com>
Cc: Todd Kjos <tkjos@android.com>
Cc: Martijn Coenen <maco@android.com>
Cc: Greg Hartman <ghartman@google.com>
Cc: devel@driverdev.osuosl.org
Cc: kernel-team@android.com
Signed-off-by: default avatarAlistair Strachan <astrachan@google.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 03420865
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@ vsoc.c, uapi/vsoc_shm.h
   waiting threads. We should eventually use multiple queues and select the
   queue based on the region.
 - Add debugfs support for examining the permissions of regions.
 - Use ioremap_wc instead of ioremap_nocache.
 - Remove VSOC_WAIT_FOR_INCOMING_INTERRUPT ioctl. This functionality has been
   superseded by the futex and is there for legacy reasons.

+1 −3
Original line number Diff line number Diff line
@@ -802,9 +802,7 @@ static int vsoc_probe_device(struct pci_dev *pdev,

	dev_info(&pdev->dev, "shared memory @ DMA %p size=0x%zx\n",
		 (void *)vsoc_dev.shm_phys_start, vsoc_dev.shm_size);
	/* TODO(ghartman): ioremap_wc should work here */
	vsoc_dev.kernel_mapped_shm = ioremap_nocache(
			vsoc_dev.shm_phys_start, vsoc_dev.shm_size);
	vsoc_dev.kernel_mapped_shm = pci_iomap_wc(pdev, SHARED_MEMORY_BAR, 0);
	if (!vsoc_dev.kernel_mapped_shm) {
		dev_err(&vsoc_dev.dev->dev, "cannot iomap region\n");
		vsoc_remove_device(pdev);