diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-05-09 18:01:09 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-05-09 18:01:09 -0400 |
commit | 29e744d088e3555f4efbdf390f01088dd66993b6 (patch) | |
tree | 2747692efcef505872d29e0b62cb2345b0d64978 /drivers/ide/pci/cs5535.c | |
parent | 2d5eaa6dd744a641e75503232a01f52d0768884c (diff) |
ide: add ide_tune_dma() helper
After reworking the code responsible for selecting the best DMA
transfer mode it is now possible to add generic ide_tune_dma() helper.
Convert some IDE PCI host drivers to use it (the ones left need more work).
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/cs5535.c')
-rw-r--r-- | drivers/ide/pci/cs5535.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/drivers/ide/pci/cs5535.c b/drivers/ide/pci/cs5535.c index 66a101e470d0..41925c47ef05 100644 --- a/drivers/ide/pci/cs5535.c +++ b/drivers/ide/pci/cs5535.c | |||
@@ -164,26 +164,13 @@ static void cs5535_tuneproc(ide_drive_t *drive, u8 xferspeed) | |||
164 | cs5535_set_speed(drive, xferspeed); | 164 | cs5535_set_speed(drive, xferspeed); |
165 | } | 165 | } |
166 | 166 | ||
167 | static int cs5535_config_drive_for_dma(ide_drive_t *drive) | ||
168 | { | ||
169 | u8 speed = ide_max_dma_mode(drive); | ||
170 | |||
171 | /* If no DMA speed was available then let dma_check hit pio */ | ||
172 | if (!speed) { | ||
173 | return 0; | ||
174 | } | ||
175 | |||
176 | cs5535_set_drive(drive, speed); | ||
177 | return ide_dma_enable(drive); | ||
178 | } | ||
179 | |||
180 | static int cs5535_dma_check(ide_drive_t *drive) | 167 | static int cs5535_dma_check(ide_drive_t *drive) |
181 | { | 168 | { |
182 | u8 speed; | 169 | u8 speed; |
183 | 170 | ||
184 | drive->init_speed = 0; | 171 | drive->init_speed = 0; |
185 | 172 | ||
186 | if (ide_use_dma(drive) && cs5535_config_drive_for_dma(drive)) | 173 | if (ide_tune_dma(drive)) |
187 | return 0; | 174 | return 0; |
188 | 175 | ||
189 | if (ide_use_fast_pio(drive)) { | 176 | if (ide_use_fast_pio(drive)) { |