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