OSDN Git Service

of: Add OF_DMA_DEFAULT_COHERENT & select it on powerpc
[sagit-ice-cold/kernel_xiaomi_msm8998.git] / drivers / of / address.c
index 9582c57..b3bf876 100644 (file)
@@ -260,7 +260,7 @@ struct of_pci_range *of_pci_range_parser_one(struct of_pci_range_parser *parser,
        if (!parser->range || parser->range + parser->np > parser->end)
                return NULL;
 
-       range->pci_space = parser->range[0];
+       range->pci_space = be32_to_cpup(parser->range);
        range->flags = of_bus_pci_get_flags(parser->range);
        range->pci_addr = of_read_number(parser->range + 1, ns);
        range->cpu_addr = of_translate_address(parser->node,
@@ -1009,12 +1009,16 @@ EXPORT_SYMBOL_GPL(of_dma_get_range);
  * @np:        device node
  *
  * It returns true if "dma-coherent" property was found
- * for this device in DT.
+ * for this device in the DT, or if DMA is coherent by
+ * default for OF devices on the current platform.
  */
 bool of_dma_is_coherent(struct device_node *np)
 {
        struct device_node *node = of_node_get(np);
 
+       if (IS_ENABLED(CONFIG_OF_DMA_DEFAULT_COHERENT))
+               return true;
+
        while (node) {
                if (of_property_read_bool(node, "dma-coherent")) {
                        of_node_put(node);