diff options
Diffstat (limited to 'drivers/scsi/atari_scsi.c')
-rw-r--r-- | drivers/scsi/atari_scsi.c | 27 |
1 files changed, 3 insertions, 24 deletions
diff --git a/drivers/scsi/atari_scsi.c b/drivers/scsi/atari_scsi.c index f5732d8f67fe..21fe07f9df87 100644 --- a/drivers/scsi/atari_scsi.c +++ b/drivers/scsi/atari_scsi.c | |||
@@ -249,10 +249,6 @@ static int setup_hostid = -1; | |||
249 | module_param(setup_hostid, int, 0); | 249 | module_param(setup_hostid, int, 0); |
250 | 250 | ||
251 | 251 | ||
252 | #if defined(CONFIG_TT_DMA_EMUL) | ||
253 | #include "atari_dma_emul.c" | ||
254 | #endif | ||
255 | |||
256 | #if defined(REAL_DMA) | 252 | #if defined(REAL_DMA) |
257 | 253 | ||
258 | static int scsi_dma_is_ignored_buserr(unsigned char dma_stat) | 254 | static int scsi_dma_is_ignored_buserr(unsigned char dma_stat) |
@@ -695,21 +691,8 @@ int atari_scsi_detect(struct scsi_host_template *host) | |||
695 | #ifdef REAL_DMA | 691 | #ifdef REAL_DMA |
696 | tt_scsi_dma.dma_ctrl = 0; | 692 | tt_scsi_dma.dma_ctrl = 0; |
697 | atari_dma_residual = 0; | 693 | atari_dma_residual = 0; |
698 | #ifdef CONFIG_TT_DMA_EMUL | 694 | |
699 | if (MACH_IS_HADES) { | 695 | if (MACH_IS_MEDUSA) { |
700 | if (request_irq(IRQ_AUTO_2, hades_dma_emulator, | ||
701 | IRQ_TYPE_PRIO, "Hades DMA emulator", | ||
702 | hades_dma_emulator)) { | ||
703 | printk(KERN_ERR "atari_scsi_detect: cannot allocate irq %d, aborting (MACH_IS_HADES)",IRQ_AUTO_2); | ||
704 | free_irq(IRQ_TT_MFP_SCSI, instance); | ||
705 | scsi_unregister(atari_scsi_host); | ||
706 | atari_stram_free(atari_dma_buffer); | ||
707 | atari_dma_buffer = 0; | ||
708 | return 0; | ||
709 | } | ||
710 | } | ||
711 | #endif | ||
712 | if (MACH_IS_MEDUSA || MACH_IS_HADES) { | ||
713 | /* While the read overruns (described by Drew Eckhardt in | 696 | /* While the read overruns (described by Drew Eckhardt in |
714 | * NCR5380.c) never happened on TTs, they do in fact on the Medusa | 697 | * NCR5380.c) never happened on TTs, they do in fact on the Medusa |
715 | * (This was the cause why SCSI didn't work right for so long | 698 | * (This was the cause why SCSI didn't work right for so long |
@@ -1007,11 +990,7 @@ static unsigned long atari_dma_xfer_len(unsigned long wanted_len, | |||
1007 | Scsi_Cmnd *cmd, int write_flag) | 990 | Scsi_Cmnd *cmd, int write_flag) |
1008 | { | 991 | { |
1009 | unsigned long possible_len, limit; | 992 | unsigned long possible_len, limit; |
1010 | #ifndef CONFIG_TT_DMA_EMUL | 993 | |
1011 | if (MACH_IS_HADES) | ||
1012 | /* Hades has no SCSI DMA at all :-( Always force use of PIO */ | ||
1013 | return 0; | ||
1014 | #endif | ||
1015 | if (IS_A_TT()) | 994 | if (IS_A_TT()) |
1016 | /* TT SCSI DMA can transfer arbitrary #bytes */ | 995 | /* TT SCSI DMA can transfer arbitrary #bytes */ |
1017 | return wanted_len; | 996 | return wanted_len; |