c372813105
This patch changes the R_MIPS_NONE define from 0 to a magic value. This makes it possible to better detect any forbidden pre-relocation usage of BSS variables, as they are often zero'ed and then relocation is stopped too early. Additionally the error message is improved to also print the faulting address. This helps finding the root-cause for this breakage by comparing this address with the values in System.map. This patch helps a lot when working on pre-relocation code, like the Octeon DDR init code, where such variables have hit me multiple times now. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com> Cc: Aaron Williams <awilliams@marvell.com> Cc: Chandrakala Chavva <cchavva@marvell.com>
24 lines
493 B
C
24 lines
493 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* MIPS Relocations
|
|
*
|
|
* Copyright (c) 2017 Imagination Technologies Ltd.
|
|
*/
|
|
|
|
#ifndef __ASM_MIPS_RELOCS_H__
|
|
#define __ASM_MIPS_RELOCS_H__
|
|
|
|
#define R_MIPS_NONE 0xbeef7531
|
|
#define R_MIPS_32 2
|
|
#define R_MIPS_26 4
|
|
#define R_MIPS_HI16 5
|
|
#define R_MIPS_LO16 6
|
|
#define R_MIPS_PC16 10
|
|
#define R_MIPS_64 18
|
|
#define R_MIPS_HIGHER 28
|
|
#define R_MIPS_HIGHEST 29
|
|
#define R_MIPS_PC21_S2 60
|
|
#define R_MIPS_PC26_S2 61
|
|
|
|
#endif /* __ASM_MIPS_RELOCS_H__ */
|