aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-10-08 05:34:24 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-10-08 05:34:24 -0400
commit6325e940e7e0c690c6bdfaf5d54309e71845d3d9 (patch)
treebd1d2c33ae9420e98d3feee1f924fdad3f22552f /drivers/of
parent536fd93d432858eb6b7c1ad1dcfe051840ebef47 (diff)
parent0a6479b0ffad8dd236915e271faaf2cbb4cac287 (diff)
Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux
Pull arm64 updates from Catalin Marinas: - eBPF JIT compiler for arm64 - CPU suspend backend for PSCI (firmware interface) with standard idle states defined in DT (generic idle driver to be merged via a different tree) - Support for CONFIG_DEBUG_SET_MODULE_RONX - Support for unmapped cpu-release-addr (outside kernel linear mapping) - set_arch_dma_coherent_ops() implemented and bus notifiers removed - EFI_STUB improvements when base of DRAM is occupied - Typos in KGDB macros - Clean-up to (partially) allow kernel building with LLVM - Other clean-ups (extern keyword, phys_addr_t usage) * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (51 commits) arm64: Remove unneeded extern keyword ARM64: make of_device_ids const arm64: Use phys_addr_t type for physical address aarch64: filter $x from kallsyms arm64: Use DMA_ERROR_CODE to denote failed allocation arm64: Fix typos in KGDB macros arm64: insn: Add return statements after BUG_ON() arm64: debug: don't re-enable debug exceptions on return from el1_dbg Revert "arm64: dmi: Add SMBIOS/DMI support" arm64: Implement set_arch_dma_coherent_ops() to replace bus notifiers of: amba: use of_dma_configure for AMBA devices arm64: dmi: Add SMBIOS/DMI support arm64: Correct ftrace calls to aarch64_insn_gen_branch_imm() arm64:mm: initialize max_mapnr using function set_max_mapnr setup: Move unmask of async interrupts after possible earlycon setup arm64: LLVMLinux: Fix inline arm64 assembly for use with clang arm64: pageattr: Correctly adjust unaligned start addresses net: bpf: arm64: fix module memory leak when JIT image build fails arm64: add PSCI CPU_SUSPEND based cpu_suspend support arm64: kernel: introduce cpu_init_idle CPU operation ...
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/platform.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index 0197725e033a..3b64d0bf5bba 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -160,11 +160,10 @@ EXPORT_SYMBOL(of_device_alloc);
160 * can use Platform bus notifier and handle BUS_NOTIFY_ADD_DEVICE event 160 * can use Platform bus notifier and handle BUS_NOTIFY_ADD_DEVICE event
161 * to fix up DMA configuration. 161 * to fix up DMA configuration.
162 */ 162 */
163static void of_dma_configure(struct platform_device *pdev) 163static void of_dma_configure(struct device *dev)
164{ 164{
165 u64 dma_addr, paddr, size; 165 u64 dma_addr, paddr, size;
166 int ret; 166 int ret;
167 struct device *dev = &pdev->dev;
168 167
169 /* 168 /*
170 * Set default dma-mask to 32 bit. Drivers are expected to setup 169 * Set default dma-mask to 32 bit. Drivers are expected to setup
@@ -229,7 +228,7 @@ static struct platform_device *of_platform_device_create_pdata(
229 if (!dev) 228 if (!dev)
230 goto err_clear_flag; 229 goto err_clear_flag;
231 230
232 of_dma_configure(dev); 231 of_dma_configure(&dev->dev);
233 dev->dev.bus = &platform_bus_type; 232 dev->dev.bus = &platform_bus_type;
234 dev->dev.platform_data = platform_data; 233 dev->dev.platform_data = platform_data;
235 234
@@ -291,7 +290,6 @@ static struct amba_device *of_amba_device_create(struct device_node *node,
291 } 290 }
292 291
293 /* setup generic device info */ 292 /* setup generic device info */
294 dev->dev.coherent_dma_mask = ~0;
295 dev->dev.of_node = of_node_get(node); 293 dev->dev.of_node = of_node_get(node);
296 dev->dev.parent = parent; 294 dev->dev.parent = parent;
297 dev->dev.platform_data = platform_data; 295 dev->dev.platform_data = platform_data;
@@ -299,6 +297,7 @@ static struct amba_device *of_amba_device_create(struct device_node *node,
299 dev_set_name(&dev->dev, "%s", bus_id); 297 dev_set_name(&dev->dev, "%s", bus_id);
300 else 298 else
301 of_device_make_bus_id(&dev->dev); 299 of_device_make_bus_id(&dev->dev);
300 of_dma_configure(&dev->dev);
302 301
303 /* Allow the HW Peripheral ID to be overridden */ 302 /* Allow the HW Peripheral ID to be overridden */
304 prop = of_get_property(node, "arm,primecell-periphid", NULL); 303 prop = of_get_property(node, "arm,primecell-periphid", NULL);