sata_inic162x.c (9fec6060d9e48ed7db0dac0e16d0f0f0e615b7f6) sata_inic162x.c (99580664aa83ca04bb52988d504a4195b41833b0)
1/*
2 * sata_inic162x.c - Driver for Initio 162x SATA controllers
3 *
4 * Copyright 2006 SUSE Linux Products GmbH
5 * Copyright 2006 Tejun Heo <teheo@novell.com>
6 *
7 * This file is released under GPL v2.
8 *

--- 82 unchanged lines hidden (view full) ---

91 PORT_IDMA_STAT = 0x16,
92
93 PORT_RPQ_FIFO = 0x1e,
94 PORT_RPQ_CNT = 0x1f,
95
96 PORT_SCR = 0x20,
97
98 /* HOST_CTL bits */
1/*
2 * sata_inic162x.c - Driver for Initio 162x SATA controllers
3 *
4 * Copyright 2006 SUSE Linux Products GmbH
5 * Copyright 2006 Tejun Heo <teheo@novell.com>
6 *
7 * This file is released under GPL v2.
8 *

--- 82 unchanged lines hidden (view full) ---

91 PORT_IDMA_STAT = 0x16,
92
93 PORT_RPQ_FIFO = 0x1e,
94 PORT_RPQ_CNT = 0x1f,
95
96 PORT_SCR = 0x20,
97
98 /* HOST_CTL bits */
99 HCTL_LEDEN = (1 << 3), /* enable LED operation */
99 HCTL_IRQOFF = (1 << 8), /* global IRQ off */
100 HCTL_FTHD0 = (1 << 10), /* fifo threshold 0 */
101 HCTL_FTHD1 = (1 << 11), /* fifo threshold 1*/
102 HCTL_PWRDWN = (1 << 12), /* power down PHYs */
103 HCTL_SOFTRST = (1 << 13), /* global reset (no phy reset) */
104 HCTL_RPGSEL = (1 << 15), /* register page select */
105
106 HCTL_KNOWN_BITS = HCTL_IRQOFF | HCTL_PWRDWN | HCTL_SOFTRST |

--- 428 unchanged lines hidden (view full) ---

535}
536
537static unsigned int inic_qc_issue(struct ata_queued_cmd *qc)
538{
539 struct ata_port *ap = qc->ap;
540 void __iomem *port_base = inic_port_base(ap);
541
542 /* fire up the ADMA engine */
100 HCTL_IRQOFF = (1 << 8), /* global IRQ off */
101 HCTL_FTHD0 = (1 << 10), /* fifo threshold 0 */
102 HCTL_FTHD1 = (1 << 11), /* fifo threshold 1*/
103 HCTL_PWRDWN = (1 << 12), /* power down PHYs */
104 HCTL_SOFTRST = (1 << 13), /* global reset (no phy reset) */
105 HCTL_RPGSEL = (1 << 15), /* register page select */
106
107 HCTL_KNOWN_BITS = HCTL_IRQOFF | HCTL_PWRDWN | HCTL_SOFTRST |

--- 428 unchanged lines hidden (view full) ---

536}
537
538static unsigned int inic_qc_issue(struct ata_queued_cmd *qc)
539{
540 struct ata_port *ap = qc->ap;
541 void __iomem *port_base = inic_port_base(ap);
542
543 /* fire up the ADMA engine */
543 writew(HCTL_FTHD0, port_base + HOST_CTL);
544 writew(HCTL_FTHD0 | HCTL_LEDEN, port_base + HOST_CTL);
544 writew(IDMA_CTL_GO, port_base + PORT_IDMA_CTL);
545 writeb(0, port_base + PORT_CPB_PTQFIFO);
546
547 return 0;
548}
549
550static void inic_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
551{

--- 383 unchanged lines hidden ---
545 writew(IDMA_CTL_GO, port_base + PORT_IDMA_CTL);
546 writeb(0, port_base + PORT_CPB_PTQFIFO);
547
548 return 0;
549}
550
551static void inic_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
552{

--- 383 unchanged lines hidden ---