mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
powerpc fixes for 6.17 #3
- Merge two CONFIG_POWERPC64_CPU entries in Kconfig.cputype - Replace extra-y to always-y in Makefile - Cleanup to use dev_fwnode helper - Fix misleading comment in kvmppc_prepare_to_enter() - misc cleanup and fixes Thanks to: Amit Machhiwal, Andrew Donnellan, Christophe Leroy, Gautam Menghani, Jiri Slaby (SUSE), Masahiro Yamada, Shrikanth Hegde, Stephen Rothwell, Venkat Rao Bagalkote, Xichao Zhao -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEqX2DNAOgU8sBX3pRpnEsdPSHZJQFAmiv5qEACgkQpnEsdPSH ZJQeEA/+NahRLWuQM/dikXUo/Nje0/VSuQn4t/Yw8SUpqteBmGw84r8VZkxY0yu4 9Mmvi/7flStL59Nede94dEO7TJvOhcn7OD2X0gQpQl5ZaHD3z8oGmEnZ023tUin1 kzuEtsRTepU2ELEpqJCGzGNxV+Sxv+pqP7Okg65/u9HCUaq/1e89J5Km4rw4svx4 LLcs+FUAobbI7LV6SeKr877Ujp0dsLkSwvC/g4aqgszm4HbJi8WiD8QfTJYmzi6L f4VzCzl+ox1ml+IpQKbQfjbAiB4MCIHc1mMCuK+A4VFmqGnlqk4/oeUmrNanRwSR tDpeTka0HGO6dOIuf/G/Bc9bf23+dvKrH6NDpz4rI2mP88akedVMpLV9SmQXLZWy UEnLCf4Ic3DeVGvlwlXd6C+0wAqjqu3ud9I640mlJhGAdPJ+NR0XHDFKP3hgxh7o H8BQLBqm2CRDYOGFf8veY1u7EBsCTC0pjsvNrZa/IFzjOmZQJXwA4hG5sKkau3YG yOMzylhjpSPOPl85jaKS5XrIzXLYhFgZ13jqf3NNx6Ydmrg89tR+3RGvqG+H0pi2 s/WQ+84Rw9hqzT7qOAQhUS1H7YHUOreeRrLZUVBl2SNXEh7Vw8ew1GkQJE7yMgsC 8gfrnnomxaMtg0GnxdQEm7pb0rmBujWCc1QBA6pZdgDhE+M8U0Y= =+F44 -----END PGP SIGNATURE----- Merge tag 'powerpc-6.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux Pull powerpc fixes from Madhavan Srinivasan: - Merge two CONFIG_POWERPC64_CPU entries in Kconfig.cputype - Replace extra-y to always-y in Makefile - Cleanup to use dev_fwnode helper - Fix misleading comment in kvmppc_prepare_to_enter() - misc cleanup and fixes Thanks to Amit Machhiwal, Andrew Donnellan, Christophe Leroy, Gautam Menghani, Jiri Slaby (SUSE), Masahiro Yamada, Shrikanth Hegde, Stephen Rothwell, Venkat Rao Bagalkote, and Xichao Zhao * tag 'powerpc-6.17-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux: powerpc/boot/install.sh: Fix shellcheck warnings powerpc/prom_init: Fix shellcheck warnings powerpc/kvm: Fix ifdef to remove build warning powerpc: unify two CONFIG_POWERPC64_CPU entries in the same choice block powerpc: use always-y instead of extra-y in Makefiles powerpc/64: Drop unnecessary 'rc' variable powerpc: Use dev_fwnode() KVM: PPC: Fix misleading interrupts comment in kvmppc_prepare_to_enter()
This commit is contained in:
commit
606c2cf67b
@ -243,13 +243,13 @@ $(obj)/wrapper.a: $(obj-wlib) FORCE
|
||||
hostprogs := addnote hack-coff mktree
|
||||
|
||||
targets += $(patsubst $(obj)/%,%,$(obj-boot) wrapper.a) zImage.lds
|
||||
extra-y := $(obj)/wrapper.a $(obj-plat) $(obj)/empty.o \
|
||||
always-y := $(obj)/wrapper.a $(obj-plat) $(obj)/empty.o \
|
||||
$(obj)/zImage.lds $(obj)/zImage.coff.lds $(obj)/zImage.ps3.lds
|
||||
|
||||
dtstree := $(src)/dts
|
||||
|
||||
wrapper := $(src)/wrapper
|
||||
wrapperbits := $(extra-y) $(addprefix $(obj)/,addnote hack-coff mktree) \
|
||||
wrapperbits := $(always-y) $(addprefix $(obj)/,addnote hack-coff mktree) \
|
||||
$(wrapper) FORCE
|
||||
|
||||
#############
|
||||
@ -456,7 +456,7 @@ WRAPPER_DTSDIR := /usr/lib/kernel-wrapper/dts
|
||||
WRAPPER_BINDIR := /usr/sbin
|
||||
INSTALL := install
|
||||
|
||||
extra-installed := $(patsubst $(obj)/%, $(DESTDIR)$(WRAPPER_OBJDIR)/%, $(extra-y))
|
||||
extra-installed := $(patsubst $(obj)/%, $(DESTDIR)$(WRAPPER_OBJDIR)/%, $(always-y))
|
||||
hostprogs-installed := $(patsubst %, $(DESTDIR)$(WRAPPER_BINDIR)/%, $(hostprogs))
|
||||
wrapper-installed := $(DESTDIR)$(WRAPPER_BINDIR)/wrapper
|
||||
dts-installed := $(patsubst $(dtstree)/%, $(DESTDIR)$(WRAPPER_DTSDIR)/%, $(wildcard $(dtstree)/*.dts))
|
||||
|
@ -19,19 +19,19 @@
|
||||
set -e
|
||||
|
||||
# this should work for both the pSeries zImage and the iSeries vmlinux.sm
|
||||
image_name=`basename $2`
|
||||
image_name=$(basename "$2")
|
||||
|
||||
|
||||
echo "Warning: '${INSTALLKERNEL}' command not available... Copying" \
|
||||
"directly to $4/$image_name-$1" >&2
|
||||
|
||||
if [ -f $4/$image_name-$1 ]; then
|
||||
mv $4/$image_name-$1 $4/$image_name-$1.old
|
||||
if [ -f "$4"/"$image_name"-"$1" ]; then
|
||||
mv "$4"/"$image_name"-"$1" "$4"/"$image_name"-"$1".old
|
||||
fi
|
||||
|
||||
if [ -f $4/System.map-$1 ]; then
|
||||
mv $4/System.map-$1 $4/System-$1.old
|
||||
if [ -f "$4"/System.map-"$1" ]; then
|
||||
mv "$4"/System.map-"$1" "$4"/System-"$1".old
|
||||
fi
|
||||
|
||||
cat $2 > $4/$image_name-$1
|
||||
cp $3 $4/System.map-$1
|
||||
cat "$2" > "$4"/"$image_name"-"$1"
|
||||
cp "$3" "$4"/System.map-"$1"
|
||||
|
@ -199,7 +199,9 @@ obj-$(CONFIG_ALTIVEC) += vector.o
|
||||
|
||||
obj-$(CONFIG_PPC_OF_BOOT_TRAMPOLINE) += prom_init.o
|
||||
obj64-$(CONFIG_PPC_OF_BOOT_TRAMPOLINE) += prom_entry_64.o
|
||||
extra-$(CONFIG_PPC_OF_BOOT_TRAMPOLINE) += prom_init_check
|
||||
ifdef KBUILD_BUILTIN
|
||||
always-$(CONFIG_PPC_OF_BOOT_TRAMPOLINE) += prom_init_check
|
||||
endif
|
||||
|
||||
obj-$(CONFIG_PPC64) += $(obj64-y)
|
||||
obj-$(CONFIG_PPC32) += $(obj32-y)
|
||||
|
@ -632,19 +632,19 @@ static void __init kvm_check_ins(u32 *inst, u32 features)
|
||||
#endif
|
||||
}
|
||||
|
||||
switch (inst_no_rt & ~KVM_MASK_RB) {
|
||||
#ifdef CONFIG_PPC_BOOK3S_32
|
||||
switch (inst_no_rt & ~KVM_MASK_RB) {
|
||||
case KVM_INST_MTSRIN:
|
||||
if (features & KVM_MAGIC_FEAT_SR) {
|
||||
u32 inst_rb = _inst & KVM_MASK_RB;
|
||||
kvm_patch_ins_mtsrin(inst, inst_rt, inst_rb);
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
switch (_inst) {
|
||||
#ifdef CONFIG_BOOKE
|
||||
switch (_inst) {
|
||||
case KVM_INST_WRTEEI_0:
|
||||
kvm_patch_ins_wrteei_0(inst);
|
||||
break;
|
||||
@ -652,8 +652,8 @@ static void __init kvm_check_ins(u32 *inst, u32 features)
|
||||
case KVM_INST_WRTEEI_1:
|
||||
kvm_patch_ins_wrtee(inst, 0, 1);
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
extern u32 kvm_template_start[];
|
||||
|
@ -15,8 +15,8 @@
|
||||
|
||||
has_renamed_memintrinsics()
|
||||
{
|
||||
grep -q "^CONFIG_KASAN=y$" ${KCONFIG_CONFIG} && \
|
||||
! grep -q "^CONFIG_CC_HAS_KASAN_MEMINTRINSIC_PREFIX=y" ${KCONFIG_CONFIG}
|
||||
grep -q "^CONFIG_KASAN=y$" "${KCONFIG_CONFIG}" && \
|
||||
! grep -q "^CONFIG_CC_HAS_KASAN_MEMINTRINSIC_PREFIX=y" "${KCONFIG_CONFIG}"
|
||||
}
|
||||
|
||||
if has_renamed_memintrinsics
|
||||
@ -42,15 +42,15 @@ check_section()
|
||||
{
|
||||
file=$1
|
||||
section=$2
|
||||
size=$(objdump -h -j $section $file 2>/dev/null | awk "\$2 == \"$section\" {print \$3}")
|
||||
size=$(objdump -h -j "$section" "$file" 2>/dev/null | awk "\$2 == \"$section\" {print \$3}")
|
||||
size=${size:-0}
|
||||
if [ $size -ne 0 ]; then
|
||||
if [ "$size" -ne 0 ]; then
|
||||
ERROR=1
|
||||
echo "Error: Section $section not empty in prom_init.c" >&2
|
||||
fi
|
||||
}
|
||||
|
||||
for UNDEF in $($NM -u $OBJ | awk '{print $2}')
|
||||
for UNDEF in $($NM -u "$OBJ" | awk '{print $2}')
|
||||
do
|
||||
# On 64-bit nm gives us the function descriptors, which have
|
||||
# a leading . on the name, so strip it off here.
|
||||
@ -87,8 +87,8 @@ do
|
||||
fi
|
||||
done
|
||||
|
||||
check_section $OBJ .data
|
||||
check_section $OBJ .bss
|
||||
check_section $OBJ .init.data
|
||||
check_section "$OBJ" .data
|
||||
check_section "$OBJ" .bss
|
||||
check_section "$OBJ" .init.data
|
||||
|
||||
exit $ERROR
|
||||
|
@ -141,10 +141,7 @@ void __init check_smt_enabled(void)
|
||||
smt_enabled_at_boot = 0;
|
||||
else {
|
||||
int smt;
|
||||
int rc;
|
||||
|
||||
rc = kstrtoint(smt_enabled_cmdline, 10, &smt);
|
||||
if (!rc)
|
||||
if (!kstrtoint(smt_enabled_cmdline, 10, &smt))
|
||||
smt_enabled_at_boot =
|
||||
min(threads_per_core, smt);
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ int kvm_arch_vcpu_should_kick(struct kvm_vcpu *vcpu)
|
||||
|
||||
/*
|
||||
* Common checks before entering the guest world. Call with interrupts
|
||||
* disabled.
|
||||
* enabled.
|
||||
*
|
||||
* returns:
|
||||
*
|
||||
|
@ -110,8 +110,7 @@ static int cpm_pic_probe(struct platform_device *pdev)
|
||||
|
||||
out_be32(&data->reg->cpic_cimr, 0);
|
||||
|
||||
data->host = irq_domain_create_linear(of_fwnode_handle(dev->of_node),
|
||||
64, &cpm_pic_host_ops, data);
|
||||
data->host = irq_domain_create_linear(dev_fwnode(dev), 64, &cpm_pic_host_ops, data);
|
||||
if (!data->host)
|
||||
return -ENODEV;
|
||||
|
||||
|
@ -122,16 +122,11 @@ choice
|
||||
If unsure, select Generic.
|
||||
|
||||
config POWERPC64_CPU
|
||||
bool "Generic (POWER5 and PowerPC 970 and above)"
|
||||
depends on PPC_BOOK3S_64 && !CPU_LITTLE_ENDIAN
|
||||
bool "Generic 64 bits powerpc"
|
||||
depends on PPC_BOOK3S_64
|
||||
select ARCH_HAS_FAST_MULTIPLIER if CPU_LITTLE_ENDIAN
|
||||
select PPC_64S_HASH_MMU
|
||||
|
||||
config POWERPC64_CPU
|
||||
bool "Generic (POWER8 and above)"
|
||||
depends on PPC_BOOK3S_64 && CPU_LITTLE_ENDIAN
|
||||
select ARCH_HAS_FAST_MULTIPLIER
|
||||
select PPC_64S_HASH_MMU
|
||||
select PPC_HAS_LBARX_LHARX
|
||||
select PPC_HAS_LBARX_LHARX if CPU_LITTLE_ENDIAN
|
||||
|
||||
config POWERPC_CPU
|
||||
bool "Generic 32 bits powerpc"
|
||||
|
@ -412,9 +412,8 @@ static int fsl_of_msi_probe(struct platform_device *dev)
|
||||
}
|
||||
platform_set_drvdata(dev, msi);
|
||||
|
||||
msi->irqhost = irq_domain_create_linear(of_fwnode_handle(dev->dev.of_node),
|
||||
NR_MSI_IRQS_MAX, &fsl_msi_host_ops, msi);
|
||||
|
||||
msi->irqhost = irq_domain_create_linear(dev_fwnode(&dev->dev), NR_MSI_IRQS_MAX,
|
||||
&fsl_msi_host_ops, msi);
|
||||
if (msi->irqhost == NULL) {
|
||||
dev_err(&dev->dev, "No memory for MSI irqhost\n");
|
||||
err = -ENOMEM;
|
||||
|
Loading…
Reference in New Issue
Block a user