trm290: do hook dma_host_{on,off} methods
PATCH 1/1 trm290: do hook dma_host_{on,off} methods
Those two methods were reading/writing TRM-290 config. register; luckily (?) the writes only tried to change undefined bits. While fixing this, also
- get rid of the 'ide_' prefixes in several functions for which the prefix has been ectomized before;
- align the code initializing methods in init_hwif_trm290()...
Signed-off-by Sergei Shtylyov <[email protected]>
drivers/ide/pci/trm290.c | 26 ++++++++++++++++++-------- 1 files changed, 18 insertions(+), 8 deletions(-)
drivers/ide/pci/trm290.c +18 -8
@@ -177,7 +177,7 @@ static void trm290_selectproc (ide_drivetrm290_prepare_drive (drive, drive->using_dma); } -static void trm290_ide_dma_exec_cmd (ide_drive_t *drive,u8 command) +static void trm290_dma_exec_cmd (ide_drive_t *drive,u8 command) {BUG_ON (HWGROUP (drive)->handler !=NULL );/* paranoia check */ ide_set_handler (drive, &ide_dma_intr,WAIT_CMD ,NULL );
@@ -185,7 +185,7 @@ static void trm290_ide_dma_exec_cmd(ide_outb (command,IDE_COMMAND_REG ); } -static int trm290_ide_dma_setup (ide_drive_t *drive) +static int trm290_dma_setup (ide_drive_t *drive) {ide_hwif_t *hwif = drive->hwif;struct request *rq = hwif->hwgroup->rq;
@@ -215,7 +215,7 @@ static int trm290_ide_dma_setup(ide_drivreturn 0 ; } -static void trm290_ide_dma_start (ide_drive_t *drive) +static void trm290_dma_start (ide_drive_t *drive) { }
@@ -240,6 +240,14 @@ static int trm290_ide_dma_test_irq (ide_return (status ==0x00ff ); } +void trm290_dma_host_on (ide_drive_t *drive) +{ +} + +void trm290_dma_host_off (ide_drive_t *drive) +{ +} +static void __devinit init_hwif_trm290 (ide_hwif_t *hwif) {unsigned int cfgbase =0 ;
@@ -280,11 +288,13 @@ static void __devinit init_hwif_trm290(iide_setup_dma (hwif, (hwif->config_data +4 ) ^ (hwif->channel ?0x0080 :0x0000 ),3 ); - hwif->dma_setup = &trm290_ide_dma_setup; - hwif->dma_exec_cmd = &trm290_ide_dma_exec_cmd; - hwif->dma_start = &trm290_ide_dma_start; - hwif->ide_dma_end = &trm290_ide_dma_end; - hwif->ide_dma_test_irq = &trm290_ide_dma_test_irq; + hwif->dma_host_off = &trm290_dma_host_off; + hwif->dma_host_on = &trm290_dma_host_on; + hwif->dma_setup = &trm290_dma_setup; + hwif->dma_exec_cmd = &trm290_dma_exec_cmd; + hwif->dma_start = &trm290_dma_start; + hwif->ide_dma_end = &trm290_ide_dma_end; + hwif->ide_dma_test_irq = &trm290_ide_dma_test_irq; hwif->selectproc = &trm290_selectproc;#if 1
Quoted 2 lines · Hello, I wrote:
Those two methods were reading/writing TRM-290 config. register; luckily (?) the writes only tried to change undefined bits.
Actually, the writes were falling at the PRD address register. Well,
nobody noticed anyway... :-)
MBR, Sergei