From 3b6deff377469ac2ec151fde2ca61593690c9d16 Mon Sep 17 00:00:00 2001 From: David McPaul Date: Sun, 19 Apr 2009 12:46:05 +0000 Subject: [PATCH] same change for ata as ide, return a valid dma mode value for idestatus git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30261 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/bus_managers/ata/dma.c | 2 +- src/add-ons/kernel/bus_managers/ata/ide_internal.h | 1 + src/add-ons/kernel/bus_managers/ata/ide_sim.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/add-ons/kernel/bus_managers/ata/dma.c b/src/add-ons/kernel/bus_managers/ata/dma.c index 3ca6ef4d36..b249655a29 100644 --- a/src/add-ons/kernel/bus_managers/ata/dma.c +++ b/src/add-ons/kernel/bus_managers/ata/dma.c @@ -18,7 +18,7 @@ } -static int +int get_device_dma_mode(ide_device_info *device) { ide_device_infoblock *infoblock = &device->infoblock; diff --git a/src/add-ons/kernel/bus_managers/ata/ide_internal.h b/src/add-ons/kernel/bus_managers/ata/ide_internal.h index 6cf6b429ca..0601da510e 100644 --- a/src/add-ons/kernel/bus_managers/ata/ide_internal.h +++ b/src/add-ons/kernel/bus_managers/ata/ide_internal.h @@ -244,6 +244,7 @@ bool finish_dma(ide_device_info *device); void abort_dma(ide_device_info *device, ata_request *request); bool configure_dma(ide_device_info *device); +int get_device_dma_mode(ide_device_info *device); // emulation.c diff --git a/src/add-ons/kernel/bus_managers/ata/ide_sim.c b/src/add-ons/kernel/bus_managers/ata/ide_sim.c index a2b88c1e1c..afbc5943e3 100644 --- a/src/add-ons/kernel/bus_managers/ata/ide_sim.c +++ b/src/add-ons/kernel/bus_managers/ata/ide_sim.c @@ -449,7 +449,7 @@ ide_sim_ioctl(ide_bus_info *bus, uint8 targetID, uint32 op, void *buffer, size_t status.dma_status = 2; status.pio_mode = 0; - status.dma_mode = 0; + status.dma_mode = get_device_dma_mode(device); memcpy(buffer, &status, min(sizeof(status), length)); return B_OK;