OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [uclinux/] [uClinux-2.0.x/] [arch/] [armnommu/] [lib/] [floppydma.S] - Blame information for rev 1775

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 199 simons
/*
2
 * linux/arch/arm/lib/floppydma.S
3
 *
4
 * Copyright (C) 1995, 1996 Russell King
5
 */
6
 
7
#include 
8
                .text
9
 
10
                .global _floppy_fiqin_start
11
                .global _floppy_fiqin_end
12
_floppy_fiqin_start:
13
                subs    r9, r9, #1
14
                ldrgtb  r12, [r11, #-4]
15
                ldrleb  r12, [r11], #0
16
                strb    r12, [r10], #1
17
                subs    pc, lr, #4
18
_floppy_fiqin_end:
19
 
20
                .global _floppy_fiqout_start
21
                .global _floppy_fiqout_end
22
_floppy_fiqout_start:
23
                subs    r9, r9, #1
24
                ldrgeb  r12, [r10], #1
25
                movlt   r12, #0
26
                strleb  r12, [r11], #0
27
                subles  pc, lr, #4
28
                strb    r12, [r11, #-4]
29
                subs    pc, lr, #4
30
_floppy_fiqout_end:
31
 
32
@ Params:
33
@ r0 = length
34
@ r1 = address
35
@ r2 = floppy port
36
@ Puts these into R9_fiq, R10_fiq, R11_fiq
37
                .global _floppy_fiqsetup
38
_floppy_fiqsetup:
39
                mov     ip, sp
40
                stmfd   sp!, {fp, ip, lr, pc}
41
                sub     fp, ip, #4
42
                MODE(r3,ip,I_BIT|F_BIT|DEFAULT_FIQ)     @ disable FIQs, IRQs, FIQ mode
43
                mov     r0, r0
44
                mov     r9, r0
45
                mov     r10, r1
46
                mov     r11, r2
47
                RESTOREMODE(r3)                         @ back to normal
48
                mov     r0, r0
49
                LOADREGS(ea,fp,{fp, sp, pc})
50
 
51
                .global _floppy_fiqresidual
52
_floppy_fiqresidual:
53
                mov     ip, sp
54
                stmfd   sp!, {fp, ip, lr, pc}
55
                sub     fp, ip, #4
56
                MODE(r3,ip,I_BIT|F_BIT|DEFAULT_FIQ)     @ disable FIQs, IRQs, FIQ mode
57
                mov     r0, r0
58
                mov     r0, r9
59
                RESTOREMODE(r3)
60
                mov     r0, r0
61
                LOADREGS(ea,fp,{fp, sp, pc})

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.