Lines Matching +full:mode +full:- +full:based

1 // SPDX-License-Identifier: GPL-2.0-only
3 * pata-cs5535.c - CS5535 PATA for new ATA layer
4 * (C) 2005-2006 Red Hat Inc
7 * based upon cs5535.c from AMD <[email protected]> as cleaned up and
9 * and Alexander Kiausch <alex.kiausch@t-online.de>
11 * Loosely based on the piix & svwks drivers.
32 * The Geode (Aka Athlon GX now) uses an internal MSR based
58 * cs5535_cable_detect - detect cable type
68 struct pci_dev *pdev = to_pci_dev(ap->host->dev); in cs5535_cable_detect()
78 * cs5535_set_piomode - PIO setup
96 int mode = adev->pio_mode - XFER_PIO_0; in cs5535_set_piomode() local
97 int cmdmode = mode; in cs5535_set_piomode()
101 int pairmode = pair->pio_mode - XFER_PIO_0; in cs5535_set_piomode()
102 cmdmode = min(mode, pairmode); in cs5535_set_piomode()
105 wrmsr(ATAC_CH0D0_PIO + 2 * pair->devno, in cs5535_set_piomode()
109 wrmsr(ATAC_CH0D0_PIO + 2 * adev->devno, in cs5535_set_piomode()
110 pio_cmd_timings[cmdmode] << 16 | pio_timings[mode], 0); in cs5535_set_piomode()
113 rdmsr(ATAC_CH0D0_DMA + 2 * adev->devno, reg, dummy); in cs5535_set_piomode()
114 wrmsr(ATAC_CH0D0_DMA + 2 * adev->devno, reg | 0x80000000UL, 0); in cs5535_set_piomode()
118 * cs5535_set_dmamode - DMA timing setup
133 int mode = adev->dma_mode; in cs5535_set_dmamode() local
135 rdmsr(ATAC_CH0D0_DMA + 2 * adev->devno, reg, dummy); in cs5535_set_dmamode()
137 if (mode >= XFER_UDMA_0) in cs5535_set_dmamode()
138 reg |= udma_timings[mode - XFER_UDMA_0]; in cs5535_set_dmamode()
140 reg |= mwdma_timings[mode - XFER_MW_DMA_0]; in cs5535_set_dmamode()
141 wrmsr(ATAC_CH0D0_DMA + 2 * adev->devno, reg, 0); in cs5535_set_dmamode()
156 * cs5535_init_one - Initialise a CS5530
200 MODULE_DESCRIPTION("low-level driver for the NS/AMD 5535");