mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: linux-kernel@vger.kernel.org
Cc: uclinux-dist-devel@blackfin.uclinux.org
Subject: [PATCH 52/62] Blackfin: rename Blackfin relocs according to the toolchain
Date: Fri,  5 Jun 2009 04:05:01 -0400	[thread overview]
Message-ID: <1244189111-19639-53-git-send-email-vapier@gentoo.org> (raw)
In-Reply-To: <1244189111-19639-1-git-send-email-vapier@gentoo.org>

The latest Blackfin toolchain has fixed its relocation scheme to match
other ports: always use R_BFIN_ prefix and capitalize everything.  This
brings the kernel in line with those fixes.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
---
 arch/blackfin/include/asm/elf.h |   84 +++++++++++++++++++-------------------
 arch/blackfin/kernel/module.c   |   22 +++++-----
 2 files changed, 53 insertions(+), 53 deletions(-)

diff --git a/arch/blackfin/include/asm/elf.h b/arch/blackfin/include/asm/elf.h
index cdbfcfc..230e160 100644
--- a/arch/blackfin/include/asm/elf.h
+++ b/arch/blackfin/include/asm/elf.h
@@ -55,50 +55,50 @@ do {											\
 #define ELF_FDPIC_CORE_EFLAGS	EF_BFIN_FDPIC
 #define ELF_EXEC_PAGESIZE	4096
 
-#define	R_unused0	0	/* relocation type 0 is not defined */
-#define R_pcrel5m2	1	/*LSETUP part a */
-#define R_unused1	2	/* relocation type 2 is not defined */
-#define R_pcrel10	3	/* type 3, if cc jump <target>  */
-#define R_pcrel12_jump	4	/* type 4, jump <target> */
-#define R_rimm16	5	/* type 0x5, rN = <target> */
-#define R_luimm16	6	/* # 0x6, preg.l=<target> Load imm 16 to lower half */
-#define R_huimm16  	7	/* # 0x7, preg.h=<target> Load imm 16 to upper half */
-#define R_pcrel12_jump_s 8	/* # 0x8 jump.s <target> */
-#define R_pcrel24_jump_x 9	/* # 0x9 jump.x <target> */
-#define R_pcrel24       10	/* # 0xa call <target> , not expandable */
-#define R_unusedb       11	/* # 0xb not generated */
-#define R_unusedc       12	/* # 0xc  not used */
-#define R_pcrel24_jump_l 13	/*0xd jump.l <target> */
-#define R_pcrel24_call_x 14	/* 0xE, call.x <target> if <target> is above 24 bit limit call through P1 */
-#define R_var_eq_symb    15	/* 0xf, linker should treat it same as 0x12 */
-#define R_byte_data      16	/* 0x10, .byte var = symbol */
-#define R_byte2_data     17	/* 0x11, .byte2 var = symbol */
-#define R_byte4_data     18	/* 0x12, .byte4 var = symbol and .var var=symbol */
-#define R_pcrel11        19	/* 0x13, lsetup part b */
-#define R_unused14      20	/* 0x14, undefined */
-#define R_unused15       21	/* not generated by VDSP 3.5 */
+#define R_BFIN_UNUSED0         0   /* relocation type 0 is not defined */
+#define R_BFIN_PCREL5M2        1   /* LSETUP part a */
+#define R_BFIN_UNUSED1         2   /* relocation type 2 is not defined */
+#define R_BFIN_PCREL10         3   /* type 3, if cc jump <target> */
+#define R_BFIN_PCREL12_JUMP    4   /* type 4, jump <target> */
+#define R_BFIN_RIMM16          5   /* type 0x5, rN = <target> */
+#define R_BFIN_LUIMM16         6   /* # 0x6, preg.l=<target> Load imm 16 to lower half */
+#define R_BFIN_HUIMM16         7   /* # 0x7, preg.h=<target> Load imm 16 to upper half */
+#define R_BFIN_PCREL12_JUMP_S  8   /* # 0x8 jump.s <target> */
+#define R_BFIN_PCREL24_JUMP_X  9   /* # 0x9 jump.x <target> */
+#define R_BFIN_PCREL24         10  /* # 0xa call <target> , not expandable */
+#define R_BFIN_UNUSEDB         11  /* # 0xb not generated */
+#define R_BFIN_UNUSEDC         12  /* # 0xc  not used */
+#define R_BFIN_PCREL24_JUMP_L  13  /* 0xd jump.l <target> */
+#define R_BFIN_PCREL24_CALL_X  14  /* 0xE, call.x <target> if <target> is above 24 bit limit call through P1 */
+#define R_BFIN_VAR_EQ_SYMB     15  /* 0xf, linker should treat it same as 0x12 */
+#define R_BFIN_BYTE_DATA       16  /* 0x10, .byte var = symbol */
+#define R_BFIN_BYTE2_DATA      17  /* 0x11, .byte2 var = symbol */
+#define R_BFIN_BYTE4_DATA      18  /* 0x12, .byte4 var = symbol and .var var=symbol */
+#define R_BFIN_PCREL11         19  /* 0x13, lsetup part b */
+#define R_BFIN_UNUSED14        20  /* 0x14, undefined */
+#define R_BFIN_UNUSED15        21  /* not generated by VDSP 3.5 */
 
 /* arithmetic relocations */
-#define R_push		 0xE0
-#define R_const		 0xE1
-#define R_add		 0xE2
-#define R_sub		 0xE3
-#define R_mult		 0xE4
-#define R_div		 0xE5
-#define R_mod		 0xE6
-#define R_lshift	 0xE7
-#define R_rshift	 0xE8
-#define R_and		 0xE9
-#define R_or		 0xEA
-#define R_xor		 0xEB
-#define R_land		 0xEC
-#define R_lor		 0xED
-#define R_len		 0xEE
-#define R_neg		 0xEF
-#define R_comp		 0xF0
-#define R_page		 0xF1
-#define R_hwpage	 0xF2
-#define R_addr		 0xF3
+#define R_BFIN_PUSH            0xE0
+#define R_BFIN_CONST           0xE1
+#define R_BFIN_ADD             0xE2
+#define R_BFIN_SUB             0xE3
+#define R_BFIN_MULT            0xE4
+#define R_BFIN_DIV             0xE5
+#define R_BFIN_MOD             0xE6
+#define R_BFIN_LSHIFT          0xE7
+#define R_BFIN_RSHIFT          0xE8
+#define R_BFIN_AND             0xE9
+#define R_BFIN_OR              0xEA
+#define R_BFIN_XOR             0xEB
+#define R_BFIN_LAND            0xEC
+#define R_BFIN_LOR             0xED
+#define R_BFIN_LEN             0xEE
+#define R_BFIN_NEG             0xEF
+#define R_BFIN_COMP            0xF0
+#define R_BFIN_PAGE            0xF1
+#define R_BFIN_HWPAGE          0xF2
+#define R_BFIN_ADDR            0xF3
 
 /* This is the location that an ET_DYN program is loaded if exec'ed.  Typical
    use of this is to invoke "./ld.so someprog" to test out a new version of
diff --git a/arch/blackfin/kernel/module.c b/arch/blackfin/kernel/module.c
index 1bd7f2d..d5aee36 100644
--- a/arch/blackfin/kernel/module.c
+++ b/arch/blackfin/kernel/module.c
@@ -201,8 +201,8 @@ apply_relocate(Elf_Shdr * sechdrs, const char *strtab,
 /*            Arithmetic relocations are handled.                        */
 /*            We do not expect LSETUP to be split and hence is not       */
 /*            handled.                                                   */
-/*            R_byte and R_byte2 are also not handled as the gas         */
-/*            does not generate it.                                      */
+/*            R_BFIN_BYTE and R_BFIN_BYTE2 are also not handled as the   */
+/*            gas does not generate it.                                  */
 /*************************************************************************/
 int
 apply_relocate_add(Elf_Shdr * sechdrs, const char *strtab,
@@ -243,8 +243,8 @@ apply_relocate_add(Elf_Shdr * sechdrs, const char *strtab,
 #endif
 		switch (ELF32_R_TYPE(rel[i].r_info)) {
 
-		case R_pcrel24:
-		case R_pcrel24_jump_l:
+		case R_BFIN_PCREL24:
+		case R_BFIN_PCREL24_JUMP_L:
 			/* Add the value, subtract its postition */
 			location16 =
 			    (uint16_t *) (sechdrs[sechdrs[relsec].sh_info].
@@ -266,18 +266,18 @@ apply_relocate_add(Elf_Shdr * sechdrs, const char *strtab,
 			    (*location16 & 0xff00) | (value >> 16 & 0x00ff);
 			*(location16 + 1) = value & 0xffff;
 			break;
-		case R_pcrel12_jump:
-		case R_pcrel12_jump_s:
+		case R_BFIN_PCREL12_JUMP:
+		case R_BFIN_PCREL12_JUMP_S:
 			value -= (uint32_t) location32;
 			value >>= 1;
 			*location16 = (value & 0xfff);
 			break;
-		case R_pcrel10:
+		case R_BFIN_PCREL10:
 			value -= (uint32_t) location32;
 			value >>= 1;
 			*location16 = (value & 0x3ff);
 			break;
-		case R_luimm16:
+		case R_BFIN_LUIMM16:
 			pr_debug("before %x after %x\n", *location16,
 				       (value & 0xffff));
 			tmp = (value & 0xffff);
@@ -286,7 +286,7 @@ apply_relocate_add(Elf_Shdr * sechdrs, const char *strtab,
 			} else
 				*location16 = tmp;
 			break;
-		case R_huimm16:
+		case R_BFIN_HUIMM16:
 			pr_debug("before %x after %x\n", *location16,
 				       ((value >> 16) & 0xffff));
 			tmp = ((value >> 16) & 0xffff);
@@ -295,10 +295,10 @@ apply_relocate_add(Elf_Shdr * sechdrs, const char *strtab,
 			} else
 				*location16 = tmp;
 			break;
-		case R_rimm16:
+		case R_BFIN_RIMM16:
 			*location16 = (value & 0xffff);
 			break;
-		case R_byte4_data:
+		case R_BFIN_BYTE4_DATA:
 			pr_debug("before %x after %x\n", *location32, value);
 			*location32 = value;
 			break;
-- 
1.6.3.1


  parent reply	other threads:[~2009-06-05  8:23 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-05  8:04 [PATCH 00/62] Blackfin arch updates for 2.6.31 Mike Frysinger
2009-06-05  8:04 ` [PATCH 01/62] Blackfin: add comment for anomaly 05000171 to init code Mike Frysinger
2009-06-05  8:04 ` [PATCH 02/62] Blackfin: add some help text to the EBIU_AMBCTL settings Mike Frysinger
2009-06-05  8:04 ` [PATCH 03/62] Blackfin: bf527-ezkit: add support for mmc-spi Mike Frysinger
2009-06-05  8:04 ` [PATCH 04/62] Blackfin: Allow bf548 ATAPI to be routed to GPIO Mike Frysinger
2009-06-05  8:04 ` [PATCH 05/62] Blackfin: allow scheduler functions to be placed into L1 Mike Frysinger
2009-06-05  8:04 ` [PATCH 06/62] Blackfin: fix link failure due to CONFIG_EXCEPTION_L1_SCRATCH Mike Frysinger
2009-06-05  8:04 ` [PATCH 07/62] Blackfin: fix data cache flushing when doing icache flushing Mike Frysinger
2009-06-05  8:04 ` [PATCH 08/62] Blackfin: fix bug found by traps test case 21 Mike Frysinger
2009-06-05  8:04 ` [PATCH 09/62] Blackfin: fix parentheses balance and convert some tab/space mixing Mike Frysinger
2009-06-05  8:04 ` [PATCH 10/62] Blackfin: fix warnings with I/O port macros Mike Frysinger
2009-06-05  8:04 ` [PATCH 11/62] Blackfin: merge Philippe's recent ipipe patch Mike Frysinger
2009-06-05  8:04 ` [PATCH 12/62] Blackfin: fix up PATA resource handling in bf537-stamp Mike Frysinger
2009-06-05  8:04 ` [PATCH 13/62] Blackfin: pull updated anomaly lists from toolchain Mike Frysinger
2009-06-05  8:04 ` [PATCH 14/62] Blackfin: do not error if GPIO IRQ is requested already as GPIO Mike Frysinger
2009-06-05  8:04 ` [PATCH 15/62] Blackfin: set bf51x/bf52x to 0.0 rev by default and bf54x to 0.2 Mike Frysinger
2009-06-05  8:04 ` [PATCH 16/62] Blackfin: simplify the do_flush macro Mike Frysinger
2009-06-05  8:04 ` [PATCH 17/62] Blackfin: update defconfigs Mike Frysinger
2009-06-05  8:04 ` [PATCH 18/62] Blackfin: simplify BF561 coreb driver greatly Mike Frysinger
2009-06-05  8:04 ` [PATCH 19/62] Blackfin: fix detection of cached L2 SRAM Mike Frysinger
2009-06-05  8:04 ` [PATCH 20/62] Blackfin: add MDMA defines to make cross-variant coding easier Mike Frysinger
2009-06-05  8:04 ` [PATCH 21/62] Blackfin: fix early L1 relocation crash Mike Frysinger
2009-06-05  8:04 ` [PATCH 22/62] Blackfin: document anomaly 05000234 workaround Mike Frysinger
2009-06-05  8:04 ` [PATCH 23/62] Blackfin: annotate anomaly 05000119 in core DMA code Mike Frysinger
2009-06-05  8:04 ` [PATCH 24/62] Blackfin: punt useless GPIO init call Mike Frysinger
2009-06-05  8:04 ` [PATCH 25/62] Blackfin: work around anomaly 05000287 Mike Frysinger
2009-06-05  8:04 ` [PATCH 26/62] Blackfin: delete unused sys_getpagesize() function Mike Frysinger
2009-06-05  8:04 ` [PATCH 27/62] Blackfin: workaround anomaly 05000227 Mike Frysinger
2009-06-05  8:04 ` [PATCH 28/62] Blackfin: do not append newlines to panic() messages Mike Frysinger
2009-06-05  8:04 ` [PATCH 29/62] Blackfin: detect anomaly 05000274 Mike Frysinger
2009-06-05  8:04 ` [PATCH 30/62] Blackfin: BF518F-EZBRD: handle required portmuxing of async pins Mike Frysinger
2009-06-05  8:04 ` [PATCH 31/62] Blackfin: annotate anomaly 05000120 Mike Frysinger
2009-06-05  8:04 ` [PATCH 32/62] Blackfin: add support for gptimer0 as a tick source Mike Frysinger
2009-06-05  8:04 ` [PATCH 33/62] Blackfin: add workaround for anomaly 05000287 Mike Frysinger
2009-06-05  8:04 ` [PATCH 34/62] Blackfin: make sure MPU CPLB for first 1k is marked as valid Mike Frysinger
2009-06-05  8:04 ` [PATCH 35/62] Blackfin: rename some Blackfin drivers Mike Frysinger
2009-06-05  8:04 ` [PATCH 36/62] Blackfin: work around anomaly 05000220 Mike Frysinger
2009-06-05  8:04 ` [PATCH 37/62] Blackfin: add note about anomaly 05000242 being worked around Mike Frysinger
2009-06-05  8:04 ` [PATCH 38/62] Blackfin: make deferred hardware errors more exact Mike Frysinger
2009-06-05  8:04 ` [PATCH 39/62] Blackfin: make sure stack is accessible before dumping it Mike Frysinger
2009-06-05  8:04 ` [PATCH 40/62] Blackfin: add workaround for anomaly 05000461 Mike Frysinger
2009-06-05  8:04 ` [PATCH 41/62] Blackfin: include system/processor info in dump messages Mike Frysinger
2009-06-05  8:04 ` [PATCH 42/62] Blackfin: update gptimers API Mike Frysinger
2009-06-05  8:04 ` [PATCH 43/62] Blackfin: drop unused reserve_pda() function Mike Frysinger
2009-06-05  8:04 ` [PATCH 44/62] Blackfin: merge sram init functions Mike Frysinger
2009-06-05  8:04 ` [PATCH 45/62] Blackfin: fix handling of initial L1 reservation Mike Frysinger
2009-06-05  8:04 ` [PATCH 46/62] Blackfin: fix command line corruption with DEBUG_DOUBLEFAULT Mike Frysinger
2009-06-05  8:04 ` [PATCH 47/62] Blackfin: override default uClinux MTD addr/size Mike Frysinger
2009-06-05  8:04 ` [PATCH 48/62] Blackfin: bf548-ezkit: add resources for ADXL345/346 Mike Frysinger
2009-06-05  8:04 ` [PATCH 49/62] Blackfin: convert SMP to only use generic time framework Mike Frysinger
2009-06-05  8:04 ` [PATCH 50/62] Blackfin: add SSYNC to set_dma_sg() for descriptor fetching Mike Frysinger
2009-06-05  8:05 ` [PATCH 51/62] Blackfin: check SIC defines rather than variant names Mike Frysinger
2009-06-05  8:05 ` Mike Frysinger [this message]
2009-06-05  8:05 ` [PATCH 53/62] Blackfin: document the lsl variants of the L1 allocator Mike Frysinger
2009-06-05  8:05 ` [PATCH 54/62] Blackfin: convert early_printk EVT init to a loop Mike Frysinger
2009-06-05  8:05 ` [PATCH 55/62] Blackfin: add missing access_ok() checks to user functions Mike Frysinger
2009-06-05  8:05 ` [PATCH 56/62] Blackfin: punt duplicated search_exception_table() prototype Mike Frysinger
2009-06-05  8:05 ` [PATCH 57/62] Blackfin: push access_ok() L1 attribute down Mike Frysinger
2009-06-05  8:05 ` [PATCH 58/62] Blackfin: kgdb: fix up error return values Mike Frysinger
2009-06-05  8:05 ` [PATCH 59/62] Blackfin: fix length checking in kgdb_ebin2mem Mike Frysinger
2009-06-05  8:05 ` [PATCH 60/62] Blackfin: export the last exception cause via debugfs Mike Frysinger
2009-06-05  8:05 ` [PATCH 61/62] Blackfin: fix unused warnings after nommu update Mike Frysinger
2009-06-05  8:05 ` [PATCH 62/62] Blackfin: fix sparseirq/kstat_irqs fallout Mike Frysinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1244189111-19639-53-git-send-email-vapier@gentoo.org \
    --to=vapier@gentoo.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=uclinux-dist-devel@blackfin.uclinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®