linux/arch/xtensa/include/asm
Ryan Roberts 86758b5048 mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long
ioremap_prot() currently accepts pgprot_val parameter as an unsigned long,
thus implicitly assuming that pgprot_val and pgprot_t could never be
bigger than unsigned long.  But this assumption soon will not be true on
arm64 when using D128 pgtables.  In 128 bit page table configuration,
unsigned long is 64 bit, but pgprot_t is 128 bit.

Passing platform abstracted pgprot_t argument is better as compared to
size based data types.  Let's change the parameter to directly pass
pgprot_t like another similar helper generic_ioremap_prot().

Without this change in place, D128 configuration does not work on arm64 as
the top 64 bits gets silently stripped when passing the protection value
to this function.

Link: https://lkml.kernel.org/r/20250218101954.415331-1-anshuman.khandual@arm.com
Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
Co-developed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com> [arm64]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-03-16 22:06:23 -07:00
..
asm-offsets.h
asm-prototypes.h xtensa: add asm-prototypes.h 2023-06-12 19:48:57 -07:00
asm-uaccess.h uaccess: remove CONFIG_SET_FS 2022-02-25 09:36:06 +01:00
asmmacro.h xtensa: replace <asm-generic/export.h> with <linux/export.h> 2023-11-29 01:54:45 -08:00
atomic.h locking/atomic: xtensa: add preprocessor symbols 2023-06-05 09:57:18 +02:00
barrier.h xtensa: enable KCSAN 2022-05-01 19:51:22 -07:00
bitops.h xtensa: enable KCSAN 2022-05-01 19:51:22 -07:00
bootparam.h treewide: Replace zero-length arrays with flexible-array members 2022-02-17 07:00:39 -06:00
cache.h xtensa: add XIP kernel support 2019-11-26 11:33:38 -08:00
cacheasm.h xtensa: increase ranges in ___invalidate_{i,d}cache_all 2018-08-13 20:08:01 -07:00
cacheflush.h xtensa: remove redundant flush_dcache_page and ARCH_IMPLEMENTS_FLUSH_DCACHE_PAGE macros 2024-04-28 21:18:18 -07:00
cachetype.h Introduce cpu_dcache_is_aliasing() across all architectures 2024-02-22 15:27:19 -08:00
checksum.h xtensa: propagate the calling conventions change down into csum_partial_copy_generic() 2020-08-20 15:45:21 -04:00
cmpxchg.h xtensa: Emulate one-byte cmpxchg 2024-09-13 07:10:38 -07:00
coprocessor.h xtensa: support coprocessors on SMP 2022-05-01 19:51:23 -07:00
core.h xtensa: add default definition for XCHAL_HAVE_DIV32 2023-09-20 04:56:41 -07:00
current.h arch/xtensa: always_inline get_current() and current_thread_info() 2024-07-09 15:41:10 -07:00
delay.h xtensa: implement ndelay 2014-01-15 00:28:11 +04:00
dma.h PCI: Move isa_dma_bridge_buggy out of asm/dma.h 2022-07-22 17:24:47 -05:00
elf.h xtensa: add FDPIC and static PIE support for noMMU 2022-09-13 18:28:00 -07:00
fixmap.h xtensa/mm/highmem: Make generic kmap_atomic() work correctly 2020-11-16 21:19:24 +01:00
flat.h move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
ftrace.h xtensa: drop ARCH_WANT_FRAME_POINTERS 2023-06-12 19:48:57 -07:00
futex.h futex: Fix additional regressions 2021-12-11 23:31:51 +01:00
highmem.h xtensa/mm/highmem: Make generic kmap_atomic() work correctly 2020-11-16 21:19:24 +01:00
hw_breakpoint.h xtensa: hw_breakpoint: include header for missing prototype 2023-09-20 05:03:21 -07:00
initialize_mmu.h docs: move xtensa documentation under Documentation/arch/ 2023-03-30 13:00:22 -06:00
io.h mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long 2025-03-16 22:06:23 -07:00
irq.h xtensa: replace variant/core.h with asm/core.h 2019-05-06 17:48:55 -07:00
irqflags.h xtensa: replace CONFIG_DEBUG_KERNEL with CONFIG_DEBUG_MISC 2019-05-14 19:52:50 -07:00
jump_label.h work around gcc bugs with 'asm goto' with outputs 2024-02-09 15:57:48 -08:00
kasan.h xtensa, kasan: define KASAN_SHADOW_END 2023-12-29 11:58:43 -08:00
Kbuild asm-generic: introduce text-patching.h 2024-11-07 14:25:15 -08:00
kmem_layout.h xtensa: use CONFIG_USE_OF instead of CONFIG_OF 2021-09-27 06:08:58 -07:00
linkage.h xtensa: clean up functions in assembly code 2017-12-10 14:48:54 -08:00
mmu_context.h xtensa: use asm-generic/mmu_context.h for no-op implementations 2020-10-27 16:02:39 +01:00
mmu.h xtensa: add SMP support 2014-01-14 10:19:58 -08:00
mtd-xip.h xtensa: add XIP-aware MTD support 2023-08-28 18:25:23 -07:00
mxregs.h xtensa: add MX irqchip 2014-01-14 10:19:58 -08:00
nommu_context.h xtensa: use asm-generic/mmu_context.h for no-op implementations 2020-10-27 16:02:39 +01:00
page.h Networking changes for 6.13. 2024-11-21 08:28:08 -08:00
pci-bridge.h xtensa: Remove unused early_read_config_byte() et al declarations 2022-03-06 20:17:09 -08:00
pci.h PCI: Remove pci_get_legacy_ide_irq() and asm-generic/pci.h 2022-07-22 17:23:45 -05:00
perf_event.h xtensa: enable HAVE_PERF_EVENTS 2014-01-15 00:27:03 +04:00
pgalloc.h asm-generic: pgalloc: provide generic __pgd_{alloc,free} 2025-01-25 20:22:24 -08:00
pgtable.h mm: implement update_mmu_tlb() using update_mmu_tlb_range() 2024-07-03 19:29:57 -07:00
platform.h xtensa: drop platform_halt and platform_power_off 2023-06-12 19:48:56 -07:00
processor.h xtensa: Remove zero-length alignment array 2024-12-09 03:54:54 -08:00
ptrace.h xtensa: fix MAKE_PC_FROM_RA second argument 2024-04-02 19:42:35 -07:00
regs.h xtensa: clean up PS_WOE_BIT usage 2019-09-01 13:11:57 -07:00
seccomp.h xtensa: Enable seccomp architecture tracking 2020-11-20 11:16:35 -08:00
sections.h xtensa: add XIP-aware MTD support 2023-08-28 18:25:23 -07:00
serial.h
shmparam.h
signal.h consolidate kernel-side struct sigaction declarations 2013-02-03 15:09:22 -05:00
smp.h xtensa: smp: add headers for missing function prototypes 2023-09-20 05:03:20 -07:00
spinlock_types.h Improve consistency of '#error' directive messages 2024-11-11 17:17:04 -08:00
spinlock.h locking/arch: Move qrwlock.h include after qspinlock.h 2021-02-11 07:59:54 -05:00
stackprotector.h stackprotector: actually use get_random_canary() 2022-11-18 02:18:10 +01:00
stacktrace.h xtensa: Implement "current_stack_pointer" 2022-02-25 18:21:23 -08:00
string.h xtensa: drop bcopy implementation 2023-06-12 19:48:57 -07:00
switch_to.h Disintegrate asm/system.h for Xtensa 2012-03-28 18:30:03 +01:00
syscall.h arch: remove unused function syscall_set_arguments() 2021-09-14 16:06:20 +02:00
sysmem.h xtensa: drop sysmem and switch to memblock 2016-07-24 06:34:00 +03:00
thread_info.h arch/xtensa: always_inline get_current() and current_thread_info() 2024-07-09 15:41:10 -07:00
timex.h xtensa: use fallback for random_get_entropy() instead of zero 2022-05-13 23:59:23 +02:00
tlb.h xtensa: tlb: include <asm/tlb.h> for missing prototype 2023-09-20 05:03:21 -07:00
tlbflush.h mm: update legacy flush_tlb_* to use vma 2021-06-29 10:53:52 -07:00
traps.h xtensa: add load/store exception handler 2023-06-13 21:56:27 -07:00
uaccess.h uaccess: remove CONFIG_SET_FS 2022-02-25 09:36:06 +01:00
ucontext.h
unistd.h clone3: drop __ARCH_WANT_SYS_CLONE3 macro 2024-07-10 14:23:38 +02:00
vectors.h xtensa: reorganize vectors placement 2020-02-04 21:57:02 -08:00
vermagic.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
vmalloc.h mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00