diff options
Diffstat (limited to 'drivers/of')
-rw-r--r-- | drivers/of/fdt.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index 34bdc4de83d0..4b15aa163b6e 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c | |||
@@ -109,6 +109,25 @@ int of_fdt_is_compatible(const void *blob, | |||
109 | } | 109 | } |
110 | 110 | ||
111 | /** | 111 | /** |
112 | * of_fdt_is_big_endian - Return true if given node needs BE MMIO accesses | ||
113 | * @blob: A device tree blob | ||
114 | * @node: node to test | ||
115 | * | ||
116 | * Returns true if the node has a "big-endian" property, or if the kernel | ||
117 | * was compiled for BE *and* the node has a "native-endian" property. | ||
118 | * Returns false otherwise. | ||
119 | */ | ||
120 | bool of_fdt_is_big_endian(const void *blob, unsigned long node) | ||
121 | { | ||
122 | if (fdt_getprop(blob, node, "big-endian", NULL)) | ||
123 | return true; | ||
124 | if (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN) && | ||
125 | fdt_getprop(blob, node, "native-endian", NULL)) | ||
126 | return true; | ||
127 | return false; | ||
128 | } | ||
129 | |||
130 | /** | ||
112 | * of_fdt_match - Return true if node matches a list of compatible values | 131 | * of_fdt_match - Return true if node matches a list of compatible values |
113 | */ | 132 | */ |
114 | int of_fdt_match(const void *blob, unsigned long node, | 133 | int of_fdt_match(const void *blob, unsigned long node, |