Commit b28e6315 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'dma-mapping-6.4-2023-04-28' of git://git.infradead.org/users/hch/dma-mapping

Pull dma-mapping updates from Christoph Hellwig:

 - fix a PageHighMem check in dma-coherent initialization (Doug Berger)

 - clean up the coherency defaul initialiation (Jiaxun Yang)

 - add cacheline to user/kernel dma-debug space dump messages (Desnes
   Nunes, Geert Uytterhoeve)

 - swiotlb statistics improvements (Michael Kelley)

 - misc cleanups (Petr Tesarik)

* tag 'dma-mapping-6.4-2023-04-28' of git://git.infradead.org/users/hch/dma-mapping:
  swiotlb: Omit total_used and used_hiwater if !CONFIG_DEBUG_FS
  swiotlb: track and report io_tlb_used high water marks in debugfs
  swiotlb: fix debugfs reporting of reserved memory pools
  swiotlb: relocate PageHighMem test away from rmem_swiotlb_setup
  of: address: always use dma_default_coherent for default coherency
  dma-mapping: provide CONFIG_ARCH_DMA_DEFAULT_COHERENT
  dma-mapping: provide a fallback dma_default_coherent
  dma-debug: Use %pa to format phys_addr_t
  dma-debug: add cacheline to user/kernel space dump messages
  dma-debug: small dma_debug_entry's comment and variable name updates
  dma-direct: cleanup parameters to dma_direct_optimal_gfp_mask
parents 7d8d2019 ec274aff
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -124,6 +124,7 @@ config PPC
	#
	select ARCH_32BIT_OFF_T if PPC32
	select ARCH_DISABLE_KASAN_INLINE	if PPC_RADIX_MMU
	select ARCH_DMA_DEFAULT_COHERENT	if !NOT_COHERENT_CACHE
	select ARCH_ENABLE_MEMORY_HOTPLUG
	select ARCH_ENABLE_MEMORY_HOTREMOVE
	select ARCH_HAS_COPY_MC			if PPC64
@@ -287,7 +288,6 @@ config PPC
	select NEED_PER_CPU_PAGE_FIRST_CHUNK	if PPC64
	select NEED_SG_DMA_LENGTH
	select OF
	select OF_DMA_DEFAULT_COHERENT		if !NOT_COHERENT_CACHE
	select OF_EARLY_FLATTREE
	select OLD_SIGACTION			if PPC32
	select OLD_SIGSUSPEND
+1 −1
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@ config 32BIT

config RISCV
	def_bool y
	select ARCH_DMA_DEFAULT_COHERENT
	select ARCH_ENABLE_HUGEPAGE_MIGRATION if HUGETLB_PAGE && MIGRATION
	select ARCH_ENABLE_SPLIT_PMD_PTLOCK if PGTABLE_LEVELS > 2
	select ARCH_ENABLE_THP_MIGRATION if TRANSPARENT_HUGEPAGE
@@ -127,7 +128,6 @@ config RISCV
	select MODULES_USE_ELF_RELA if MODULES
	select MODULE_SECTIONS if MODULES
	select OF
	select OF_DMA_DEFAULT_COHERENT
	select OF_EARLY_FLATTREE
	select OF_IRQ
	select PCI_DOMAINS_GENERIC if PCI
+0 −4
Original line number Diff line number Diff line
@@ -102,8 +102,4 @@ config OF_OVERLAY
config OF_NUMA
	bool

config OF_DMA_DEFAULT_COHERENT
	# arches should select this if DMA is coherent by default for OF devices
	bool

endif # OF
+1 −1
Original line number Diff line number Diff line
@@ -1037,7 +1037,7 @@ phys_addr_t __init of_dma_get_max_cpu_address(struct device_node *np)
bool of_dma_is_coherent(struct device_node *np)
{
	struct device_node *node;
	bool is_coherent = IS_ENABLED(CONFIG_OF_DMA_DEFAULT_COHERENT);
	bool is_coherent = dma_default_coherent;

	node = of_node_get(np);

+2 −0
Original line number Diff line number Diff line
@@ -269,6 +269,8 @@ static inline bool dev_is_dma_coherent(struct device *dev)
	return dev->dma_coherent;
}
#else
#define dma_default_coherent true

static inline bool dev_is_dma_coherent(struct device *dev)
{
	return true;
Loading