diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-04 13:02:38 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-04 13:02:38 -0400 |
commit | d27050641e9bc056446deb0814e7ba1aa7911f5a (patch) | |
tree | 160f46d9a6df3d7234c71a9fbaa31ebcf89c04d0 /arch/microblaze | |
parent | b77279bc2e81545b20824da701b349272a78e4e7 (diff) | |
parent | 43cb43678705e39b175b325f17938295996aefc7 (diff) |
Merge tag 'devicetree-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux into next
Pull DeviceTree updates from Rob Herring:
- Another round of clean-up of FDT related code in architecture code.
This removes knowledge of internal FDT details from most
architectures except powerpc.
- Conversion of kernel's custom FDT parsing code to use libfdt.
- DT based initialization for generic serial earlycon. The
introduction of generic serial earlycon support went in through the
tty tree.
- Improve the platform device naming for DT probed devices to ensure
unique naming and use parent names instead of a global index.
- Fix a race condition in of_update_property.
- Unify the various linker section OF match tables and fix several
function prototype errors.
- Update platform_get_irq_byname to work in deferred probe cases.
- 2 binding doc updates
* tag 'devicetree-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux: (58 commits)
of: handle NULL node in next_child iterators
of/irq: provide more wrappers for !CONFIG_OF
devicetree: bindings: Document micrel vendor prefix
dt: bindings: dwc2: fix required value for the phy-names property
of_pci_irq: kill useless variable in of_irq_parse_pci()
of/irq: do irq resolution in platform_get_irq_byname()
of: Add a testcase for of_find_node_by_path()
of: Make of_find_node_by_path() handle /aliases
of: Create unlocked version of for_each_child_of_node()
lib: add glibc style strchrnul() variant
of: Handle memory@0 node on PPC32 only
pci/of: Remove dead code
of: fix race between search and remove in of_update_property()
of: Use NULL for pointers
of: Stop naming platform_device using dcr address
of: Ensure unique names without sacrificing determinism
tty/serial: pl011: add DT based earlycon support
of/fdt: add FDT serial scanning for earlycon
of/fdt: add FDT address translation support
serial: earlycon: add DT support
...
Diffstat (limited to 'arch/microblaze')
-rw-r--r-- | arch/microblaze/kernel/prom.c | 39 |
1 files changed, 4 insertions, 35 deletions
diff --git a/arch/microblaze/kernel/prom.c b/arch/microblaze/kernel/prom.c index abdfb10e7eca..68f099960ebc 100644 --- a/arch/microblaze/kernel/prom.c +++ b/arch/microblaze/kernel/prom.c | |||
@@ -43,13 +43,13 @@ | |||
43 | #include <asm/pci-bridge.h> | 43 | #include <asm/pci-bridge.h> |
44 | 44 | ||
45 | #ifdef CONFIG_EARLY_PRINTK | 45 | #ifdef CONFIG_EARLY_PRINTK |
46 | static char *stdout; | 46 | static const char *stdout; |
47 | 47 | ||
48 | static int __init early_init_dt_scan_chosen_serial(unsigned long node, | 48 | static int __init early_init_dt_scan_chosen_serial(unsigned long node, |
49 | const char *uname, int depth, void *data) | 49 | const char *uname, int depth, void *data) |
50 | { | 50 | { |
51 | unsigned long l; | 51 | int l; |
52 | char *p; | 52 | const char *p; |
53 | 53 | ||
54 | pr_debug("%s: depth: %d, uname: %s\n", __func__, depth, uname); | 54 | pr_debug("%s: depth: %d, uname: %s\n", __func__, depth, uname); |
55 | 55 | ||
@@ -80,7 +80,7 @@ static int __init early_init_dt_scan_chosen_serial(unsigned long node, | |||
80 | (strncmp(p, "xlnx,opb-uartlite", 17) == 0) || | 80 | (strncmp(p, "xlnx,opb-uartlite", 17) == 0) || |
81 | (strncmp(p, "xlnx,axi-uartlite", 17) == 0) || | 81 | (strncmp(p, "xlnx,axi-uartlite", 17) == 0) || |
82 | (strncmp(p, "xlnx,mdm", 8) == 0)) { | 82 | (strncmp(p, "xlnx,mdm", 8) == 0)) { |
83 | unsigned int *addrp; | 83 | const unsigned int *addrp; |
84 | 84 | ||
85 | *(u32 *)data = UARTLITE; | 85 | *(u32 *)data = UARTLITE; |
86 | 86 | ||
@@ -114,34 +114,3 @@ void __init early_init_devtree(void *params) | |||
114 | 114 | ||
115 | pr_debug(" <- early_init_devtree()\n"); | 115 | pr_debug(" <- early_init_devtree()\n"); |
116 | } | 116 | } |
117 | |||
118 | /******* | ||
119 | * | ||
120 | * New implementation of the OF "find" APIs, return a refcounted | ||
121 | * object, call of_node_put() when done. The device tree and list | ||
122 | * are protected by a rw_lock. | ||
123 | * | ||
124 | * Note that property management will need some locking as well, | ||
125 | * this isn't dealt with yet. | ||
126 | * | ||
127 | *******/ | ||
128 | |||
129 | #if defined(CONFIG_DEBUG_FS) && defined(DEBUG) | ||
130 | static struct debugfs_blob_wrapper flat_dt_blob; | ||
131 | |||
132 | static int __init export_flat_device_tree(void) | ||
133 | { | ||
134 | struct dentry *d; | ||
135 | |||
136 | flat_dt_blob.data = initial_boot_params; | ||
137 | flat_dt_blob.size = initial_boot_params->totalsize; | ||
138 | |||
139 | d = debugfs_create_blob("flat-device-tree", S_IFREG | S_IRUSR, | ||
140 | of_debugfs_root, &flat_dt_blob); | ||
141 | if (!d) | ||
142 | return 1; | ||
143 | |||
144 | return 0; | ||
145 | } | ||
146 | device_initcall(export_flat_device_tree); | ||
147 | #endif | ||