blob: 0c2b1df43134a437aaa3b6bae6d133c112d701ec [file] [log] [blame]
Amit Nagal56d18572023-07-10 10:32:15 +05301/*
Maheedhar Bollapalliea453872024-12-04 04:12:53 +00002 * Copyright (c) 2023-2025, Advanced Micro Devices, Inc. All rights reserved.
Amit Nagal56d18572023-07-10 10:32:15 +05303 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7#ifndef PLAT_FDT_H
8#define PLAT_FDT_H
9
10void prepare_dtb(void);
Maheedhar Bollapalliea453872024-12-04 04:12:53 +000011uintptr_t plat_retrieve_dt_addr(void);
Prasad Kummari046e1302023-10-20 15:09:27 +053012int32_t is_valid_dtb(void *fdt);
Prasad Kummari046e1302023-10-20 15:09:27 +053013
Maheedhar Bollapalli59eaed02025-06-25 04:20:19 +000014#define MAX_RESERVE_ADDR_INDICES 32
15struct reserve_mem_range {
16 uintptr_t base;
17 size_t size;
18};
19
20#if (TRANSFER_LIST == 1)
21uint32_t retrieve_reserved_entries(void);
22struct reserve_mem_range *get_reserved_entries_fdt(uint32_t *reserve_nodes);
23#else
24static inline uint32_t retrieve_reserved_entries(void)
25{
26 return 0;
27}
28
29static inline struct reserve_mem_range *get_reserved_entries_fdt(uint32_t *reserve_nodes)
30{
31 if (reserve_nodes) {
32 *reserve_nodes = 0;
33 }
34
35 return NULL;
36}
37#endif
38
Amit Nagal56d18572023-07-10 10:32:15 +053039#endif /* PLAT_FDT_H */