ide-pmac: add ->init_dev method (take 2)
PATCH 3/4 ide-pmac: add ->init_dev method (take 2)
v2:
* Build fix from Stephen Rothwell.
There should be no functional changes caused by this patch.
Cc Benjamin Herrenschmidt <[email protected]>
Cc Stephen Rothwell <[email protected]>
Signed-off-by Bartlomiej Zolnierkiewicz <[email protected]>
---
replacement patch
drivers/ide/ppc/pmac.c | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-)
drivers/ide/ppc/pmac.c +18 -9
@@ -941,7 +941,23 @@ static u8 pmac_ide_cable_detect(ide_hwifreturn ATA_CBL_PATA40 ; } +static void pmac_ide_init_dev (ide_drive_t *drive) +{ +ide_hwif_t *hwif = drive->hwif; +pmac_ide_hwif_t *pmif = + (pmac_ide_hwif_t *)dev_get_drvdata (hwif->gendev.parent); + +if (pmif->mediabay) { +#ifdef CONFIG_PMAC_MEDIABAY +if (check_media_bay (np->parent,MB_CD ) == -ENODEV ) +return ; +#endif + drive->noprobe =1 ; + } +} +static const struct ide_port_ops pmac_ide_ata6_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_kauai_selectproc,
@@ -949,6 +965,7 @@ static const struct ide_port_ops pmac_id };static const struct ide_port_ops pmac_ide_ata4_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_selectproc,
@@ -956,6 +973,7 @@ static const struct ide_port_ops pmac_id };static const struct ide_port_ops pmac_ide_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_selectproc,
@@ -1065,15 +1083,6 @@ pmac_ide_setup_device(pmac_ide_hwif_t *p hwif->index, model_name[pmif->kind], pmif->aapl_bus_id, pmif->mediabay ? " (mediabay)" : "", hwif->irq); -if (pmif->mediabay) { -#ifdef CONFIG_PMAC_MEDIABAY -if (check_media_bay (np->parent,MB_CD ) == -ENODEV ) -break ; -#endif - hwif->drives[0 ].noprobe =1 ; - hwif->drives[1 ].noprobe =1 ; - } - idx[0 ] = hwif->index;ide_device_add (idx, &d);
Hi Bart,
drivers/ide/ppc/pmac.c static u8 pmac_ide_cable_detect(ide_hwif · line 952
Quoted 10 lines · On Mon, 16 Jun 2008 21:24:47 +0200 Bartlomiej Zolnierkiewicz…
drivers/ide/ppc/pmac.c +9
-0+static void pmac_ide_init_dev (ide_drive_t *drive) +{ +ide_hwif_t *hwif = drive->hwif; +pmac_ide_hwif_t *pmif = + (pmac_ide_hwif_t *)dev_get_drvdata (hwif->gendev.parent); + +if (pmif->mediabay) { +#ifdef CONFIG_PMAC_MEDIABAY +if (check_media_bay (np->parent,MB_CD ) == -ENODEV )
^^
"np" doesn't exist here.
Signature · 3 lines
Cheers, Stephen Rothwell [email protected] http://www.canb.auug.org.au/~sfr/
Quoted 14 lines · Stephen Rothwell
Hi Bart,
Review
Quoted 10 lines · On Mon, 16 Jun 2008 21:24:47 +0200 Bartlomiej Zolnierkiewicz…
(quoted diff) +9
-0+static void pmac_ide_init_dev(ide_drive_t *drive) +{ + ide_hwif_t *hwif = drive->hwif; + pmac_ide_hwif_t *pmif = + (pmac_ide_hwif_t *)dev_get_drvdata(hwif->gendev.parent); + + if (pmif->mediabay) { +#ifdef CONFIG_PMAC_MEDIABAY + if (check_media_bay(np->parent, MB_CD) == -ENODEV)^^
Quoted 1 line
"np" doesn't exist here.
uh, it should be pmif->node there... take 3...
From: Bartlomiej Zolnierkiewicz <[email protected]>
Subject: [PATCH] ide-pmac: add ->init_dev method (take 3)
v2/3:
* Build fixes from Stephen Rothwell.
There should be no functional changes caused by this patch.
Cc Benjamin Herrenschmidt <[email protected]>
Cc Stephen Rothwell <[email protected]>
Signed-off-by Bartlomiej Zolnierkiewicz <[email protected]>
--- drivers/ide/ppc/pmac.c | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-)
drivers/ide/ppc/pmac.c +18 -9
@@ -941,7 +941,23 @@ static u8 pmac_ide_cable_detect(ide_hwifreturn ATA_CBL_PATA40 ; } +static void pmac_ide_init_dev (ide_drive_t *drive) +{ +ide_hwif_t *hwif = drive->hwif; +pmac_ide_hwif_t *pmif = + (pmac_ide_hwif_t *)dev_get_drvdata (hwif->gendev.parent); + +if (pmif->mediabay) { +#ifdef CONFIG_PMAC_MEDIABAY +if (check_media_bay (pmif->node->parent,MB_CD ) == -ENODEV ) +return ; +#endif + drive->noprobe =1 ; + } +} +static const struct ide_port_ops pmac_ide_ata6_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_kauai_selectproc,
@@ -949,6 +965,7 @@ static const struct ide_port_ops pmac_id };static const struct ide_port_ops pmac_ide_ata4_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_selectproc,
@@ -956,6 +973,7 @@ static const struct ide_port_ops pmac_id };static const struct ide_port_ops pmac_ide_port_ops = { + .init_dev = pmac_ide_init_dev, .set_pio_mode = pmac_ide_set_pio_mode, .set_dma_mode = pmac_ide_set_dma_mode, .selectproc = pmac_ide_selectproc,
@@ -1065,15 +1083,6 @@ pmac_ide_setup_device(pmac_ide_hwif_t *p hwif->index, model_name[pmif->kind], pmif->aapl_bus_id, pmif->mediabay ? " (mediabay)" : "", hwif->irq); -if (pmif->mediabay) { -#ifdef CONFIG_PMAC_MEDIABAY -if (check_media_bay (np->parent,MB_CD ) == -ENODEV ) -break ; -#endif - hwif->drives[0 ].noprobe =1 ; - hwif->drives[1 ].noprobe =1 ; - } - idx[0 ] = hwif->index;ide_device_add (idx, &d);