Skip to content

Commit 4edb386

Browse files
committed
parisc: parport0: fix this legacy no-device port driver!
Fix the above kernel error from parport_announce_port() on 32bit GSC machines (e.g. B160L). The parport driver requires now a pointer to the device struct. Signed-off-by: Helge Deller <deller@gmx.de>
1 parent c218c71 commit 4edb386

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed

drivers/parport/parport_gsc.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ static int parport_PS2_supported(struct parport *pb)
234234

235235
struct parport *parport_gsc_probe_port(unsigned long base,
236236
unsigned long base_hi, int irq,
237-
int dma, struct pci_dev *dev)
237+
int dma, struct parisc_device *padev)
238238
{
239239
struct parport_gsc_private *priv;
240240
struct parport_operations *ops;
@@ -258,7 +258,6 @@ struct parport *parport_gsc_probe_port(unsigned long base,
258258
priv->ctr_writable = 0xff;
259259
priv->dma_buf = 0;
260260
priv->dma_handle = 0;
261-
priv->dev = dev;
262261
p->base = base;
263262
p->base_hi = base_hi;
264263
p->irq = irq;
@@ -282,6 +281,7 @@ struct parport *parport_gsc_probe_port(unsigned long base,
282281
return NULL;
283282
}
284283

284+
p->dev = &padev->dev;
285285
p->base_hi = base_hi;
286286
p->modes = tmp.modes;
287287
p->size = (p->modes & PARPORT_MODE_EPP)?8:3;
@@ -373,7 +373,7 @@ static int parport_init_chip(struct parisc_device *dev)
373373
}
374374

375375
p = parport_gsc_probe_port(port, 0, dev->irq,
376-
/* PARPORT_IRQ_NONE */ PARPORT_DMA_NONE, NULL);
376+
/* PARPORT_IRQ_NONE */ PARPORT_DMA_NONE, dev);
377377
if (p)
378378
parport_count++;
379379
dev_set_drvdata(&dev->dev, p);

drivers/parport/parport_gsc.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,6 +217,6 @@ extern void parport_gsc_dec_use_count(void);
217217
extern struct parport *parport_gsc_probe_port(unsigned long base,
218218
unsigned long base_hi,
219219
int irq, int dma,
220-
struct pci_dev *dev);
220+
struct parisc_device *padev);
221221

222222
#endif /* __DRIVERS_PARPORT_PARPORT_GSC_H */

0 commit comments

Comments
 (0)