Module Name: src Committed By: jmcneill Date: Mon Feb 24 15:47:43 UTC 2014
Modified Files: src/sys/arch/arm/allwinner: awin_ahcisata.c Log Message: write to vendor specific dma reg relative to the port, not the base. sata works on cubieboard2 now To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/sys/arch/arm/allwinner/awin_ahcisata.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/arm/allwinner/awin_ahcisata.c diff -u src/sys/arch/arm/allwinner/awin_ahcisata.c:1.9 src/sys/arch/arm/allwinner/awin_ahcisata.c:1.10 --- src/sys/arch/arm/allwinner/awin_ahcisata.c:1.9 Mon Feb 24 12:21:27 2014 +++ src/sys/arch/arm/allwinner/awin_ahcisata.c Mon Feb 24 15:47:43 2014 @@ -31,7 +31,7 @@ #include <sys/cdefs.h> -__KERNEL_RCSID(1, "$NetBSD: awin_ahcisata.c,v 1.9 2014/02/24 12:21:27 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: awin_ahcisata.c,v 1.10 2014/02/24 15:47:43 jmcneill Exp $"); #include <sys/param.h> #include <sys/bus.h> @@ -171,10 +171,10 @@ awin_ahci_channel_start(struct ahci_soft { uint32_t dma; - dma = AHCI_READ(sc, AWIN_AHCI_DMA_REG); + dma = AHCI_READ(sc, 0x100 + AHCI_P_OFFSET(chp->ch_channel) + AWIN_AHCI_DMA_REG); dma &= ~0xff00; dma |= 0x4400; - AHCI_WRITE(sc, AWIN_AHCI_DMA_REG, dma); + AHCI_WRITE(sc, 0x100 + AHCI_P_OFFSET(chp->ch_channel) + AWIN_AHCI_DMA_REG, dma); } static void