| .. | .. |
|---|
| 9 | 9 | |
|---|
| 10 | 10 | #include <linux/init.h> |
|---|
| 11 | 11 | #include <linux/bitops.h> |
|---|
| 12 | | -#include <linux/bootmem.h> |
|---|
| 13 | | -#include <linux/clk-provider.h> |
|---|
| 12 | +#include <linux/memblock.h> |
|---|
| 14 | 13 | #include <linux/ioport.h> |
|---|
| 15 | 14 | #include <linux/kernel.h> |
|---|
| 16 | 15 | #include <linux/io.h> |
|---|
| 17 | 16 | #include <linux/of.h> |
|---|
| 17 | +#include <linux/of_clk.h> |
|---|
| 18 | 18 | #include <linux/of_fdt.h> |
|---|
| 19 | 19 | #include <linux/of_platform.h> |
|---|
| 20 | 20 | #include <linux/libfdt.h> |
|---|
| .. | .. |
|---|
| 153 | 153 | mips_hpt_frequency = freq; |
|---|
| 154 | 154 | } |
|---|
| 155 | 155 | |
|---|
| 156 | | -extern const char __appended_dtb; |
|---|
| 157 | | - |
|---|
| 158 | 156 | void __init plat_mem_setup(void) |
|---|
| 159 | 157 | { |
|---|
| 160 | 158 | void *dtb; |
|---|
| .. | .. |
|---|
| 164 | 162 | ioport_resource.start = 0; |
|---|
| 165 | 163 | ioport_resource.end = ~0; |
|---|
| 166 | 164 | |
|---|
| 167 | | -#ifdef CONFIG_MIPS_ELF_APPENDED_DTB |
|---|
| 168 | | - if (!fdt_check_header(&__appended_dtb)) |
|---|
| 169 | | - dtb = (void *)&__appended_dtb; |
|---|
| 170 | | - else |
|---|
| 171 | | -#endif |
|---|
| 172 | | - /* intended to somewhat resemble ARM; see Documentation/arm/Booting */ |
|---|
| 165 | + /* intended to somewhat resemble ARM; see Documentation/arm/booting.rst */ |
|---|
| 173 | 166 | if (fw_arg0 == 0 && fw_arg1 == 0xffffffff) |
|---|
| 174 | 167 | dtb = phys_to_virt(fw_arg2); |
|---|
| 175 | | - else if (fw_passed_dtb) /* UHI interface */ |
|---|
| 168 | + else if (fw_passed_dtb) /* UHI interface or appended dtb */ |
|---|
| 176 | 169 | dtb = (void *)fw_passed_dtb; |
|---|
| 177 | | - else if (__dtb_start != __dtb_end) |
|---|
| 170 | + else if (&__dtb_start != &__dtb_end) |
|---|
| 178 | 171 | dtb = (void *)__dtb_start; |
|---|
| 179 | 172 | else |
|---|
| 180 | 173 | panic("no dtb found"); |
|---|