1*83d290c5STom Rini/* SPDX-License-Identifier: GPL-2.0+ */ 2ade243a2SCédric Schieli/* 3ade243a2SCédric Schieli * (C) Copyright 2016 4ade243a2SCédric Schieli * Cédric Schieli <cschieli@gmail.com> 5ade243a2SCédric Schieli */ 6ade243a2SCédric Schieli 7ade243a2SCédric Schieli#include <config.h> 8ade243a2SCédric Schieli 9ade243a2SCédric Schieli.align 8 10ade243a2SCédric Schieli.global fw_dtb_pointer 11ade243a2SCédric Schielifw_dtb_pointer: 12ade243a2SCédric Schieli#ifdef CONFIG_ARM64 13ade243a2SCédric Schieli .dword 0x0 14ade243a2SCédric Schieli#else 15ade243a2SCédric Schieli .word 0x0 16ade243a2SCédric Schieli#endif 17ade243a2SCédric Schieli 18ade243a2SCédric Schieli/* 19ade243a2SCédric Schieli * Routine: save_boot_params (called after reset from start.S) 20ade243a2SCédric Schieli * Description: save ATAG/FDT address provided by the firmware at boot time 21ade243a2SCédric Schieli */ 22ade243a2SCédric Schieli 23ade243a2SCédric Schieli.global save_boot_params 24ade243a2SCédric Schielisave_boot_params: 25ade243a2SCédric Schieli 26ade243a2SCédric Schieli /* The firmware provided ATAG/FDT address can be found in r2/x0 */ 27ade243a2SCédric Schieli#ifdef CONFIG_ARM64 28ade243a2SCédric Schieli adr x8, fw_dtb_pointer 29ade243a2SCédric Schieli str x0, [x8] 30ade243a2SCédric Schieli#else 31ade243a2SCédric Schieli str r2, fw_dtb_pointer 32ade243a2SCédric Schieli#endif 33ade243a2SCédric Schieli 34ade243a2SCédric Schieli /* Returns */ 35ade243a2SCédric Schieli b save_boot_params_ret 36