Lines Matching +full:burst +full:- +full:wrap
1 // SPDX-License-Identifier: GPL-2.0-only
3 * pata-cs5530.c - CS5530 PATA for new ATA layer
28 unsigned long bmdma = (unsigned long)ap->ioaddr.bmdma_addr; in cs5530_port_base()
30 return (void __iomem *)((bmdma & ~0x0F) + 0x20 + 0x10 * ap->port_no); in cs5530_port_base()
34 * cs5530_set_piomode - PIO setup
57 if (adev->devno) in cs5530_set_piomode()
60 iowrite32(cs5530_pio_timings[format][adev->pio_mode - XFER_PIO_0], base); in cs5530_set_piomode()
64 * cs5530_set_dmamode - DMA timing setup
82 switch(adev->dma_mode) { in cs5530_set_dmamode()
100 if (adev->devno == 0) /* Master */ in cs5530_set_dmamode()
112 reg = ioread8(ap->ioaddr.bmdma_addr + ATA_DMA_STATUS); in cs5530_set_dmamode()
113 reg |= (1 << (5 + adev->devno)); in cs5530_set_dmamode()
114 iowrite8(reg, ap->ioaddr.bmdma_addr + ATA_DMA_STATUS); in cs5530_set_dmamode()
118 ap->private_data = adev; in cs5530_set_dmamode()
122 * cs5530_qc_issue - command issue
125 * Called when the libata layer is about to issue a command. We wrap
133 struct ata_port *ap = qc->ap; in cs5530_qc_issue()
134 struct ata_device *adev = qc->dev; in cs5530_qc_issue()
135 struct ata_device *prev = ap->private_data; in cs5530_qc_issue()
188 * cs5530_init_chip - Chipset init
199 switch (dev->device) { in cs5530_init_chip()
221 * Set PCI CacheLineSize to 16-bytes: in cs5530_init_chip()
222 * --> Write 0x04 into 8-bit PCI CACHELINESIZE reg of function 0 of the cs5530 in cs5530_init_chip()
231 * --> Write 0x5006 into 16-bit reg at offset 0xd0 of function 0 of the cs5530 in cs5530_init_chip()
237 * Bit-1 at 0x40 enables MemoryWriteAndInvalidate on internal X-bus: in cs5530_init_chip()
245 * Set max PCI burst size (16-bytes seems to work best): in cs5530_init_chip()
246 * 16bytes: set bit-1 at 0x41 (reg value of 0x16) in cs5530_init_chip()
247 * all others: clear bit-1 at 0x41, and do: in cs5530_init_chip()
270 return -ENODEV; in cs5530_init_chip()
274 * cs5530_init_one - Initialise a CS5530
307 return -ENODEV; in cs5530_init_one()
328 return -EIO; in cs5530_reinit_one()
355 MODULE_DESCRIPTION("low-level driver for the Cyrix/NS/AMD 5530");