summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-11-15 06:42:42 -0500
committerMike Frysinger <vapier@gentoo.org>2010-11-18 04:38:19 -0500
commitcd97dd4f2c80900a295ec1b7fc6c789b94455c4e (patch)
tree0829d9adb2e9018f899ea8bd188f0bc1b27ed87e
parent635d1b3e1b885267de90d100402ba7748fdd9bc5 (diff)
downloadu-boot-imx-cd97dd4f2c80900a295ec1b7fc6c789b94455c4e.zip
u-boot-imx-cd97dd4f2c80900a295ec1b7fc6c789b94455c4e.tar.gz
u-boot-imx-cd97dd4f2c80900a295ec1b7fc6c789b94455c4e.tar.bz2
Blackfin: stick ins/outs funcs into their own .text section
This lets the linker garbage collect these functions when they aren't actually used by placing them into the standard .text.<func> section. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
-rw-r--r--arch/blackfin/lib/ins.S1
-rw-r--r--arch/blackfin/lib/outs.S4
2 files changed, 5 insertions, 0 deletions
diff --git a/arch/blackfin/lib/ins.S b/arch/blackfin/lib/ins.S
index 4519596..3ac6d84 100644
--- a/arch/blackfin/lib/ins.S
+++ b/arch/blackfin/lib/ins.S
@@ -71,6 +71,7 @@
*/
#define COMMON_INS(func, ops) \
+.section .text._ins##func; \
ENTRY(_ins##func) \
P0 = R0; /* P0 = port */ \
CLI_OUTER; /* 3 instructions before first read access */ \
diff --git a/arch/blackfin/lib/outs.S b/arch/blackfin/lib/outs.S
index 90c6033..253d4c3 100644
--- a/arch/blackfin/lib/outs.S
+++ b/arch/blackfin/lib/outs.S
@@ -12,6 +12,7 @@
.align 2
+.section .text._outsl
ENTRY(_outsl)
P0 = R0; /* P0 = port */
P1 = R1; /* P1 = address */
@@ -23,6 +24,7 @@ ENTRY(_outsl)
RTS;
ENDPROC(_outsl)
+.section .text._outsw
ENTRY(_outsw)
P0 = R0; /* P0 = port */
P1 = R1; /* P1 = address */
@@ -34,6 +36,7 @@ ENTRY(_outsw)
RTS;
ENDPROC(_outsw)
+.section .text._outsb
ENTRY(_outsb)
P0 = R0; /* P0 = port */
P1 = R1; /* P1 = address */
@@ -45,6 +48,7 @@ ENTRY(_outsb)
RTS;
ENDPROC(_outsb)
+.section .text._outsw_8
ENTRY(_outsw_8)
P0 = R0; /* P0 = port */
P1 = R1; /* P1 = address */