summaryrefslogtreecommitdiff
path: root/arch/openrisc/kernel/module.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/openrisc/kernel/module.c')
-rw-r--r--arch/openrisc/kernel/module.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/openrisc/kernel/module.c b/arch/openrisc/kernel/module.c
index c9ff4c4a0b29..4ac4fbaa827c 100644
--- a/arch/openrisc/kernel/module.c
+++ b/arch/openrisc/kernel/module.c
@@ -55,6 +55,10 @@ int apply_relocate_add(Elf32_Shdr *sechdrs,
value |= *location & 0xfc000000;
*location = value;
break;
+ case R_OR1K_32_PCREL:
+ value -= (uint32_t)location;
+ *location = value;
+ break;
case R_OR1K_AHI16:
/* Adjust the operand to match with a signed LO16. */
value += 0x8000;