mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
of: Stop naming platform_device using dcr address
There is now a way to ensure all platform devices get a unique name when populated from the device tree, and the DCR_NATIVE code path is broken anyway. PowerPC Cell (PS3) is the only platform that actually uses this path. Most likely nobody will notice if it is killed. Remove the code and associated ugly #ifdef. The user-visible impact of this patch is that any DCR device on Cell will get a new name in the /sys/devices hierarchy. Signed-off-by: Grant Likely <grant.likely@linaro.org> Cc: Rob Herring <robh@kernel.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
07e461cd7e
commit
ba52464a62
@ -51,10 +51,6 @@ static inline void dcr_write_mmio(dcr_host_mmio_t host,
|
|||||||
out_be32(host.token + ((host.base + dcr_n) * host.stride), value);
|
out_be32(host.token + ((host.base + dcr_n) * host.stride), value);
|
||||||
}
|
}
|
||||||
|
|
||||||
extern u64 of_translate_dcr_address(struct device_node *dev,
|
|
||||||
unsigned int dcr_n,
|
|
||||||
unsigned int *stride);
|
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
#endif /* _ASM_POWERPC_DCR_MMIO_H */
|
#endif /* _ASM_POWERPC_DCR_MMIO_H */
|
||||||
|
|
||||||
|
@ -152,9 +152,9 @@ EXPORT_SYMBOL_GPL(dcr_resource_len);
|
|||||||
|
|
||||||
#ifdef CONFIG_PPC_DCR_MMIO
|
#ifdef CONFIG_PPC_DCR_MMIO
|
||||||
|
|
||||||
u64 of_translate_dcr_address(struct device_node *dev,
|
static u64 of_translate_dcr_address(struct device_node *dev,
|
||||||
unsigned int dcr_n,
|
unsigned int dcr_n,
|
||||||
unsigned int *out_stride)
|
unsigned int *out_stride)
|
||||||
{
|
{
|
||||||
struct device_node *dp;
|
struct device_node *dp;
|
||||||
const u32 *p;
|
const u32 *p;
|
||||||
|
@ -51,10 +51,6 @@ struct platform_device *of_find_device_by_node(struct device_node *np)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL(of_find_device_by_node);
|
EXPORT_SYMBOL(of_find_device_by_node);
|
||||||
|
|
||||||
#if defined(CONFIG_PPC_DCR)
|
|
||||||
#include <asm/dcr.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef CONFIG_OF_ADDRESS
|
#ifdef CONFIG_OF_ADDRESS
|
||||||
/*
|
/*
|
||||||
* The following routines scan a subtree and registers a device for
|
* The following routines scan a subtree and registers a device for
|
||||||
@ -78,26 +74,6 @@ void of_device_make_bus_id(struct device *dev)
|
|||||||
const __be32 *reg;
|
const __be32 *reg;
|
||||||
u64 addr;
|
u64 addr;
|
||||||
|
|
||||||
#ifdef CONFIG_PPC_DCR
|
|
||||||
/*
|
|
||||||
* If it's a DCR based device, use 'd' for native DCRs
|
|
||||||
* and 'D' for MMIO DCRs.
|
|
||||||
*/
|
|
||||||
reg = of_get_property(node, "dcr-reg", NULL);
|
|
||||||
if (reg) {
|
|
||||||
#ifdef CONFIG_PPC_DCR_NATIVE
|
|
||||||
dev_set_name(dev, "d%x.%s", *reg, node->name);
|
|
||||||
#else /* CONFIG_PPC_DCR_NATIVE */
|
|
||||||
u64 addr = of_translate_dcr_address(node, *reg, NULL);
|
|
||||||
if (addr != OF_BAD_ADDR) {
|
|
||||||
dev_set_name(dev, "D%llx.%s",
|
|
||||||
(unsigned long long)addr, node->name);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
#endif /* !CONFIG_PPC_DCR_NATIVE */
|
|
||||||
}
|
|
||||||
#endif /* CONFIG_PPC_DCR */
|
|
||||||
|
|
||||||
/* Construct the name, using parent nodes if necessary to ensure uniqueness */
|
/* Construct the name, using parent nodes if necessary to ensure uniqueness */
|
||||||
while (node->parent) {
|
while (node->parent) {
|
||||||
/*
|
/*
|
||||||
|
Loading…
Reference in New Issue
Block a user