]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - include/fdt_support.h
Merge branch 'u-boot/master'
[karo-tx-uboot.git] / include / fdt_support.h
index 9871e2f81a09f95d7051c86a739b09bb5ee35817..ae010bb6248a5bd840166a0d32b9471b7988b1ac 100644 (file)
@@ -12,6 +12,8 @@
 
 #include <libfdt.h>
 
+u32 fdt_getprop_u32_default_node(const void *fdt, int off, int cell,
+                               const char *prop, const u32 dflt);
 u32 fdt_getprop_u32_default(const void *fdt, const char *path,
                                const char *prop, const u32 dflt);
 int fdt_chosen(void *fdt, int force);
@@ -63,6 +65,13 @@ int fdt_pci_dma_ranges(void *blob, int phb_off, struct pci_controller *hose);
 #endif
 
 void ft_board_setup(void *blob, bd_t *bd);
+/*
+ * The keystone2 SOC requires all 32 bit aliased addresses to be converted
+ * to their 36 physical format. This has to happen after all fdt nodes
+ * are added or modified by the image_setup_libfdt(). The ft_board_setup_ex()
+ * called at the end of the image_setup_libfdt() is to do that convertion.
+ */
+void ft_board_setup_ex(void *blob, bd_t *bd);
 void ft_cpu_setup(void *blob, bd_t *bd);
 void ft_pci_setup(void *blob, bd_t *bd);
 
@@ -85,6 +94,8 @@ int fdt_add_edid(void *blob, const char *compat, unsigned char *buf);
 int fdt_verify_alias_address(void *fdt, int anode, const char *alias,
                              u64 addr);
 u64 fdt_get_base_address(void *fdt, int node);
+int fdt_read_range(void *fdt, int node, int n, uint64_t *child_addr,
+                  uint64_t *addr, uint64_t *len);
 
 enum fdt_status {
        FDT_STATUS_OKAY,
@@ -115,4 +126,9 @@ static inline int fdt_status_disabled_by_alias(void *fdt, const char* alias)
 }
 
 #endif /* ifdef CONFIG_OF_LIBFDT */
+
+#ifdef USE_HOSTCC
+int fdtdec_get_int(const void *blob, int node, const char *prop_name,
+               int default_val);
+#endif
 #endif /* ifndef __FDT_SUPPORT_H */