Re: Re : sata_sil problems with SIL3512 controler on a ppc target

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



snatcher snatcher wrote:
By checking the old 2.4.20 driver used for this device, I've found
the following lines :

#ifdef CONFIG_BUFFALO_PLATFORM
> writel(0x10401554, mmio_base + 0x14c);
writel(0x10401554, mmio_base + 0x1cc);
> #endif in the sil_init_one function (in sata_sil.c)...

After some google searching, I've found this message from this
mailing list : http://www.spinics.net/lists/linux-ide/msg00047.html => It says that for SiI 3114 contoler, we need to force write
0x10401554 instead of 0x10401555 in sfis_cfg (SATA FIS reception
config register). By looking in the source code of the latest
version, it looks like my controler (Sil 3512) is set to apply this
workaround too, but according to my boot log, it's not applying it
(It should write "Applying R_ERR on DMA / activate FIS errata fix"
just after the error about the PCI cache). I'll add some traces to
understand what's happening and I'll tell you ... Sylver

Please apply the attached patch and report what happens.

--
tejun
diff --git a/drivers/ata/sata_sil.c b/drivers/ata/sata_sil.c
index f844a1f..5c34f75 100644
--- a/drivers/ata/sata_sil.c
+++ b/drivers/ata/sata_sil.c
@@ -593,8 +593,6 @@ static void sil_init_controller(struct p
 
 		for (i = 0, cnt = 0; i < n_ports; i++) {
 			tmp = readl(mmio_base + sil_port[i].sfis_cfg);
-			if ((tmp & 0x3) != 0x01)
-				continue;
 			if (!cnt)
 				dev_printk(KERN_INFO, &pdev->dev,
 					   "Applying R_ERR on DMA activate "
diff --git a/include/linux/libata.h b/include/linux/libata.h

[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux