devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 0/7] PCI: get DMA configuration from parent device
@ 2015-02-05 21:52 Murali Karicheri
  2015-02-09  5:23 ` Suravee Suthikulpanit
                   ` (2 more replies)
  0 siblings, 3 replies; 30+ messages in thread
From: Murali Karicheri @ 2015-02-05 21:52 UTC (permalink / raw)
  To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-pci-u79uwXL29TY76Z2rM5mHXA
  Cc: Russell King, Arnd Bergmann, Will Deacon, Rob Herring,
	Bjorn Helgaas, Murali Karicheri, Grant Likely

This patch add an important capability to PCI driver on Keystone. I hope to
have this merged to the upstream branch so that it is available for v3.20.
Also would like thank everyone for the contribution.

PCI devices on Keystone doesn't have correct dma_pfn_offset set. This patch
add capability to set the dma configuration such as dma-mask, dma_pfn_offset,
and dma ops etc using the information from DT. The prior RFCs and discussions
are available at [1] and [2] below.

[2] : https://www.mail-archive.com/linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org/msg790244.html
[1] : http://www.gossamer-threads.com/lists/linux/kernel/2024591

Change history:
	v6 - Rebased to v3.19-v7
	   - Addressed some minor comments about node name and DT size validation.
	   - Pulled out 8/8 of v5 and plan to send a patch for enhancing
	     of_dma_configure() to use size to calculate dma mask.
	   - Added Acks from reviewers.
	v5 - moved the dma_mask update in device from ARM specific API to
	     of_dma_configure to allow this across other architecture as well
	   - improved sanity check for DT dma-range size in of_dma_configure()
	   - moved API to get parent bridge device to PCI (host-bridge.c)
	v4 - moved size adjustments in of_iommu_configure() to a separate patch
	   - consistent node name comment from Rob
	   - patch 6 added for dma_mask adjustment and iommu mapping size
	     limiting.
	v3 - addressed comments to re-use of_dma_configure() for PCI
	   - To help re-use, change of_iommu_configure() function argument
		- Move of_dma_configure to of/device.c
		- Limit the of_iommu_configure to non pci devices
	v2 - update size to coherent_dma_mask + 1 if dma-range info is missing
	   - also check the np for null.
	v1 - updates based on the comments against initial RFC.
	   - Added a helper function to get the OF node of the parent
	   - Added an API in of_pci.c to update DMA configuration of the pci
	     device.

Cc: Joerg Roedel <joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
Cc: Grant Likely <grant.likely-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: Bjorn Helgaas <bhelgaas-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
Cc: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
Cc: Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>
Cc: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: Suravee Suthikulpanit <Suravee.Suthikulpanit-5C7GfCeVMHo@public.gmane.org>

Acked-by: Bjorn Helgaas <bhelgaas-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
Acked-by: Murali Karicheri <m-karicheri2-l0cyMroinI0@public.gmane.org>

Murali Karicheri (7):
  of: iommu: add ptr to OF node arg to of_iommu_configure()
  of: move of_dma_configure() to device.c to help re-use
  of: fix size when dma-range is not used
  PCI: add helper functions pci_get[put]_host_bridge_device()
  of/pci: add of_pci_dma_configure() update dma configuration
  PCI: update dma configuration from DT
  arm: dma-mapping: limit iommu mapping size

 arch/arm/mm/dma-mapping.c |    7 +++++
 drivers/iommu/of_iommu.c  |   10 ++++--
 drivers/of/device.c       |   74 +++++++++++++++++++++++++++++++++++++++++++++
 drivers/of/of_pci.c       |   19 ++++++++++++
 drivers/of/platform.c     |   58 ++---------------------------------
 drivers/pci/host-bridge.c |   14 +++++++++
 drivers/pci/probe.c       |    2 ++
 include/linux/of_device.h |    2 ++
 include/linux/of_iommu.h  |    6 ++--
 include/linux/of_pci.h    |    5 +++
 include/linux/pci.h       |    3 ++
 11 files changed, 140 insertions(+), 60 deletions(-)

-- 
1.7.9.5

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2015-02-25 22:20 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-05 21:52 [PATCH v6 0/7] PCI: get DMA configuration from parent device Murali Karicheri
2015-02-09  5:23 ` Suravee Suthikulpanit
     [not found]   ` <54D84456.8050509-5C7GfCeVMHo@public.gmane.org>
2015-02-09 17:26     ` Murali Karicheri
     [not found] ` <1423173179-10227-1-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-02-05 21:52   ` [PATCH v6 1/7] of: iommu: add ptr to OF node arg to of_iommu_configure() Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 2/7] of: move of_dma_configure() to device.c to help re-use Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 3/7] of: fix size when dma-range is not used Murali Karicheri
2015-02-06 14:38     ` Catalin Marinas
2015-02-06 14:54       ` Murali Karicheri
2015-02-06 15:12         ` Catalin Marinas
2015-02-06 20:26           ` Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 4/7] PCI: add helper functions pci_get[put]_host_bridge_device() Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 5/7] of/pci: add of_pci_dma_configure() update dma configuration Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 6/7] PCI: update dma configuration from DT Murali Karicheri
     [not found]     ` <1423173179-10227-7-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-02-25  1:53       ` Bjorn Helgaas
     [not found]         ` <20150225015317.GO6220-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2015-02-25 16:03           ` Murali Karicheri
2015-02-25 16:09             ` Arnd Bergmann
2015-02-25 20:45               ` Murali Karicheri
2015-02-05 21:52   ` [PATCH v6 7/7] arm: dma-mapping: limit iommu mapping size Murali Karicheri
2015-02-05 21:59   ` [PATCH v6 0/7] PCI: get DMA configuration from parent device Murali Karicheri
2015-02-06 15:15   ` Catalin Marinas
2015-02-06 15:28     ` Murali Karicheri
2015-02-06 17:53       ` Bjorn Helgaas
     [not found]         ` <CAErSpo6GOXHeKKfU8s5jCS3+Mui=HupZd=jpkLEyWAE94Ory5w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-02-06 18:36           ` Murali Karicheri
2015-02-11 16:54             ` Murali Karicheri
     [not found]               ` <54DB8960.9010707-l0cyMroinI0@public.gmane.org>
2015-02-11 16:58                 ` Murali Karicheri
2015-02-23 22:08                   ` Murali Karicheri
     [not found]                     ` <54EBA4D0.1060705-l0cyMroinI0@public.gmane.org>
2015-02-23 22:15                       ` Bjorn Helgaas
     [not found]                         ` <CAErSpo6fWjibM-Lm54ESBpgMUi8w2q6YVzNAK5rHvR4+ydq6ZA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-02-23 22:44                           ` Murali Karicheri
2015-02-09  5:48   ` Will Deacon
2015-02-25 22:20 ` Bjorn Helgaas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).