devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/8] PCI: get DMA configuration from parent device
@ 2015-01-27 20:59 Murali Karicheri
  2015-01-27 20:59 ` [PATCH v5 1/8] of: iommu: add ptr to OF node arg to of_iommu_configure() Murali Karicheri
       [not found] ` <1422392405-32196-1-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
  0 siblings, 2 replies; 14+ messages in thread
From: Murali Karicheri @ 2015-01-27 20:59 UTC (permalink / raw)
  To: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA,
	devicetree-u79uwXL29TY76Z2rM5mHXA,
	linux-pci-u79uwXL29TY76Z2rM5mHXA
  Cc: Murali Karicheri, Joerg Roedel, Grant Likely, Rob Herring,
	Bjorn Helgaas, Will Deacon, Russell King, Arnd Bergmann,
	Suravee Suthikulpanit

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:
	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 (8):
  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
  of: limit dma_mask of the device based on dma-range size

 arch/arm/mm/dma-mapping.c |    7 +++++
 drivers/iommu/of_iommu.c  |   10 +++++--
 drivers/of/device.c       |   69 +++++++++++++++++++++++++++++++++++++++++++++
 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, 135 insertions(+), 60 deletions(-)

-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2015-01-28 15:28 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-27 20:59 [PATCH v5 0/8] PCI: get DMA configuration from parent device Murali Karicheri
2015-01-27 20:59 ` [PATCH v5 1/8] of: iommu: add ptr to OF node arg to of_iommu_configure() Murali Karicheri
     [not found]   ` <1422392405-32196-2-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-01-28  2:18     ` Rob Herring
     [not found] ` <1422392405-32196-1-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-01-27 20:59   ` [PATCH v5 2/8] of: move of_dma_configure() to device.c to help re-use Murali Karicheri
2015-01-27 21:00   ` [PATCH v5 3/8] of: fix size when dma-range is not used Murali Karicheri
     [not found]     ` <1422392405-32196-4-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-01-28  2:37       ` Rob Herring
2015-01-28 11:21       ` Robin Murphy
     [not found]         ` <54C8C652.8050507-5wv7dgnIgG8@public.gmane.org>
2015-01-28 15:28           ` Murali Karicheri
2015-01-27 21:00   ` [PATCH v5 4/8] PCI: add helper functions pci_get[put]_host_bridge_device() Murali Karicheri
2015-01-27 21:00   ` [PATCH v5 5/8] of/pci: add of_pci_dma_configure() update dma configuration Murali Karicheri
     [not found]     ` <1422392405-32196-6-git-send-email-m-karicheri2-l0cyMroinI0@public.gmane.org>
2015-01-28  2:49       ` Rob Herring
2015-01-27 21:00   ` [PATCH v5 6/8] PCI: update dma configuration from DT Murali Karicheri
2015-01-27 21:00   ` [PATCH v5 7/8] arm: dma-mapping: limit iommu mapping size Murali Karicheri
2015-01-27 21:00   ` [PATCH v5 8/8] of: limit dma_mask of the device based on dma-range size Murali Karicheri

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).