Re: [PATCH] 2.5.19 IDE 78

Martin Dalecki
2002-06-02T20:32:54Z

Paul Mackerras wrote:
> Martin,
>
> I think you have a typo here:
>
>
>>diff -urN linux-2.5.19/drivers/ide/ide-pmac.c linux/drivers/ide/ide-pmac.c
>>--- linux-2.5.19/drivers/ide/ide-pmac.c 2002-06-01 18:53:06.000000000 +0200
>>+++ linux/drivers/ide/ide-pmac.c 2002-06-01 18:17:36.000000000 +0200
>>@@ -434,7 +434,7 @@
>> goto out;
>> }
>> udelay(10);
>>- OUT_BYTE(drive->ctl | 2, IDE_CONTROL_REG);
>>+ ata_irq_enale(drive, 0);

For sure not. The nIEN bit is *negated* on the part of the
device - please look at the ata_irq_enable() functions definition.
I have explained it there.

> ata_irq_enable surely?

The toggle is the second parameter becouse I didn't wan't to
provide two functions. - 0 measn disable it 1 means enable it.

>
> Also, we need the patch below now that ata_channel.active is a
> pointer.

That actually is obviously correct - thank's I will include it.

>
> Paul.
>
> diff -urN linux-2.5/drivers/ide/ide-pmac.c pmac-2.5/drivers/ide/ide-pmac.c
> --- linux-2.5/drivers/ide/ide-pmac.c Sun Jun 2 14:45:47 2002
> +++ pmac-2.5/drivers/ide/ide-pmac.c Sun Jun 2 15:41:31 2002
> @@ -1584,9 +1584,9 @@
> */
> if (used_dma && !ide_spin_wait_hwgroup(drive)) {
> /* Lock HW group */
> - set_bit(IDE_BUSY, &drive->channel->active);
> + set_bit(IDE_BUSY, drive->channel->active);
> pmac_ide_check_dma(drive);
> - clear_bit(IDE_BUSY, &drive->channel->active);
> + clear_bit(IDE_BUSY, drive->channel->active);
> spin_unlock_irq(drive->channel->lock);
> }
> #endif
> @@ -1633,7 +1633,7 @@
> return;
> else {
> /* Lock HW group */
> - set_bit(IDE_BUSY, &drive->channel->active);
> + set_bit(IDE_BUSY, drive->channel->active);
> /* Stop the device */
> idepmac_sleep_device(drive, idx, base);
> spin_unlock_irq(drive->channel->lock);
> @@ -1663,7 +1663,7 @@
>
> /* We resume processing on the lock group */
> spin_lock_irq(drive->channel->lock);
> - clear_bit(IDE_BUSY, &drive->channel->active);
> + clear_bit(IDE_BUSY, drive->channel->active);
> if (!list_empty(&drive->queue.queue_head))
> do_ide_request(&drive->queue);
> spin_unlock_irq(drive->channel->lock);
>
>

--
- phone: +49 214 8656 283
- job: eVision-Ventures AG, LEV .de (MY OPINIONS ARE MY OWN!)
- langs: de_DE.ISO8859-1, en_US, pl_PL.ISO8859-2, last ressort: ru_RU.KOI8-R