From: Sudeep KarkadaNagesha <Sudeep.KarkadaNagesha@arm.com> To: Nicolas Pitre <nicolas.pitre@linaro.org> Cc: Sudeep.KarkadaNagesha@arm.com, Russell King <linux@arm.linux.org.uk>, Shawn Guo <shawn.guo@linaro.org>, Gregory Clement <gregory.clement@free-electrons.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Viresh Kumar <viresh.kumar@linaro.org>, "Rafael J. Wysocki" <rjw@sisk.pl>, Grant Likely <grant.likely@linaro.org>, Rob Herring <rob.herring@calxeda.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>, Olof Johansson <olof@lixom.net>, Arnd Bergmann <arnd@arndb.de>, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, cpufreq@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> Subject: [PATCH v3 01/16] of: add support for retrieving cpu node for a given logical cpu index Date: Tue, 23 Jul 2013 11:54:10 +0100 [thread overview] Message-ID: <1374576850-9667-1-git-send-email-Sudeep.KarkadaNagesha@arm.com> (raw) In-Reply-To: <51ED4A99.3030403@arm.com> From: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> Currently different drivers requiring to access cpu device node are parsing the device tree themselves. Since the ordering in the DT need not match the logical cpu ordering, the parsing logic needs to consider that. However, this has resulted in lots of code duplication and in some cases even incorrect logic. It's better to consolidate them by adding support for getting cpu device node for a given logical cpu index in DT core library. However logical to physical index mapping can be architecture specific. This patch adds of_get_cpu_node to retrieve a cpu device node for a given logical cpu index. The default matching of the physical id to the logical cpu index can be overridden by architecture specific code. It is recommended to use these helper function only in pre-SMP/early initialisation stages to retrieve CPU device node pointers in logical ordering. Once the cpu devices are registered, it can be retrieved easily from cpu device of_node which avoids unnecessary parsing and matching. Acked-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> --- drivers/of/base.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++ include/linux/cpu.h | 1 + include/linux/of.h | 6 +++++ 3 files changed, 80 insertions(+) ----------------->8-------------------------- Hi Nico, I found include/linux/cpu.h is more appropriate for this. Is that fine ? Regards, Sudeep diff --git a/drivers/of/base.c b/drivers/of/base.c index 5c54279..052b4b2 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -18,6 +18,7 @@ * 2 of the License, or (at your option) any later version. */ #include <linux/ctype.h> +#include <linux/cpu.h> #include <linux/module.h> #include <linux/of.h> #include <linux/spinlock.h> @@ -230,6 +231,78 @@ const void *of_get_property(const struct device_node *np, const char *name, } EXPORT_SYMBOL(of_get_property); +/* + * arch_match_cpu_phys_id - Match the given logical CPU and physical id + * + * @cpu: logical index of a cpu + * @phys_id: physical identifier of a cpu + * + * CPU logical to physical index mapping is architecture specific. + * However this __weak function provides a default match of physical + * id to logical cpu index. + * + * Returns true if the physical identifier and the logical index correspond + * to the same cpu, false otherwise. + */ +bool __weak arch_match_cpu_phys_id(int cpu, u64 phys_id) +{ + return (u32)phys_id == cpu; +} + +/** + * of_get_cpu_node - Get device node associated with the given logical CPU + * + * @cpu: CPU number(logical index) for which device node is required + * + * The main purpose of this function is to retrieve the device node for the + * given logical CPU index. It should be used to initialize the of_node in + * cpu device. Once of_node in cpu device is populated, all the further + * references can use that instead. + * + * CPU logical to physical index mapping is architecture specific and is built + * before booting secondary cores. This function uses arch_match_cpu_phys_id + * which can be overridden by architecture specific implementation. + * + * Returns a node pointer for the logical cpu if found, else NULL. + */ +struct device_node *of_get_cpu_node(int cpu) +{ + struct device_node *cpun, *cpus; + const __be32 *cell; + u64 hwid; + int ac, prop_len; + + cpus = of_find_node_by_path("/cpus"); + if (!cpus) { + pr_warn("Missing cpus node, bailing out\n"); + return NULL; + } + + if (of_property_read_u32(cpus, "#address-cells", &ac)) { + pr_warn("%s: missing #address-cells\n", cpus->full_name); + ac = of_n_addr_cells(cpus); + } + + for_each_child_of_node(cpus, cpun) { + if (of_node_cmp(cpun->type, "cpu")) + continue; + cell = of_get_property(cpun, "reg", &prop_len); + if (!cell) { + pr_warn("%s: missing reg property\n", cpun->full_name); + continue; + } + prop_len /= sizeof(*cell); + while (prop_len) { + hwid = of_read_number(cell, ac); + prop_len -= ac; + if (arch_match_cpu_phys_id(cpu, hwid)) + return cpun; + } + } + + return NULL; +} + /** Checks if the given "compat" string matches one of the strings in * the device's "compatible" property */ diff --git a/include/linux/cpu.h b/include/linux/cpu.h index ab0eade..d0c8204 100644 --- a/include/linux/cpu.h +++ b/include/linux/cpu.h @@ -34,6 +34,7 @@ extern void cpu_remove_dev_attr(struct device_attribute *attr); extern int cpu_add_dev_attr_group(struct attribute_group *attrs); extern void cpu_remove_dev_attr_group(struct attribute_group *attrs); +extern bool arch_match_cpu_phys_id(int cpu, u64 phys_id); #ifdef CONFIG_HOTPLUG_CPU extern void unregister_cpu(struct cpu *cpu); diff --git a/include/linux/of.h b/include/linux/of.h index 1fd08ca..9e82812 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -266,6 +266,7 @@ extern int of_device_is_available(const struct device_node *device); extern const void *of_get_property(const struct device_node *node, const char *name, int *lenp); +extern struct device_node *of_get_cpu_node(int cpu); #define for_each_property_of_node(dn, pp) \ for (pp = dn->properties; pp != NULL; pp = pp->next) @@ -459,6 +460,11 @@ static inline const void *of_get_property(const struct device_node *node, return NULL; } +static inline struct device_node *of_get_cpu_node(int cpu) +{ + return NULL; +} + static inline int of_property_read_u64(const struct device_node *np, const char *propname, u64 *out_value) { -- 1.8.1.2
WARNING: multiple messages have this Message-ID (diff)
From: Sudeep.KarkadaNagesha@arm.com (Sudeep KarkadaNagesha) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 01/16] of: add support for retrieving cpu node for a given logical cpu index Date: Tue, 23 Jul 2013 11:54:10 +0100 [thread overview] Message-ID: <1374576850-9667-1-git-send-email-Sudeep.KarkadaNagesha@arm.com> (raw) In-Reply-To: <51ED4A99.3030403@arm.com> From: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> Currently different drivers requiring to access cpu device node are parsing the device tree themselves. Since the ordering in the DT need not match the logical cpu ordering, the parsing logic needs to consider that. However, this has resulted in lots of code duplication and in some cases even incorrect logic. It's better to consolidate them by adding support for getting cpu device node for a given logical cpu index in DT core library. However logical to physical index mapping can be architecture specific. This patch adds of_get_cpu_node to retrieve a cpu device node for a given logical cpu index. The default matching of the physical id to the logical cpu index can be overridden by architecture specific code. It is recommended to use these helper function only in pre-SMP/early initialisation stages to retrieve CPU device node pointers in logical ordering. Once the cpu devices are registered, it can be retrieved easily from cpu device of_node which avoids unnecessary parsing and matching. Acked-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> --- drivers/of/base.c | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++ include/linux/cpu.h | 1 + include/linux/of.h | 6 +++++ 3 files changed, 80 insertions(+) ----------------->8-------------------------- Hi Nico, I found include/linux/cpu.h is more appropriate for this. Is that fine ? Regards, Sudeep diff --git a/drivers/of/base.c b/drivers/of/base.c index 5c54279..052b4b2 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -18,6 +18,7 @@ * 2 of the License, or (at your option) any later version. */ #include <linux/ctype.h> +#include <linux/cpu.h> #include <linux/module.h> #include <linux/of.h> #include <linux/spinlock.h> @@ -230,6 +231,78 @@ const void *of_get_property(const struct device_node *np, const char *name, } EXPORT_SYMBOL(of_get_property); +/* + * arch_match_cpu_phys_id - Match the given logical CPU and physical id + * + * @cpu: logical index of a cpu + * @phys_id: physical identifier of a cpu + * + * CPU logical to physical index mapping is architecture specific. + * However this __weak function provides a default match of physical + * id to logical cpu index. + * + * Returns true if the physical identifier and the logical index correspond + * to the same cpu, false otherwise. + */ +bool __weak arch_match_cpu_phys_id(int cpu, u64 phys_id) +{ + return (u32)phys_id == cpu; +} + +/** + * of_get_cpu_node - Get device node associated with the given logical CPU + * + * @cpu: CPU number(logical index) for which device node is required + * + * The main purpose of this function is to retrieve the device node for the + * given logical CPU index. It should be used to initialize the of_node in + * cpu device. Once of_node in cpu device is populated, all the further + * references can use that instead. + * + * CPU logical to physical index mapping is architecture specific and is built + * before booting secondary cores. This function uses arch_match_cpu_phys_id + * which can be overridden by architecture specific implementation. + * + * Returns a node pointer for the logical cpu if found, else NULL. + */ +struct device_node *of_get_cpu_node(int cpu) +{ + struct device_node *cpun, *cpus; + const __be32 *cell; + u64 hwid; + int ac, prop_len; + + cpus = of_find_node_by_path("/cpus"); + if (!cpus) { + pr_warn("Missing cpus node, bailing out\n"); + return NULL; + } + + if (of_property_read_u32(cpus, "#address-cells", &ac)) { + pr_warn("%s: missing #address-cells\n", cpus->full_name); + ac = of_n_addr_cells(cpus); + } + + for_each_child_of_node(cpus, cpun) { + if (of_node_cmp(cpun->type, "cpu")) + continue; + cell = of_get_property(cpun, "reg", &prop_len); + if (!cell) { + pr_warn("%s: missing reg property\n", cpun->full_name); + continue; + } + prop_len /= sizeof(*cell); + while (prop_len) { + hwid = of_read_number(cell, ac); + prop_len -= ac; + if (arch_match_cpu_phys_id(cpu, hwid)) + return cpun; + } + } + + return NULL; +} + /** Checks if the given "compat" string matches one of the strings in * the device's "compatible" property */ diff --git a/include/linux/cpu.h b/include/linux/cpu.h index ab0eade..d0c8204 100644 --- a/include/linux/cpu.h +++ b/include/linux/cpu.h @@ -34,6 +34,7 @@ extern void cpu_remove_dev_attr(struct device_attribute *attr); extern int cpu_add_dev_attr_group(struct attribute_group *attrs); extern void cpu_remove_dev_attr_group(struct attribute_group *attrs); +extern bool arch_match_cpu_phys_id(int cpu, u64 phys_id); #ifdef CONFIG_HOTPLUG_CPU extern void unregister_cpu(struct cpu *cpu); diff --git a/include/linux/of.h b/include/linux/of.h index 1fd08ca..9e82812 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -266,6 +266,7 @@ extern int of_device_is_available(const struct device_node *device); extern const void *of_get_property(const struct device_node *node, const char *name, int *lenp); +extern struct device_node *of_get_cpu_node(int cpu); #define for_each_property_of_node(dn, pp) \ for (pp = dn->properties; pp != NULL; pp = pp->next) @@ -459,6 +460,11 @@ static inline const void *of_get_property(const struct device_node *node, return NULL; } +static inline struct device_node *of_get_cpu_node(int cpu) +{ + return NULL; +} + static inline int of_property_read_u64(const struct device_node *np, const char *propname, u64 *out_value) { -- 1.8.1.2
next prev parent reply other threads:[~2013-07-23 10:53 UTC|newest] Thread overview: 379+ messages / expand[flat|nested] mbox.gz Atom feed top 2013-07-17 14:06 [RFC PATCH v2 00/15] DT/core: update cpu device of_node Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 01/15] of: add support for retrieving cpu node for a given logical cpu index Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha-5wv7dgnIgG8 2013-07-17 14:30 ` Nicolas Pitre 2013-07-17 14:30 ` Nicolas Pitre 2013-07-17 14:30 ` Nicolas Pitre 2013-07-17 14:50 ` Rob Herring 2013-07-17 14:50 ` Rob Herring 2013-07-17 15:18 ` Sudeep KarkadaNagesha 2013-07-17 15:18 ` Sudeep KarkadaNagesha 2013-07-17 15:18 ` Sudeep KarkadaNagesha 2013-07-17 14:06 ` [RFC PATCH v2 02/15] driver/core: cpu: initialize of_node in cpu's device struture Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 03/15] ARM: DT/kernel: define ARM specific arch_match_cpu_phys_id Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 04/15] ARM: topology: remove hwid/MPIDR dependency from cpu_capacity Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha-5wv7dgnIgG8 2013-07-17 14:06 ` [RFC PATCH v2 05/15] ARM: mvebu: remove device tree parsing for cpu nodes Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha-5wv7dgnIgG8 2013-07-17 14:06 ` [RFC PATCH v2 06/15] drivers/bus: arm-cci: avoid parsing DT for cpu device nodes Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha 2013-07-17 14:06 ` [RFC PATCH v2 07/15] cpufreq: imx6q-cpufreq: remove device tree parsing for cpu nodes Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha-5wv7dgnIgG8 2013-07-17 14:06 ` [RFC PATCH v2 08/15] cpufreq: cpufreq-cpu0: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` Sudeep.KarkadaNagesha-5wv7dgnIgG8 2013-07-17 14:06 ` [RFC PATCH v2 09/15] cpufreq: highbank-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 10/15] cpufreq: spear-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 11/15] cpufreq: kirkwood-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:43 ` Andrew Lunn 2013-07-17 14:43 ` Andrew Lunn 2013-07-18 7:53 ` Viresh Kumar 2013-07-18 7:53 ` Viresh Kumar 2013-07-18 8:24 ` Sudeep KarkadaNagesha 2013-07-18 8:24 ` Sudeep KarkadaNagesha 2013-07-18 8:24 ` Sudeep KarkadaNagesha 2013-07-18 10:14 ` Sudeep KarkadaNagesha 2013-07-18 10:14 ` Sudeep KarkadaNagesha 2013-07-18 10:14 ` Sudeep KarkadaNagesha 2013-07-18 18:30 ` Rob Herring 2013-07-18 18:30 ` Rob Herring 2013-07-18 18:30 ` Rob Herring 2013-07-17 14:06 ` [RFC PATCH v2 12/15] cpufreq: arm_big_little: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 13/15] cpufreq: maple-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 14/15] cpufreq: pmac64-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-17 14:06 ` [RFC PATCH v2 15/15] cpufreq: pmac32-cpufreq: " Sudeep.KarkadaNagesha 2013-07-17 14:06 ` Sudeep.KarkadaNagesha at arm.com 2013-07-18 7:54 ` [RFC PATCH v2 00/15] DT/core: update cpu device of_node Viresh Kumar 2013-07-18 7:54 ` Viresh Kumar 2013-07-22 11:32 ` [PATCH v3 00/16] " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 01/16] of: add support for retrieving cpu node for a given logical cpu index Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 14:14 ` Nicolas Pitre 2013-07-22 14:14 ` Nicolas Pitre 2013-07-22 15:07 ` Sudeep KarkadaNagesha 2013-07-22 15:07 ` Sudeep KarkadaNagesha 2013-07-22 15:07 ` Sudeep KarkadaNagesha 2013-07-23 10:54 ` Sudeep KarkadaNagesha [this message] 2013-07-23 10:54 ` Sudeep KarkadaNagesha 2013-08-15 11:32 ` Tomasz Figa 2013-08-15 11:32 ` Tomasz Figa 2013-08-15 14:59 ` Sudeep KarkadaNagesha 2013-08-15 14:59 ` Sudeep KarkadaNagesha 2013-08-15 14:59 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 02/16] ARM: DT/kernel: define ARM specific arch_match_cpu_phys_id Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 14:14 ` Nicolas Pitre 2013-07-22 14:14 ` Nicolas Pitre 2013-07-22 11:32 ` [PATCH v3 03/16] driver/core: cpu: initialize of_node in cpu's device struture Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-08-15 11:35 ` Tomasz Figa 2013-08-15 11:35 ` Tomasz Figa 2013-08-15 15:13 ` Sudeep KarkadaNagesha 2013-08-15 15:13 ` Sudeep KarkadaNagesha 2013-08-15 15:13 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 04/16] ARM: topology: remove hwid/MPIDR dependency from cpu_capacity Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 14:25 ` Nicolas Pitre 2013-07-22 14:25 ` Nicolas Pitre 2013-07-22 11:32 ` [PATCH v3 05/16] ARM: mvebu: remove device tree parsing for cpu nodes Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-08-01 9:54 ` Sudeep KarkadaNagesha 2013-08-01 9:54 ` Sudeep KarkadaNagesha 2013-08-01 9:54 ` Sudeep KarkadaNagesha 2013-08-01 12:02 ` Jason Cooper 2013-08-01 12:02 ` Jason Cooper 2013-08-01 12:02 ` Jason Cooper 2013-08-05 16:28 ` Sudeep KarkadaNagesha 2013-08-05 16:28 ` Sudeep KarkadaNagesha 2013-08-05 16:28 ` Sudeep KarkadaNagesha 2013-08-06 8:25 ` Gregory CLEMENT 2013-08-06 8:25 ` Gregory CLEMENT 2013-08-06 8:25 ` Gregory CLEMENT 2013-08-06 9:02 ` Sudeep KarkadaNagesha 2013-08-06 9:02 ` Sudeep KarkadaNagesha 2013-08-06 9:02 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 06/16] drivers/bus: arm-cci: avoid parsing DT for cpu device nodes Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 14:37 ` Nicolas Pitre 2013-07-22 14:37 ` Nicolas Pitre 2013-07-22 11:32 ` [PATCH v3 07/16] of/device: add helper to get cpu device node from logical cpu index Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-26 17:01 ` Sudeep KarkadaNagesha 2013-07-26 17:01 ` Sudeep KarkadaNagesha 2013-07-26 17:01 ` Sudeep KarkadaNagesha 2013-07-26 18:55 ` Rob Herring 2013-07-26 18:55 ` Rob Herring 2013-07-26 18:55 ` Rob Herring 2013-07-22 11:32 ` [PATCH v3 08/16] cpufreq: imx6q-cpufreq: remove device tree parsing for cpu nodes Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 09/16] cpufreq: cpufreq-cpu0: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 10/16] cpufreq: highbank-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 11/16] cpufreq: spear-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 12/16] cpufreq: kirkwood-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-23 9:25 ` Andrew Lunn 2013-07-23 9:25 ` Andrew Lunn 2013-07-22 11:32 ` [PATCH v3 13/16] cpufreq: arm_big_little: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 14/16] cpufreq: maple-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 15/16] cpufreq: pmac64-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-07-22 11:32 ` [PATCH v3 16/16] cpufreq: pmac32-cpufreq: " Sudeep KarkadaNagesha 2013-07-22 11:32 ` Sudeep KarkadaNagesha 2013-08-01 10:05 ` [PATCH v3 00/16] DT/core: update cpu device of_node Sudeep KarkadaNagesha 2013-08-01 10:05 ` Sudeep KarkadaNagesha 2013-08-01 10:05 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` [RFC PATCH 0/4] DT: move of_get_cpu_node from PPC to DT core Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` [RFC PATCH 1/4] microblaze: remove undefined of_get_cpu_node declaration Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` [RFC PATCH 2/4] openrisc: " Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-16 9:41 ` Sudeep KarkadaNagesha 2013-08-16 9:41 ` Sudeep KarkadaNagesha 2013-08-16 9:41 ` Sudeep KarkadaNagesha 2013-08-16 9:41 ` Sudeep KarkadaNagesha 2013-08-21 5:10 ` Jonas Bonn 2013-08-21 5:10 ` Jonas Bonn 2013-08-21 5:10 ` Jonas Bonn 2013-08-21 5:10 ` Jonas Bonn 2013-08-15 17:09 ` [RFC PATCH 3/4] powerpc: refactor of_get_cpu_node to support other architectures Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-16 4:49 ` Benjamin Herrenschmidt 2013-08-16 4:49 ` Benjamin Herrenschmidt 2013-08-16 4:49 ` Benjamin Herrenschmidt 2013-08-16 8:48 ` Sudeep KarkadaNagesha 2013-08-16 8:48 ` Sudeep KarkadaNagesha 2013-08-16 8:48 ` Sudeep KarkadaNagesha 2013-08-16 8:48 ` Sudeep KarkadaNagesha 2013-08-16 12:32 ` Benjamin Herrenschmidt 2013-08-16 12:32 ` Benjamin Herrenschmidt 2013-08-16 12:32 ` Benjamin Herrenschmidt 2013-08-16 12:44 ` Sudeep KarkadaNagesha 2013-08-16 12:44 ` Sudeep KarkadaNagesha 2013-08-16 12:44 ` Sudeep KarkadaNagesha 2013-08-16 12:44 ` Sudeep KarkadaNagesha 2013-08-16 4:50 ` Benjamin Herrenschmidt 2013-08-16 4:50 ` Benjamin Herrenschmidt 2013-08-16 4:50 ` Benjamin Herrenschmidt 2013-08-16 8:43 ` Sudeep KarkadaNagesha 2013-08-16 8:43 ` Sudeep KarkadaNagesha 2013-08-16 8:43 ` Sudeep KarkadaNagesha 2013-08-16 8:43 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` [RFC PATCH 4/4] of: move of_get_cpu_node implementation to DT core library Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-15 17:09 ` Sudeep KarkadaNagesha 2013-08-16 17:39 ` [RFC PATCH v2 0/4] DT: move of_get_cpu_node from PPC to DT core Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 17:39 ` [RFC PATCH v2 3/4] powerpc: refactor of_get_cpu_node to support other architectures Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 22:13 ` Benjamin Herrenschmidt 2013-08-16 22:13 ` Benjamin Herrenschmidt 2013-08-16 22:13 ` Benjamin Herrenschmidt 2013-08-19 10:13 ` Sudeep KarkadaNagesha 2013-08-19 10:13 ` Sudeep KarkadaNagesha 2013-08-19 10:13 ` Sudeep KarkadaNagesha 2013-08-19 10:13 ` Sudeep KarkadaNagesha 2013-08-17 10:50 ` Tomasz Figa 2013-08-17 10:50 ` Tomasz Figa 2013-08-17 10:50 ` Tomasz Figa 2013-08-17 22:09 ` Benjamin Herrenschmidt 2013-08-17 22:09 ` Benjamin Herrenschmidt 2013-08-17 22:09 ` Benjamin Herrenschmidt 2013-08-17 22:22 ` Tomasz Figa 2013-08-17 22:22 ` Tomasz Figa 2013-08-17 22:22 ` Tomasz Figa 2013-08-19 10:19 ` Mark Rutland 2013-08-19 10:19 ` Mark Rutland 2013-08-19 10:19 ` Mark Rutland 2013-08-19 13:02 ` Rob Herring 2013-08-19 13:02 ` Rob Herring 2013-08-19 13:02 ` Rob Herring 2013-08-19 13:02 ` Rob Herring 2013-08-19 13:56 ` Sudeep KarkadaNagesha 2013-08-19 13:56 ` Sudeep KarkadaNagesha 2013-08-19 13:56 ` Sudeep KarkadaNagesha 2013-08-19 13:56 ` Sudeep KarkadaNagesha 2013-08-22 13:59 ` Mark Rutland 2013-08-22 13:59 ` Mark Rutland 2013-08-22 13:59 ` Mark Rutland 2013-08-22 13:59 ` Mark Rutland 2013-08-22 16:51 ` Sudeep KarkadaNagesha 2013-08-22 16:51 ` Sudeep KarkadaNagesha 2013-08-22 16:51 ` Sudeep KarkadaNagesha 2013-08-22 16:51 ` Sudeep KarkadaNagesha 2013-08-28 19:46 ` Grant Likely 2013-08-28 19:46 ` Grant Likely 2013-08-28 19:46 ` Grant Likely 2013-08-28 19:46 ` Grant Likely 2013-08-29 9:50 ` Lorenzo Pieralisi 2013-08-29 9:50 ` Lorenzo Pieralisi 2013-08-29 9:50 ` Lorenzo Pieralisi 2013-08-29 9:50 ` Lorenzo Pieralisi 2013-08-16 17:39 ` [RFC PATCH v2 4/4] of: move of_get_cpu_node implementation to DT core library Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 17:39 ` Sudeep KarkadaNagesha 2013-08-16 22:14 ` Benjamin Herrenschmidt 2013-08-16 22:14 ` Benjamin Herrenschmidt 2013-08-16 22:14 ` Benjamin Herrenschmidt 2013-08-19 10:21 ` Sudeep KarkadaNagesha 2013-08-19 10:21 ` Sudeep KarkadaNagesha 2013-08-19 10:21 ` Sudeep KarkadaNagesha 2013-08-19 10:21 ` Sudeep KarkadaNagesha 2013-08-19 13:11 ` Rob Herring 2013-08-19 13:11 ` Rob Herring 2013-08-19 13:11 ` Rob Herring 2013-08-19 13:24 ` Sudeep KarkadaNagesha 2013-08-19 13:24 ` Sudeep KarkadaNagesha 2013-08-19 13:24 ` Sudeep KarkadaNagesha 2013-08-19 13:24 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 00/19] DT/core: update cpu device of_node Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 01/19] microblaze: remove undefined of_get_cpu_node declaration Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 02/19] openrisc: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 03/19] powerpc: refactor of_get_cpu_node to support other architectures Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 12:27 ` Rafael J. Wysocki 2013-08-20 12:27 ` Rafael J. Wysocki 2013-08-20 12:27 ` Rafael J. Wysocki 2013-08-20 12:22 ` Sudeep KarkadaNagesha 2013-08-20 12:22 ` Sudeep KarkadaNagesha 2013-08-20 12:22 ` Sudeep KarkadaNagesha 2013-08-20 12:22 ` Sudeep KarkadaNagesha 2013-08-20 21:48 ` Benjamin Herrenschmidt 2013-08-20 21:48 ` Benjamin Herrenschmidt 2013-08-20 21:48 ` Benjamin Herrenschmidt 2013-08-22 6:15 ` Benjamin Herrenschmidt 2013-08-22 6:15 ` Benjamin Herrenschmidt 2013-08-22 6:15 ` Benjamin Herrenschmidt 2013-08-22 13:29 ` Sudeep KarkadaNagesha 2013-08-22 13:29 ` Sudeep KarkadaNagesha 2013-08-22 13:29 ` Sudeep KarkadaNagesha 2013-08-22 13:29 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 04/19] of: move of_get_cpu_node implementation to DT core library Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 05/19] ARM: DT/kernel: define ARM specific arch_match_cpu_phys_id Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 06/19] driver/core: cpu: initialize of_node in cpu's device struture Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 12:28 ` Rafael J. Wysocki 2013-08-20 12:28 ` Rafael J. Wysocki 2013-08-20 12:28 ` Rafael J. Wysocki 2013-08-20 15:18 ` Greg Kroah-Hartman 2013-08-20 15:18 ` Greg Kroah-Hartman 2013-08-20 15:18 ` Greg Kroah-Hartman 2013-08-20 9:30 ` [PATCH v4 07/19] of/device: add helper to get cpu device node from logical cpu index Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 08/19] ARM: topology: remove hwid/MPIDR dependency from cpu_capacity Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 09/19] ARM: mvebu: remove device tree parsing for cpu nodes Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 10/19] drivers/bus: arm-cci: avoid parsing DT for cpu device nodes Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 11/19] cpufreq: imx6q-cpufreq: remove device tree parsing for cpu nodes Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 12/19] cpufreq: cpufreq-cpu0: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-09-06 13:44 ` Guennadi Liakhovetski 2013-09-06 13:44 ` Guennadi Liakhovetski 2013-09-06 13:44 ` Guennadi Liakhovetski 2013-09-09 9:24 ` Sudeep KarkadaNagesha 2013-09-09 9:24 ` Sudeep KarkadaNagesha 2013-09-09 9:24 ` Sudeep KarkadaNagesha 2013-09-09 9:24 ` Sudeep KarkadaNagesha 2013-09-09 14:32 ` Shawn Guo 2013-09-09 14:32 ` Shawn Guo 2013-09-09 14:32 ` Shawn Guo 2013-09-09 14:32 ` Shawn Guo 2013-09-09 15:24 ` Sudeep KarkadaNagesha 2013-09-09 15:24 ` Sudeep KarkadaNagesha 2013-09-09 15:24 ` Sudeep KarkadaNagesha 2013-09-09 15:24 ` Sudeep KarkadaNagesha 2013-09-10 2:44 ` Shawn Guo 2013-09-10 2:44 ` Shawn Guo 2013-09-10 2:44 ` Shawn Guo 2013-09-10 2:44 ` Shawn Guo 2013-09-10 10:56 ` Sudeep KarkadaNagesha 2013-09-10 10:56 ` Sudeep KarkadaNagesha 2013-09-10 10:56 ` Sudeep KarkadaNagesha 2013-09-10 10:56 ` Sudeep KarkadaNagesha 2013-09-10 11:19 ` Shawn Guo 2013-09-10 11:19 ` Shawn Guo 2013-09-10 11:19 ` Shawn Guo 2013-09-10 11:19 ` Shawn Guo 2013-08-20 9:30 ` [PATCH v4 13/19] cpufreq: highbank-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 14/19] cpufreq: spear-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 15/19] cpufreq: kirkwood-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 16/19] cpufreq: arm_big_little: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 17/19] cpufreq: maple-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 18/19] cpufreq: pmac64-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` [PATCH v4 19/19] cpufreq: pmac32-cpufreq: " Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha 2013-08-20 9:30 ` Sudeep KarkadaNagesha
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1374576850-9667-1-git-send-email-Sudeep.KarkadaNagesha@arm.com \ --to=sudeep.karkadanagesha@arm.com \ --cc=arnd@arndb.de \ --cc=cpufreq@vger.kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=grant.likely@linaro.org \ --cc=gregkh@linuxfoundation.org \ --cc=gregory.clement@free-electrons.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=lorenzo.pieralisi@arm.com \ --cc=nicolas.pitre@linaro.org \ --cc=olof@lixom.net \ --cc=rjw@sisk.pl \ --cc=rob.herring@calxeda.com \ --cc=shawn.guo@linaro.org \ --cc=viresh.kumar@linaro.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.