[PATCH 2/4] powerpc/perf: Add power9 event list macros for generic and cache events

2016-06-11 Thread Madhavan Srinivasan
Add macros for the generic and cache events on Power9 Signed-off-by: Madhavan Srinivasan --- arch/powerpc/perf/power9-events-list.h | 55 ++ 1 file changed, 55 insertions(+) create mode 100644 arch/powerpc/perf/power9-events-list.h diff --git a/arch/powerpc/perf

[PATCH 3/4] powerpc/perf: Power9 PMU support

2016-06-11 Thread Madhavan Srinivasan
This patch adds base enablement for the power9 PMU. Signed-off-by: Madhavan Srinivasan --- arch/powerpc/perf/Makefile | 2 +- arch/powerpc/perf/power9-pmu.c | 728 + 2 files changed, 729 insertions(+), 1 deletion(-) create mode 100644 arch/powerpc/p

[PATCH 4/4] powerpc/perf: Export Power9 generic and cache events to sysfs

2016-06-11 Thread Madhavan Srinivasan
Export the generic hardware and cache perf events for Power9 to sysfs, so users can determine the PMU event monitored. Signed-off-by: Madhavan Srinivasan --- arch/powerpc/perf/power9-pmu.c | 60 ++ 1 file changed, 60 insertions(+) diff --git a/arch/powerp

[PATCH 1/4] powerpc/perf: Initialise PMU related regs on POWER9

2016-06-11 Thread Madhavan Srinivasan
Add two new init functions __init_PMU_300 and __init_PMU_HV_300 to initialise PMU related regs on POWER9. Signed-off-by: Madhavan Srinivasan --- arch/powerpc/kernel/cpu_setup_power.S | 17 + 1 file changed, 17 insertions(+) diff --git a/arch/powerpc/kernel/cpu_setup_power.S b/a

Re: case sensitivity for devicetree node names

2016-06-11 Thread Frank Rowand
Hi Ben, (and adding other powerpc folks) On 06/10/16 13:05, Frank Rowand wrote: > I had assumed that devicetree node names were case sensitive. But a recent > email thread asserted that they were not, which made me curious. > > dtc treats node names as case sensitive: > > $ cat test_node_case_1

Re: case sensitivity for devicetree node names

2016-06-11 Thread Benjamin Herrenschmidt
On Sat, 2016-06-11 at 12:38 -0700, Frank Rowand wrote: > I chased through the history and found a 2.6.0-test5 announcement > which noted the patch from you which adds: > >   of_find_node_by_path() >   of_find_node_by_name() >   of_find_node_by_type() >   of_find_compatible_node() > > (And the pat

Re: [PATCH] powerpc: convert 'iommu_alloc failed' messages to dynamic debug

2016-06-11 Thread Benjamin Herrenschmidt
On Fri, 2016-06-10 at 10:03 -0300, Mauricio Faria de Oliveira wrote: > This prevents flooding the logs with 'iommu_alloc failed' messages > while I/O is performed (normally) to very fast devices (e.g. NVMe). > > That error is not necessarily a problem; device drivers can retry > later / reschedule

[PATCH 0/8] kexec_file_load implementation for PowerPC

2016-06-11 Thread Thiago Jung Bauermann
Hello, This patch series implements the kexec_file_load system call on PowerPC. It starts by removing an x86 assumption from kexec_file: kexec_add_buffer uses iomem to find reserved memory ranges, but PowerPC uses the memblock subsystem. Hooks are added so that each arch can specify how memory ra

[PATCH 1/8] kexec_file: Remove unused members from struct kexec_buf.

2016-06-11 Thread Thiago Jung Bauermann
kexec_add_buffer uses kexec_buf.buffer and kexec_buf.bufsz to pass along its own arguments buffer and bufsz, but since they aren't used anywhere else, it's pointless. Cc: Eric Biederman Cc: ke...@lists.infradead.org Cc: linux-ker...@vger.kernel.org --- kernel/kexec_file.c | 6 ++ kernel/

[PATCH 2/8] kexec_file: Generalize kexec_add_buffer.

2016-06-11 Thread Thiago Jung Bauermann
Allow architectures to specify different memory walking functions for kexec_add_buffer. Intel uses iomem to track reserved memory ranges, but PowerPC uses the memblock subsystem. Also, factor kexec_locate_mem_hole out of kexec_add_buffer. It will be used by the PowerPC kexec_file_load implementati

[PATCH 3/8] powerpc: Factor out relocation code from module_64.c to elf_util_64.c.

2016-06-11 Thread Thiago Jung Bauermann
The kexec_file_load system call needs to relocate the purgatory, so factor out the module relocation code so that it can be shared. This patch's purpose is to move the ELF relocation logic from apply_relocate_add to elf_util_64.c with as few changes as possible. The following changes were needed:

[PATCH 4/8] powerpc: Generalize elf64_apply_relocate_add.

2016-06-11 Thread Thiago Jung Bauermann
When apply_relocate_add is called, modules are already loaded at their final location in memory so Elf64_Shdr.sh_addr can be used for accessing the section contents as well as the base address for relocations. This is not the case for kexec's purgatory, because it will only be copied to its final

[PATCH 5/8] powerpc: Add functions to read ELF files of any endianness.

2016-06-11 Thread Thiago Jung Bauermann
A little endian kernel might need to kexec a big endian kernel (the opposite is less likely but could happen as well), so we can't just cast the buffer with the binary to ELF structs and use them as is done elsewhere. This patch adds functions which do byte-swapping as necessary when populating th

[PATCH 6/8] powerpc: Implement kexec_file_load.

2016-06-11 Thread Thiago Jung Bauermann
Adds the machinery needed by kexec_file_load, except actually loading a kernel and initrd. elf64_apply_relocate_add was extended to support relative symbols. This is necessary because before relocation, the module loading mechanism adjusts Elf64_Sym.st_value to point to the absolute memory address

[PATCH 7/8] powerpc: Add support for loading ELF kernels with kexec_file_load.

2016-06-11 Thread Thiago Jung Bauermann
This uses all the infrastructure built up by the previous patches in the series to load an ELF vmlinux file and an initrd. It uses the flattened device tree at initial_boot_params as a base and adjusts memory reservations and its /chosen node for the next kernel. Cc: ke...@lists.infradead.org Cc:

[PATCH 8/8] powerpc: Add purgatory for kexec_file_load implementation.

2016-06-11 Thread Thiago Jung Bauermann
This purgatory implementation comes from kexec-tools, almost unchanged. The only changes were that the sha256_regions global variable was renamed to sha_regions to match what kexec_file_load expects, and to use the sha256.c file from x86's purgatory to avoid adding yet another SHA-256 implementati

[RESEND PATCH 1/2] clk: Add consumer APIs for discovering possible parent clocks

2016-06-11 Thread Scott Wood
From: Scott Wood Commit fc4a05d4b0eb ("clk: Remove unused provider APIs") removed __clk_get_num_parents() and clk_hw_get_parent_by_index(), leaving only true provider API versions that operate on struct clk_hw. qoriq-cpufreq needs these functions in order to determine the options it has for call

[RESEND PATCH 2/2] cpufreq: qoriq: Don't look at clock implementation details

2016-06-11 Thread Scott Wood
From: Scott Wood Get the CPU clock's potential parent clocks from the clock interface itself, rather than manually parsing the clocks property to find a phandle, looking at the clock-names property of that, and assuming that those are valid parent clocks for the cpu clock. This is necessary now

Re: [RESEND PATCH 1/2] clk: Add consumer APIs for discovering possible parent clocks

2016-06-11 Thread kbuild test robot
Hi, [auto build test ERROR on clk/clk-next] [also build test ERROR on v4.7-rc2] [cannot apply to next-20160609] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Scott-Wood/clk-Add-consumer-APIs-fo

[PATCH v2 1/2] clk: Add consumer APIs for discovering possible parent clocks

2016-06-11 Thread Scott Wood
From: Scott Wood Commit fc4a05d4b0eb ("clk: Remove unused provider APIs") removed __clk_get_num_parents() and clk_hw_get_parent_by_index(), leaving only true provider API versions that operate on struct clk_hw. qoriq-cpufreq needs these functions in order to determine the options it has for call

[v2 PATCH 2/2] cpufreq: qoriq: Don't look at clock implementation details

2016-06-11 Thread Scott Wood
From: Scott Wood Get the CPU clock's potential parent clocks from the clock interface itself, rather than manually parsing the clocks property to find a phandle, looking at the clock-names property of that, and assuming that those are valid parent clocks for the cpu clock. This is necessary now

Re: [v2 PATCH 2/2] cpufreq: qoriq: Don't look at clock implementation details

2016-06-11 Thread kbuild test robot
Hi, [auto build test WARNING on clk/clk-next] [also build test WARNING on v4.7-rc2] [cannot apply to next-20160609] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Scott-Wood/clk-Add-consumer-API