Skip to content

Commit 66a27ab

Browse files
committed
Merge tag 'powerpc-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux
Pull powerpc updates from Michael Ellerman: - Add AT_HWCAP3 and AT_HWCAP4 aux vector entries for future use by glibc - Add support for recognising the Power11 architected and raw PVRs - Add support for nr_cpus=n on the command line where the boot CPU is >= n - Add ppcxx_allmodconfig targets for all 32-bit sub-arches - Other small features, cleanups and fixes Thanks to Akanksha J N, Brian King, Christophe Leroy, Dawei Li, Geoff Levand, Greg Kroah-Hartman, Jan-Benedict Glaw, Kajol Jain, Kunwu Chan, Li zeming, Madhavan Srinivasan, Masahiro Yamada, Nathan Chancellor, Nicholas Piggin, Peter Bergner, Qiheng Lin, Randy Dunlap, Ricardo B. Marliere, Rob Herring, Sathvika Vasireddy, Shrikanth Hegde, Uwe Kleine-König, Vaibhav Jain, and Wen Xiong. * tag 'powerpc-6.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: (71 commits) powerpc/macio: Make remove callback of macio driver void returned powerpc/83xx: Fix build failure with FPU=n powerpc/64s: Fix get_hugepd_cache_index() build failure powerpc/4xx: Fix warp_gpio_leds build failure powerpc/amigaone: Make several functions static powerpc/embedded6xx: Fix no previous prototype for avr_uart_send() etc. macintosh/adb: make adb_dev_class constant powerpc: xor_vmx: Add '-mhard-float' to CFLAGS powerpc/fsl: Fix mfpmr() asm constraint error powerpc: Remove cpu-as-y completely powerpc/fsl: Modernise mt/mfpmr powerpc/fsl: Fix mfpmr build errors with newer binutils powerpc/64s: Use .machine power4 around dcbt powerpc/64s: Move dcbt/dcbtst sequence into a macro powerpc/mm: Code cleanup for __hash_page_thp powerpc/hv-gpci: Fix the H_GET_PERF_COUNTER_INFO hcall return value checks powerpc/irq: Allow softirq to hardirq stack transition powerpc: Stop using of_root powerpc/machdep: Define 'compatibles' property in ppc_md and use it of: Reimplement of_machine_is_compatible() using of_machine_compatible_match() ...
2 parents 82affc9 + 9db2235 commit 66a27ab

File tree

117 files changed

+733
-537
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

117 files changed

+733
-537
lines changed

arch/powerpc/Makefile

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -219,18 +219,6 @@ KBUILD_CFLAGS += -fno-asynchronous-unwind-tables
219219
# often slow when they are implemented at all
220220
KBUILD_CFLAGS += $(call cc-option,-mno-string)
221221

222-
cpu-as-$(CONFIG_ALTIVEC) += $(call as-option,-Wa$(comma)-maltivec)
223-
224-
# When using '-many -mpower4' gas will first try and find a matching power4
225-
# mnemonic and failing that it will allow any valid mnemonic that GAS knows
226-
# about. GCC will pass -many to GAS when assembling, clang does not.
227-
# LLVM IAS doesn't understand either flag: https://github.com/ClangBuiltLinux/linux/issues/675
228-
# but LLVM IAS only supports ISA >= 2.06 for Book3S 64 anyway...
229-
cpu-as-$(CONFIG_PPC_BOOK3S_64) += $(call as-option,-Wa$(comma)-mpower4) $(call as-option,-Wa$(comma)-many)
230-
231-
KBUILD_AFLAGS += $(cpu-as-y)
232-
KBUILD_CFLAGS += $(cpu-as-y)
233-
234222
KBUILD_AFLAGS += $(aflags-y)
235223
KBUILD_CFLAGS += $(cflags-y)
236224

@@ -314,6 +302,26 @@ ppc32_allmodconfig:
314302
$(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/book3s_32.config \
315303
-f $(srctree)/Makefile allmodconfig
316304

305+
generated_configs += ppc40x_allmodconfig
306+
ppc40x_allmodconfig:
307+
$(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/40x.config \
308+
-f $(srctree)/Makefile allmodconfig
309+
310+
generated_configs += ppc44x_allmodconfig
311+
ppc44x_allmodconfig:
312+
$(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/44x.config \
313+
-f $(srctree)/Makefile allmodconfig
314+
315+
generated_configs += ppc8xx_allmodconfig
316+
ppc8xx_allmodconfig:
317+
$(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/8xx.config \
318+
-f $(srctree)/Makefile allmodconfig
319+
320+
generated_configs += ppc85xx_allmodconfig
321+
ppc85xx_allmodconfig:
322+
$(Q)$(MAKE) KCONFIG_ALLCONFIG=$(srctree)/arch/powerpc/configs/85xx-32bit.config \
323+
-f $(srctree)/Makefile allmodconfig
324+
317325
generated_configs += ppc_defconfig
318326
ppc_defconfig:
319327
$(call merge_into_defconfig,book3s_32.config,)

arch/powerpc/boot/simple_alloc.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,8 +112,11 @@ static void *simple_realloc(void *ptr, unsigned long size)
112112
return ptr;
113113

114114
new = simple_malloc(size);
115-
memcpy(new, ptr, p->size);
116-
simple_free(ptr);
115+
if (new) {
116+
memcpy(new, ptr, p->size);
117+
simple_free(ptr);
118+
}
119+
117120
return new;
118121
}
119122

arch/powerpc/configs/40x.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_PPC64=n
2+
CONFIG_40x=y

arch/powerpc/configs/44x.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_PPC64=n
2+
CONFIG_44x=y

arch/powerpc/configs/85xx-32bit.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
CONFIG_PPC64=n
12
CONFIG_HIGHMEM=y
23
CONFIG_KEXEC=y
34
CONFIG_PPC_85xx=y

arch/powerpc/configs/8xx.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_PPC64=n
2+
CONFIG_PPC_8xx=y

arch/powerpc/configs/ps3_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ CONFIG_PS3_VRAM=m
2424
CONFIG_PS3_LPM=m
2525
# CONFIG_PPC_OF_BOOT_TRAMPOLINE is not set
2626
CONFIG_KEXEC=y
27-
# CONFIG_PPC64_BIG_ENDIAN_ELF_ABI_V2 is not set
2827
CONFIG_PPC_4K_PAGES=y
2928
CONFIG_SCHED_SMT=y
3029
CONFIG_PM=y

arch/powerpc/include/asm/book3s/64/hash.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,8 +269,6 @@ int hash__create_section_mapping(unsigned long start, unsigned long end,
269269
int nid, pgprot_t prot);
270270
int hash__remove_section_mapping(unsigned long start, unsigned long end);
271271

272-
void hash__kernel_map_pages(struct page *page, int numpages, int enable);
273-
274272
#endif /* !__ASSEMBLY__ */
275273
#endif /* __KERNEL__ */
276274
#endif /* _ASM_POWERPC_BOOK3S_64_HASH_H */

arch/powerpc/include/asm/book3s/64/pgtable-64k.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ static inline int hugepd_ok(hugepd_t hpd)
4545
/*
4646
* This should never get called
4747
*/
48-
static inline int get_hugepd_cache_index(int index)
48+
static __always_inline int get_hugepd_cache_index(int index)
4949
{
50-
BUG();
50+
BUILD_BUG();
5151
}
5252

5353
#endif /* CONFIG_HUGETLB_PAGE */

arch/powerpc/include/asm/book3s/64/pgtable.h

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1027,16 +1027,6 @@ static inline void vmemmap_remove_mapping(unsigned long start,
10271027
}
10281028
#endif
10291029

1030-
#if defined(CONFIG_DEBUG_PAGEALLOC) || defined(CONFIG_KFENCE)
1031-
static inline void __kernel_map_pages(struct page *page, int numpages, int enable)
1032-
{
1033-
if (radix_enabled())
1034-
radix__kernel_map_pages(page, numpages, enable);
1035-
else
1036-
hash__kernel_map_pages(page, numpages, enable);
1037-
}
1038-
#endif
1039-
10401030
static inline pte_t pmd_pte(pmd_t pmd)
10411031
{
10421032
return __pte_raw(pmd_raw(pmd));

0 commit comments

Comments
 (0)