Commit 9d27622f authored by Will Deacon's avatar Will Deacon
Browse files

Merge branch 'for-next/misc' into for-next/core

* for-next/misc:
  arm64/cpuinfo: only show one cpu's info in c_show()
  arm64: Extend pr_crit message on invalid FDT
  arm64: Kconfig: remove unnecessary selection of CRC32
  arm64: Add missing includes for mem_encrypt
parents dc64de40 7bb79775
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -135,7 +135,6 @@ config ARM64
	select COMMON_CLK
	select CPU_PM if (SUSPEND || CPU_IDLE)
	select CPUMASK_OFFSTACK if NR_CPUS > 256
	select CRC32
	select DCACHE_WORD_ACCESS
	select DYNAMIC_FTRACE if FUNCTION_TRACER
	select DMA_BOUNCE_UNALIGNED_KMALLOC
+2 −0
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@

#include <asm/rsi.h>

struct device;

struct arm64_mem_crypt_ops {
	int (*encrypt)(unsigned long addr, int numpages);
	int (*decrypt)(unsigned long addr, int numpages);
+2 −0
Original line number Diff line number Diff line
@@ -7,6 +7,8 @@
#define __ASM_RSI_CMDS_H

#include <linux/arm-smccc.h>
#include <linux/string.h>
#include <asm/memory.h>

#include <asm/rsi_smc.h>

+53 −54
Original line number Diff line number Diff line
@@ -209,11 +209,10 @@ static const char *const compat_hwcap2_str[] = {

static int c_show(struct seq_file *m, void *v)
{
	int i, j;
	int j;
	int cpu = m->index;
	bool compat = personality(current->personality) == PER_LINUX32;

	for_each_online_cpu(i) {
		struct cpuinfo_arm64 *cpuinfo = &per_cpu(cpu_data, i);
	struct cpuinfo_arm64 *cpuinfo = v;
	u32 midr = cpuinfo->reg_midr;

	/*
@@ -221,7 +220,7 @@ static int c_show(struct seq_file *m, void *v)
	 * online processors, looking for lines beginning with
	 * "processor".  Give glibc what it expects.
	 */
		seq_printf(m, "processor\t: %d\n", i);
	seq_printf(m, "processor\t: %d\n", cpu);
	if (compat)
		seq_printf(m, "model name\t: ARMv8 Processor rev %d (%s)\n",
			   MIDR_REVISION(midr), COMPAT_ELF_PLATFORM);
@@ -265,24 +264,24 @@ static int c_show(struct seq_file *m, void *v)

	seq_printf(m, "CPU implementer\t: 0x%02x\n",
		   MIDR_IMPLEMENTOR(midr));
		seq_printf(m, "CPU architecture: 8\n");
	seq_puts(m, "CPU architecture: 8\n");
	seq_printf(m, "CPU variant\t: 0x%x\n", MIDR_VARIANT(midr));
	seq_printf(m, "CPU part\t: 0x%03x\n", MIDR_PARTNUM(midr));
	seq_printf(m, "CPU revision\t: %d\n\n", MIDR_REVISION(midr));
	}

	return 0;
}

static void *c_start(struct seq_file *m, loff_t *pos)
{
	return *pos < 1 ? (void *)1 : NULL;
	*pos = cpumask_next(*pos - 1, cpu_online_mask);
	return *pos < nr_cpu_ids ? &per_cpu(cpu_data, *pos) : NULL;
}

static void *c_next(struct seq_file *m, void *v, loff_t *pos)
{
	++*pos;
	return NULL;
	return c_start(m, pos);
}

static void c_stop(struct seq_file *m, void *v)
+5 −5
Original line number Diff line number Diff line
@@ -169,7 +169,7 @@ static void __init smp_build_mpidr_hash(void)

static void __init setup_machine_fdt(phys_addr_t dt_phys)
{
	int size;
	int size = 0;
	void *dt_virt = fixmap_remap_fdt(dt_phys, &size, PAGE_KERNEL);
	const char *name;

@@ -182,10 +182,10 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys)
	 */
	if (!early_init_dt_scan(dt_virt, dt_phys)) {
		pr_crit("\n"
			"Error: invalid device tree blob at physical address %pa (virtual address 0x%px)\n"
			"The dtb must be 8-byte aligned and must not exceed 2 MB in size\n"
			"\nPlease check your bootloader.",
			&dt_phys, dt_virt);
			"Error: invalid device tree blob: PA=%pa, VA=%px, size=%d bytes\n"
			"The dtb must be 8-byte aligned and must not exceed 2 MB in size.\n"
			"\nPlease check your bootloader.\n",
			&dt_phys, dt_virt, size);

		/*
		 * Note that in this _really_ early stage we cannot even BUG()