aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/lib/ins.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin/lib/ins.S')
-rw-r--r--arch/blackfin/lib/ins.S19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/blackfin/lib/ins.S b/arch/blackfin/lib/ins.S
index a17cc77ac36f..df7b8833a0c5 100644
--- a/arch/blackfin/lib/ins.S
+++ b/arch/blackfin/lib/ins.S
@@ -77,3 +77,22 @@ ENTRY(_insb)
77 sti R3; 77 sti R3;
78 RTS; 78 RTS;
79ENDPROC(_insb) 79ENDPROC(_insb)
80
81
82
83ENTRY(_insl_16)
84 P0 = R0; /* P0 = port */
85 cli R3;
86 P1 = R1; /* P1 = address */
87 P2 = R2; /* P2 = count */
88 SSYNC;
89 LSETUP( .Llong16_loop_s, .Llong16_loop_e) LC0 = P2;
90.Llong16_loop_s: R0 = [P0];
91 W[P1++] = R0;
92 R0 = R0 >> 16;
93 W[P1++] = R0;
94 NOP;
95.Llong16_loop_e: NOP;
96 sti R3;
97 RTS;
98ENDPROC(_insl_16)