1a47a12beSStefan Roese/* 2a47a12beSStefan Roese * Copyright (C) 2009 Wolfgang Denk <wd@denx.de> 3a47a12beSStefan Roese * 4*1a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 5a47a12beSStefan Roese */ 6a47a12beSStefan Roese 7a47a12beSStefan Roese#include <ppc_asm.tmpl> 8a47a12beSStefan Roese 9a47a12beSStefan Roese .file "reloc.S" 10a47a12beSStefan Roese 11a47a12beSStefan Roese .text 12a47a12beSStefan Roese#ifndef CONFIG_NAND_SPL 13a47a12beSStefan Roese /* 14a47a12beSStefan Roese * Function: relocate entries for one exception vector 15a47a12beSStefan Roese */ 16a47a12beSStefan Roese .globl trap_reloc 17a47a12beSStefan Roese .type trap_reloc, @function 18a47a12beSStefan Roesetrap_reloc: 19a47a12beSStefan Roese lwz r0, 0(r7) /* hdlr ... */ 20a47a12beSStefan Roese add r0, r0, r3 /* ... += dest_addr */ 21a47a12beSStefan Roese stw r0, 0(r7) 22a47a12beSStefan Roese 23a47a12beSStefan Roese lwz r0, 4(r7) /* int_return ... */ 24a47a12beSStefan Roese add r0, r0, r3 /* ... += dest_addr */ 25a47a12beSStefan Roese stw r0, 4(r7) 26a47a12beSStefan Roese 27a47a12beSStefan Roese lwz r0, 8(r7) /* transfer_to_handler ...*/ 28a47a12beSStefan Roese add r0, r0, r3 /* ... += dest_addr */ 29a47a12beSStefan Roese stw r0, 8(r7) 30a47a12beSStefan Roese 31a47a12beSStefan Roese blr 32a47a12beSStefan Roese .size trap_reloc, .-trap_reloc 33a47a12beSStefan Roese#endif 34