linux/arch/mips
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>
History 2025-03-16 22:06:23 -07:00
..
alchemy MIPS: Remove unused function dump_au1000_dma_channel() in dma.c 2024-08-29 10:38:18 +02:00
ath25 MIPS: ath25: Constify static irq_domain_ops 2022-02-22 09:39:03 +01:00
ath79 MIPS: ath79: remove obsolete ATH79_DEV_* configs 2023-03-17 10:28:04 +01:00
bcm47xx mips: bmips: setup: make CBR address configurable 2024-06-27 10:44:32 +02:00
bcm63xx gpiolib: legacy: Kill GPIOF_INIT_* definitions 2024-09-02 11:47:06 +02:00
bmips mips: bmips: setup: make CBR address configurable 2024-06-27 10:44:32 +02:00
boot MIPS: Ignore relocs against __ex_table for relocatable kernel 2025-02-27 11:07:50 +01:00
cavium-octeon Just cleanups and fixes 2024-01-17 11:20:50 -08:00
cobalt MIPS: Cobalt: Fix missing prototypes 2024-01-22 10:32:21 +01:00
configs This update includes the following changes: 2025-01-24 07:48:10 -08:00
crypto mips/crc32: expose CRC32 functions through lib 2024-12-01 17:23:01 -08:00
dec genirq: Convert kstat_irqs to a struct 2024-04-12 17:08:05 +02:00
fw MIPS: fw arc: Fix missing prototypes 2024-01-22 11:12:01 +01:00
generic mips: generic: add fdt fixup for Realtek reference board 2024-07-12 13:12:13 +02:00
include mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long 2025-03-16 22:06:23 -07:00
ingenic MIPS: Kconfig: ingenic: Ensure MACH_INGENIC_GENERIC selects all SoCs 2021-06-01 11:44:47 +02:00
jazz mips/jazz: remove unused jazz_handle_int() declaration 2024-08-29 10:39:00 +02:00
kernel MIPS: Export syscall stack arguments properly for remote use 2025-02-13 12:41:18 +01:00
kvm KVM: MIPS: Use kvm_faultin_pfn() to map pfns into the guest 2024-10-25 13:00:49 -04:00
lantiq MIPS: lantiq: improve USB initialization 2024-07-12 13:04:24 +02:00
lib mips/crc32: expose CRC32 functions through lib 2024-12-01 17:23:01 -08:00
loongson2ef MIPS: Fix typos 2024-01-08 10:39:12 +01:00
loongson32 MIPS: loongson32: Remove dma.h and nand.h 2023-10-06 10:10:13 +02:00
loongson64 MIPS: Loongson64: env: Use str_on_off() helper in prom_lefi_init_env() 2025-01-20 20:27:54 +01:00
math-emu mips/math-emu: fix emulation of the prefx instruction 2025-01-11 12:49:05 +01:00
mm mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long 2025-03-16 22:06:23 -07:00
mobileye MIPS: mobileye: Add EyeQ6H support 2024-06-11 10:15:50 +02:00
mti-malta vgacon: clean up global screen_info instances 2023-10-17 10:17:02 +02:00
n64 mips: Add N64 machine type 2021-01-22 11:40:00 +01:00
net bpf: Take return from set_memory_rox() into account with bpf_jit_binary_lock_ro() 2024-03-14 19:28:52 -07:00
pci Cleanups and fixes 2025-01-27 09:00:25 -08:00
pic32 MIPS: Fixup explicit DT include clean-up 2023-07-28 11:41:09 +02:00
power mips: suspend: include linux/suspend.h as needed 2023-12-10 17:21:41 -08:00
ralink clocksource/drivers/ralink: Add Ralink System Tick Counter driver 2024-11-13 13:49:33 +01:00
rb532 MIPS: RB532: Declare prom_setup_cmdline() and rb532_gpio_init() static 2024-04-15 10:21:52 +02:00
sgi-ip22 mips: sgi-ip22: Replace "s[n]?printf" with sysfs_emit in sysfs callbacks 2024-10-30 23:45:17 +01:00
sgi-ip27 arch, mm: move definition of node_data to generic code 2024-09-03 21:15:28 -07:00
sgi-ip30 MIPS: ip30: ip30-console: Add missing include 2024-06-19 13:09:35 +02:00
sgi-ip32 MIPS: sgi-ip32: Fix missing prototypes 2024-01-22 11:12:19 +01:00
sibyte mips: sibyte: add missing MODULE_DESCRIPTION() macro 2024-07-23 09:47:40 +02:00
sni vgacon: clean up global screen_info instances 2023-10-17 10:17:02 +02:00
tools MIPS: fix typos in comments 2022-05-04 22:22:59 +02:00
txx9 mips: txx9: make txx9_sramc_subsys const 2024-02-20 13:36:34 +01:00
vdso MIPS: vdso: Avoid name conflict around "vdso_data" 2024-11-02 12:37:33 +01:00
Kbuild MIPS: Share generic kernel code with other architecture 2024-02-20 13:36:25 +01:00
Kbuild.platforms MIPS: mobileye: Add EyeQ6H support 2024-06-11 10:15:50 +02:00
Kconfig Cleanups and fixes 2025-01-27 09:00:25 -08:00
Kconfig.debug tracing: Refactor TRACE_IRQFLAGS_SUPPORT in Kconfig 2021-08-16 11:37:21 -04:00
Makefile MIPS: migrate to generic rule for built-in DTBs 2025-01-11 13:53:42 +01:00
Makefile.postlink kbuild: remove ARCH_POSTLINK from module builds 2023-10-28 21:10:08 +09:00