serial: Convert ARM_DCC to Kconfig
[oweals/u-boot.git] / include / fdtdec.h
index e6c22dd5cd5c17abc7f0eb3c57402d4ffd52dd3a..abd6d42671949a104d5ac79432a89f8c012b1fb3 100644 (file)
@@ -54,7 +54,7 @@ struct bd_info;
 #define SPL_BUILD      0
 #endif
 
-#if CONFIG_IS_ENABLED(OF_PRIOR_STAGE)
+#ifdef CONFIG_OF_PRIOR_STAGE
 extern phys_addr_t prior_stage_fdt_address;
 #endif
 
@@ -111,6 +111,9 @@ struct fdt_pci_addr {
        u32     phys_lo;
 };
 
+extern u8 __dtb_dt_begin[];    /* embedded device tree blob */
+extern u8 __dtb_dt_spl_begin[];        /* embedded device tree blob for SPL/TPL */
+
 /**
  * Compute the size of a resource.
  *
@@ -416,23 +419,6 @@ fdt_addr_t fdtdec_get_addr(const void *blob, int node,
 fdt_addr_t fdtdec_get_addr_size(const void *blob, int node,
                const char *prop_name, fdt_size_t *sizep);
 
-/**
- * Look at an address property in a node and return the pci address which
- * corresponds to the given type in the form of fdt_pci_addr.
- * The property must hold one fdt_pci_addr with a lengh.
- *
- * @param blob         FDT blob
- * @param node         node to examine
- * @param type         pci address type (FDT_PCI_SPACE_xxx)
- * @param prop_name    name of property to find
- * @param addr         returns pci address in the form of fdt_pci_addr
- * @return 0 if ok, -ENOENT if the property did not exist, -EINVAL if the
- *             format of the property was invalid, -ENXIO if the requested
- *             address type was not found
- */
-int fdtdec_get_pci_addr(const void *blob, int node, enum fdt_pci_space type,
-               const char *prop_name, struct fdt_pci_addr *addr);
-
 /**
  * Look at the compatible property of a device node that represents a PCI
  * device and extract pci vendor id and device id from it.
@@ -455,7 +441,7 @@ int fdtdec_get_pci_vendev(const void *blob, int node,
  * @param bar          returns base address of the pci device's registers
  * @return 0 if ok, negative on error
  */
-int fdtdec_get_pci_bar32(struct udevice *dev, struct fdt_pci_addr *addr,
+int fdtdec_get_pci_bar32(const struct udevice *dev, struct fdt_pci_addr *addr,
                         u32 *bar);
 
 /**
@@ -1078,6 +1064,7 @@ static inline int fdtdec_set_phandle(void *blob, int node, uint32_t phandle)
  * @param basename     base name of the node to create
  * @param carveout     information about the carveout region
  * @param phandlep     return location for the phandle of the carveout region
+ *                     can be NULL if no phandle should be added
  * @return 0 on success or a negative error code on failure
  */
 int fdtdec_add_reserved_memory(void *blob, const char *basename,
@@ -1168,6 +1155,11 @@ int fdtdec_set_carveout(void *blob, const char *node, const char *prop_name,
  */
 int fdtdec_setup(void);
 
+/**
+ * Perform board-specific early DT adjustments
+ */
+int fdtdec_board_setup(const void *fdt_blob);
+
 #if CONFIG_IS_ENABLED(MULTI_DTB_FIT)
 /**
  * fdtdec_resetup()  - Set up the device tree again