1
2
3
4
5
6
7
8
9
10 #ifndef __ASM_MIPS_FLOPPY_H
11 #define __ASM_MIPS_FLOPPY_H
12
13 #include <asm/bootinfo.h>
14 #include <asm/jazz.h>
15 #include <asm/jazzdma.h>
16 #include <asm/mipsconfig.h>
17 #include <asm/vector.h>
18
19 #define fd_inb(port) feature->fd_inb(port)
20 #define fd_outb(port,value) feature->fd_outb(port,value)
21
22 #define fd_enable_dma() feature->fd_enable_dma()
23 #define fd_disable_dma() feature->fd_disable_dma()
24 #define fd_request_dma() feature->fd_request_dma()
25 #define fd_free_dma() feature->fd_free_dma()
26 #define fd_clear_dma_ff() feature->fd_clear_dma_ff()
27 #define fd_set_dma_mode(mode) feature->fd_set_dma_mode(mode)
28 #define fd_set_dma_addr(addr) feature->fd_set_dma_addr(addr)
29 #define fd_set_dma_count(count) feature->fd_set_dma_count(count)
30 #define fd_get_dma_residue() feature->fd_get_dma_residue()
31 #define fd_enable_irq() feature->fd_enable_irq()
32 #define fd_disable_irq() feature->fd_disable_irq()
33 #define fd_cacheflush(addr, size) feature->fd_cacheflush((void *)addr, size)
34 #define fd_request_irq() request_irq(FLOPPY_IRQ, floppy_interrupt, \
35 SA_INTERRUPT|SA_SAMPLE_RANDOM, \
36 "floppy")
37 #define fd_free_irq() free_irq(FLOPPY_IRQ);
38
39 #define virtual_dma_init() \
40 if (boot_info.machtype == MACH_ACER_PICA_61 || \
41 boot_info.machtype == MACH_MIPS_MAGNUM_4000 || \
42 boot_info.machtype == MACH_OLIVETTI_M700) \
43 vdma_alloc(PHYSADDR(floppy_track_buffer), \
44 512*2*MAX_BUFFER_SECTORS);
45
46
47
48
49
50
51
52 #define FLOPPY0_TYPE 4
53 #define FLOPPY1_TYPE 0
54
55 #define FDC1 ((boot_info.machtype == MACH_ACER_PICA_61 || \
56 boot_info.machtype == MACH_MIPS_MAGNUM_4000 || \
57 boot_info.machtype == MACH_OLIVETTI_M700) ? \
58 0xe0003000 : 0x3f0)
59 static int FDC2=-1;
60
61 #define N_FDC 1
62 #define N_DRIVE 8
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 #define CROSS_64KB(a,s) ((unsigned long)(a)/K_64 != ((unsigned long)(a) + (s) - 1) / K_64)
78
79 #endif