]> git.hungrycats.org Git - linux/commit
[SPARC64]: Get PCI floppies fully functional again.
authorDavid S. Miller <davem@nuts.ninka.net>
Wed, 19 Nov 2003 12:50:27 +0000 (04:50 -0800)
committerDavid S. Miller <davem@nuts.ninka.net>
Wed, 19 Nov 2003 12:50:27 +0000 (04:50 -0800)
commit64383da3045a33a2edb29536b073d4b78560b075
tree7f0ac78395a247b5d2155065fecc294ddac9431f
parentcfa2d622a597e995d64116a8dfe1ca7dee37f0f7
[SPARC64]: Get PCI floppies fully functional again.

EBUS DMA fixes:
- Add EBUS_DMA_FLAG_TCI_DISABLE that the client can set if it
  wants only to hear device interrupts, not DMA complete ones.
- When initially resetting the EBUS DMA unit, put valid burst etc.
  encodings in the CSR register.  Not doing this appears to leave
  the attached ISA device in a weird state.

PCI FLOPPY fixes:
- Do ebus_dma_enable() before ebus_dma_request()
- In sun_pci_fd_set_dma_mode() do not forget to set the direction.
- Set EBUS_DMA_FLAG_TCI_DISABLE in ebus_dma flags.
- Make sure that in error paths sun_fdc/FCD1 will be -1 (invalid).

Thanks to Soyoung Park for loaning her Ultra5 to me so I could fix this.
arch/sparc64/kernel/ebus.c
include/asm-sparc64/ebus.h
include/asm-sparc64/floppy.h