Skip to content

Commit

Permalink
pata_ninja32: setup changes
Browse files Browse the repository at this point in the history
Forcibly set more of the configuration at init time. This seems to fix at
least one problem reported. We don't know what most of these bits do, but
we do know what windows stuffs there.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
  • Loading branch information
Alan Cox authored and Jeff Garzik committed Feb 11, 2008
1 parent 8397248 commit 4194645
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions drivers/ata/pata_ninja32.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
* Base + 0x00 IRQ Status
* Base + 0x01 IRQ control
* Base + 0x02 Chipset control
* Base + 0x03 Unknown
* Base + 0x04 VDMA and reset control + wait bits
* Base + 0x08 BMIMBA
* Base + 0x0C DMA Length
Expand Down Expand Up @@ -174,8 +175,12 @@ static int ninja32_init_one(struct pci_dev *dev, const struct pci_device_id *id)
ata_std_ports(&ap->ioaddr);

iowrite8(0x05, base + 0x01); /* Enable interrupt lines */
iowrite8(0xB3, base + 0x02); /* Burst, ?? setup */
iowrite8(0x00, base + 0x04); /* WAIT0 ? */
iowrite8(0xBE, base + 0x02); /* Burst, ?? setup */
iowrite8(0x01, base + 0x03); /* Unknown */
iowrite8(0x20, base + 0x04); /* WAIT0 */
iowrite8(0x8f, base + 0x05); /* Unknown */
iowrite8(0xa4, base + 0x1c); /* Unknown */
iowrite8(0x83, base + 0x1d); /* BMDMA control: WAIT0 */
/* FIXME: Should we disable them at remove ? */
return ata_host_activate(host, dev->irq, ata_interrupt,
IRQF_SHARED, &ninja32_sht);
Expand Down

0 comments on commit 4194645

Please sign in to comment.