ide: cleanup ide-dma.c
- s/HWIF(drive)/drive->hwif/ - s/HWGROUP(drive)/[drive->]hwif->hwgroup/ - fixup error messages in ide_dma_intr() & dma_timer_expiry() - fix checkpatch.pl errors/warnings Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
@@ -33,11 +33,9 @@
|
|||||||
#include <linux/ide.h>
|
#include <linux/ide.h>
|
||||||
#include <linux/scatterlist.h>
|
#include <linux/scatterlist.h>
|
||||||
#include <linux/dma-mapping.h>
|
#include <linux/dma-mapping.h>
|
||||||
|
#include <linux/io.h>
|
||||||
#include <asm/io.h>
|
|
||||||
|
|
||||||
static const struct drive_list_entry drive_whitelist[] = {
|
static const struct drive_list_entry drive_whitelist[] = {
|
||||||
|
|
||||||
{ "Micropolis 2112A" , NULL },
|
{ "Micropolis 2112A" , NULL },
|
||||||
{ "CONNER CTMA 4000" , NULL },
|
{ "CONNER CTMA 4000" , NULL },
|
||||||
{ "CONNER CTT8000-A" , NULL },
|
{ "CONNER CTT8000-A" , NULL },
|
||||||
@@ -46,7 +44,6 @@ static const struct drive_list_entry drive_whitelist [] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
static const struct drive_list_entry drive_blacklist[] = {
|
static const struct drive_list_entry drive_blacklist[] = {
|
||||||
|
|
||||||
{ "WDC AC11000H" , NULL },
|
{ "WDC AC11000H" , NULL },
|
||||||
{ "WDC AC22100H" , NULL },
|
{ "WDC AC22100H" , NULL },
|
||||||
{ "WDC AC32500H" , NULL },
|
{ "WDC AC32500H" , NULL },
|
||||||
@@ -100,17 +97,16 @@ ide_startstop_t ide_dma_intr (ide_drive_t *drive)
|
|||||||
|
|
||||||
if (OK_STAT(stat, DRIVE_READY, drive->bad_wstat | ATA_DRQ)) {
|
if (OK_STAT(stat, DRIVE_READY, drive->bad_wstat | ATA_DRQ)) {
|
||||||
if (!dma_stat) {
|
if (!dma_stat) {
|
||||||
struct request *rq = HWGROUP(drive)->rq;
|
struct request *rq = hwif->hwgroup->rq;
|
||||||
|
|
||||||
task_end_request(drive, rq, stat);
|
task_end_request(drive, rq, stat);
|
||||||
return ide_stopped;
|
return ide_stopped;
|
||||||
}
|
}
|
||||||
printk(KERN_ERR "%s: dma_intr: bad DMA status (dma_stat=%x)\n",
|
printk(KERN_ERR "%s: %s: bad DMA status (0x%02x)\n",
|
||||||
drive->name, dma_stat);
|
drive->name, __func__, dma_stat);
|
||||||
}
|
}
|
||||||
return ide_error(drive, "dma_intr", stat);
|
return ide_error(drive, "dma_intr", stat);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_dma_intr);
|
EXPORT_SYMBOL_GPL(ide_dma_intr);
|
||||||
|
|
||||||
static int ide_dma_good_drive(ide_drive_t *drive)
|
static int ide_dma_good_drive(ide_drive_t *drive)
|
||||||
@@ -131,7 +127,7 @@ static int ide_dma_good_drive(ide_drive_t *drive)
|
|||||||
|
|
||||||
int ide_build_sglist(ide_drive_t *drive, struct request *rq)
|
int ide_build_sglist(ide_drive_t *drive, struct request *rq)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
struct scatterlist *sg = hwif->sg_table;
|
struct scatterlist *sg = hwif->sg_table;
|
||||||
|
|
||||||
ide_map_sg(drive, rq);
|
ide_map_sg(drive, rq);
|
||||||
@@ -144,7 +140,6 @@ int ide_build_sglist(ide_drive_t *drive, struct request *rq)
|
|||||||
return dma_map_sg(hwif->dev, sg, hwif->sg_nents,
|
return dma_map_sg(hwif->dev, sg, hwif->sg_nents,
|
||||||
hwif->sg_dma_direction);
|
hwif->sg_dma_direction);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_build_sglist);
|
EXPORT_SYMBOL_GPL(ide_build_sglist);
|
||||||
|
|
||||||
#ifdef CONFIG_BLK_DEV_IDEDMA_SFF
|
#ifdef CONFIG_BLK_DEV_IDEDMA_SFF
|
||||||
@@ -167,7 +162,7 @@ EXPORT_SYMBOL_GPL(ide_build_sglist);
|
|||||||
|
|
||||||
int ide_build_dmatable(ide_drive_t *drive, struct request *rq)
|
int ide_build_dmatable(ide_drive_t *drive, struct request *rq)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
__le32 *table = (__le32 *)hwif->dmatable_cpu;
|
__le32 *table = (__le32 *)hwif->dmatable_cpu;
|
||||||
unsigned int is_trm290 = (hwif->chipset == ide_trm290) ? 1 : 0;
|
unsigned int is_trm290 = (hwif->chipset == ide_trm290) ? 1 : 0;
|
||||||
unsigned int count = 0;
|
unsigned int count = 0;
|
||||||
@@ -249,7 +244,6 @@ void ide_destroy_dmatable (ide_drive_t *drive)
|
|||||||
dma_unmap_sg(hwif->dev, hwif->sg_table, hwif->sg_nents,
|
dma_unmap_sg(hwif->dev, hwif->sg_table, hwif->sg_nents,
|
||||||
hwif->sg_dma_direction);
|
hwif->sg_dma_direction);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_destroy_dmatable);
|
EXPORT_SYMBOL_GPL(ide_destroy_dmatable);
|
||||||
|
|
||||||
#ifdef CONFIG_BLK_DEV_IDEDMA_SFF
|
#ifdef CONFIG_BLK_DEV_IDEDMA_SFF
|
||||||
@@ -314,16 +308,16 @@ static int config_drive_for_dma (ide_drive_t *drive)
|
|||||||
|
|
||||||
static int dma_timer_expiry(ide_drive_t *drive)
|
static int dma_timer_expiry(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
||||||
|
|
||||||
printk(KERN_WARNING "%s: dma_timer_expiry: dma status == 0x%02x\n",
|
printk(KERN_WARNING "%s: %s: DMA status (0x%02x)\n",
|
||||||
drive->name, dma_stat);
|
drive->name, __func__, dma_stat);
|
||||||
|
|
||||||
if ((dma_stat & 0x18) == 0x18) /* BUSY Stupid Early Timer !! */
|
if ((dma_stat & 0x18) == 0x18) /* BUSY Stupid Early Timer !! */
|
||||||
return WAIT_CMD;
|
return WAIT_CMD;
|
||||||
|
|
||||||
HWGROUP(drive)->expiry = NULL; /* one free ride for now */
|
hwif->hwgroup->expiry = NULL; /* one free ride for now */
|
||||||
|
|
||||||
/* 1 dmaing, 2 error, 4 intr */
|
/* 1 dmaing, 2 error, 4 intr */
|
||||||
if (dma_stat & 2) /* ERROR */
|
if (dma_stat & 2) /* ERROR */
|
||||||
@@ -348,7 +342,7 @@ static int dma_timer_expiry (ide_drive_t *drive)
|
|||||||
|
|
||||||
void ide_dma_host_set(ide_drive_t *drive, int on)
|
void ide_dma_host_set(ide_drive_t *drive, int on)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
u8 unit = drive->dn & 1;
|
u8 unit = drive->dn & 1;
|
||||||
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
||||||
|
|
||||||
@@ -363,7 +357,6 @@ void ide_dma_host_set(ide_drive_t *drive, int on)
|
|||||||
else
|
else
|
||||||
outb(dma_stat, hwif->dma_base + ATA_DMA_STATUS);
|
outb(dma_stat, hwif->dma_base + ATA_DMA_STATUS);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_dma_host_set);
|
EXPORT_SYMBOL_GPL(ide_dma_host_set);
|
||||||
#endif /* CONFIG_BLK_DEV_IDEDMA_SFF */
|
#endif /* CONFIG_BLK_DEV_IDEDMA_SFF */
|
||||||
|
|
||||||
@@ -381,7 +374,6 @@ void ide_dma_off_quietly(ide_drive_t *drive)
|
|||||||
|
|
||||||
drive->hwif->dma_ops->dma_host_set(drive, 0);
|
drive->hwif->dma_ops->dma_host_set(drive, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL(ide_dma_off_quietly);
|
EXPORT_SYMBOL(ide_dma_off_quietly);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -397,7 +389,6 @@ void ide_dma_off(ide_drive_t *drive)
|
|||||||
printk(KERN_INFO "%s: DMA disabled\n", drive->name);
|
printk(KERN_INFO "%s: DMA disabled\n", drive->name);
|
||||||
ide_dma_off_quietly(drive);
|
ide_dma_off_quietly(drive);
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL(ide_dma_off);
|
EXPORT_SYMBOL(ide_dma_off);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -432,7 +423,7 @@ void ide_dma_on(ide_drive_t *drive)
|
|||||||
int ide_dma_setup(ide_drive_t *drive)
|
int ide_dma_setup(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = drive->hwif;
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
struct request *rq = HWGROUP(drive)->rq;
|
struct request *rq = hwif->hwgroup->rq;
|
||||||
unsigned int reading;
|
unsigned int reading;
|
||||||
u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0;
|
u8 mmio = (hwif->host_flags & IDE_HFLAG_MMIO) ? 1 : 0;
|
||||||
u8 dma_stat;
|
u8 dma_stat;
|
||||||
@@ -474,13 +465,13 @@ int ide_dma_setup(ide_drive_t *drive)
|
|||||||
drive->waiting_for_dma = 1;
|
drive->waiting_for_dma = 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_dma_setup);
|
EXPORT_SYMBOL_GPL(ide_dma_setup);
|
||||||
|
|
||||||
void ide_dma_exec_cmd(ide_drive_t *drive, u8 command)
|
void ide_dma_exec_cmd(ide_drive_t *drive, u8 command)
|
||||||
{
|
{
|
||||||
/* issue cmd to drive */
|
/* issue cmd to drive */
|
||||||
ide_execute_command(drive, command, &ide_dma_intr, 2*WAIT_CMD, dma_timer_expiry);
|
ide_execute_command(drive, command, &ide_dma_intr, 2 * WAIT_CMD,
|
||||||
|
dma_timer_expiry);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(ide_dma_exec_cmd);
|
EXPORT_SYMBOL_GPL(ide_dma_exec_cmd);
|
||||||
|
|
||||||
@@ -506,7 +497,6 @@ void ide_dma_start(ide_drive_t *drive)
|
|||||||
|
|
||||||
wmb();
|
wmb();
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_dma_start);
|
EXPORT_SYMBOL_GPL(ide_dma_start);
|
||||||
|
|
||||||
/* returns 1 on error, 0 otherwise */
|
/* returns 1 on error, 0 otherwise */
|
||||||
@@ -550,7 +540,7 @@ EXPORT_SYMBOL_GPL(ide_dma_end);
|
|||||||
/* returns 1 if dma irq issued, 0 otherwise */
|
/* returns 1 if dma irq issued, 0 otherwise */
|
||||||
int ide_dma_test_irq(ide_drive_t *drive)
|
int ide_dma_test_irq(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
u8 dma_stat = hwif->tp_ops->read_sff_dma_status(hwif);
|
||||||
|
|
||||||
/* return 1 if INTR asserted */
|
/* return 1 if INTR asserted */
|
||||||
@@ -576,7 +566,6 @@ int __ide_dma_bad_drive (ide_drive_t *drive)
|
|||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL(__ide_dma_bad_drive);
|
EXPORT_SYMBOL(__ide_dma_bad_drive);
|
||||||
|
|
||||||
static const u8 xfer_mode_bases[] = {
|
static const u8 xfer_mode_bases[] = {
|
||||||
@@ -693,7 +682,6 @@ u8 ide_find_dma_mode(ide_drive_t *drive, u8 req_mode)
|
|||||||
|
|
||||||
return mode;
|
return mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORT_SYMBOL_GPL(ide_find_dma_mode);
|
EXPORT_SYMBOL_GPL(ide_find_dma_mode);
|
||||||
|
|
||||||
static int ide_tune_dma(ide_drive_t *drive)
|
static int ide_tune_dma(ide_drive_t *drive)
|
||||||
@@ -810,7 +798,7 @@ EXPORT_SYMBOL_GPL(ide_dma_lost_irq);
|
|||||||
|
|
||||||
void ide_dma_timeout(ide_drive_t *drive)
|
void ide_dma_timeout(ide_drive_t *drive)
|
||||||
{
|
{
|
||||||
ide_hwif_t *hwif = HWIF(drive);
|
ide_hwif_t *hwif = drive->hwif;
|
||||||
|
|
||||||
printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name);
|
printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user