known working sata_sil24.c setup on powerpc platforms?

Kushwaha Prabhakar-B32579 B32579 at freescale.com
Fri Apr 8 13:44:03 EST 2011



> -----Original Message-----
> From: linux-ide-owner at vger.kernel.org [mailto:linux-ide-
> owner at vger.kernel.org] On Behalf Of Leon Woestenberg
> Sent: Thursday, April 07, 2011 10:23 PM
> To: Kushwaha Prabhakar-B32579
> Cc: Moffett, Kyle D; Linux PPC; linux-ide at vger.kernel.org; Tejun Heo;
> Jeff Garzik
> Subject: Re: known working sata_sil24.c setup on powerpc platforms?
> 
> Hello Prabhakar,
> 
> thanks for your response. My answer below:
> 
> On Thu, Apr 7, 2011 at 6:48 AM, Kushwaha Prabhakar-B32579
> <B32579 at freescale.com> wrote:
> > Hi Leon,
> >
> > Can you please check p2020rdb.dts for IDSEL entries for pci0/1 node?
> >
> > In order to work in legacy mode, IDSEL entries are required.
> >
> No, the p1020rdb and p2020rdb do not have the IDSEL entries:
> 
> http://lxr.linux.no/#linux+v2.6.38/arch/powerpc/boot/dts/p2020rdb.dts
> 
> whereas the p2020ds has:
> 
> http://lxr.linux.no/#linux+v2.6.38/arch/powerpc/boot/dts/p2020ds.dts
> 
> 
> What would the correct IDSEL entries be?

For legacy interrupt to work IDSEL values are required.. please find the correct IDSEL values for pci0/1.

	pci0: pcie at ffe09000 {
		 ---
		 ---
		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
		interrupt-map = <
			/* IDSEL 0x0 */
			0000 0x0 0x0 0x1 &mpic 0x4 0x1
			0000 0x0 0x0 0x2 &mpic 0x5 0x1
			0000 0x0 0x0 0x3 &mpic 0x6 0x1
			0000 0x0 0x0 0x4 &mpic 0x7 0x1
			>;
	      ---
		---
	};

	pci1: pcie at ffe0a000 {
		 ---
		 ---
		interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
		interrupt-map = <
			/* IDSEL 0x0 */
			0000 0x0 0x0 0x1 &mpic 0x0 0x1
			0000 0x0 0x0 0x2 &mpic 0x1 0x1
			0000 0x0 0x0 0x3 &mpic 0x2 0x1
			0000 0x0 0x0 0x4 &mpic 0x3 0x1
			>;
		 ---
		 ---
	};
};

Please try with this.. I am in process of pushing these IDSEL values to upstream. 

> Also, did you see the reference to Felix' thread?
> "Problem with mini-PCI-E slot on P2020RDB"
> 
I will look into it.. 

--Prabhakar

> >
> >> -----Original Message-----
> >> From: linux-ide-owner at vger.kernel.org [mailto:linux-ide-
> >> owner at vger.kernel.org] On Behalf Of Leon Woestenberg
> >> Sent: Thursday, April 07, 2011 12:20 AM
> >> To: Jeff Garzik
> >> Cc: Moffett, Kyle D; Linux PPC; linux-ide at vger.kernel.org; Tejun Heo
> >> Subject: Re: known working sata_sil24.c setup on powerpc platforms?
> >>
> >> Hello Jeff, all,
> >>
> >> On Wed, Apr 6, 2011 at 8:12 PM, Jeff Garzik <jeff at garzik.org> wrote:
> >> > On 04/06/2011 01:48 PM, Moffett, Kyle D wrote:
> >> >> On Apr 06, 2011, at 13:00, Leon Woestenberg wrote:
> >> >>> after investigating problems with sata_sil24.c on a freescale
> >> >>> p2020 soc, I wonder if this driver works on powerpc at all?
> >> >>>
> >> >>> Does anyone know of a working setup of sata_sil24 on a big endian
> >> >>> powerpc system?
> >> >>
> >> >> Our P2020 boards work fine with legacy PCI interrupts (I think
> >> >> it's a
> >> >> sil3124 over PCI-E); the only deficiency is that MSI does not seem
> >> >> to
> >> work.
> >> >>
> >> >
> >> > We've definitely had issues with sata_sil24 + MSI, also...
> >> >
> >> > sata_sil24 does work on big endian in general.
> >> >
> >>
> >> On my system, I have the contrary to Kyle's experience (thanks for
> >> sharing).
> >>
> >> PowerPC P2020RDB
> >> vanilla 2.6.38
> >> Sil3132 on mini-PCI Express card
> >>
> >>
> >> Enabling msi gets me further than disabling it (default).
> >>
> >> modprobe sata_sil
> >>
> >> [    8.834613] sata_sil24 0001:03:00.0: version 1.1 [    8.885581]
> >> scsi0 : sata_sil24 [    8.901420] scsi1 : sata_sil24 [    8.904642]
> >> ata1: SATA max UDMA/100 host m128 at 0xc0000000 port 0xc0004000 irq 16 [
> 
> >> 8.911961] ata2: SATA max UDMA/100 host m128 at 0xc0000000 port
> >> 0xc0006000 irq 16 [   11.095127] ata1: SATA link up 3.0 Gbps (SStatus
> >> 123 SControl 0) [   14.906986] eth0: no IPv6 routers present [
> >> 16.099016] ata1.00: qc timeout (cmd 0xec) [   16.103128] ata1.00:
> >> failed to IDENTIFY (I/O error, err_mask=0x4) [   18.299050] ata1:
> >> SATA link up 3.0 Gbps (SStatus 123 SControl 0) [   28.303026]
> >> ata1.00: qc timeout (cmd 0xec) [   28.307139] ata1.00: failed to
> >> IDENTIFY (I/O error, err_mask=0x4) [   28.313233] ata1: limiting SATA
> >> link speed to 1.5 Gbps [   30.523059] ata1: SATA link up 1.5 Gbps
> >> (SStatus 113 SControl 10)
> >>
> >>
> >> modprobe sata_sil msi=1
> >>
> >> [   92.984120] sata_sil24 0001:03:00.0: version 1.1 [   92.988897]
> >> irq: irq 0 on host /soc at ffe00000/msi at 41600 mapped to virtual irq 41 [
> 
> >> 92.996229] sata_sil24 0001:03:00.0: Using MSI [   93.000675]
> >> sata_sil24 0001:03:00.0: enabling bus mastering [   93.011628] scsi2
> >> : sata_sil24 [   93.022463] scsi3 : sata_sil24 [   93.025695] ata3:
> >> SATA max UDMA/100 host m128 at 0xc0000000 port 0xc0004000 irq 41 [
> >> 93.033023] ata4: SATA max UDMA/100 host m128 at 0xc0000000 port
> >> 0xc0006000 irq 41 [   95.203029] ata3: SATA link up 3.0 Gbps (SStatus
> >> 123 SControl 0) [   95.209045] ata3: spurious interrupt (slot_stat
> >> 0x0 active_tag
> >> -84148995 sactive 0x0)
> >> [   95.217171] ata3.00: ATA-7: INTEL SSDSA2M080G2GN, 2CV102HD, max
> >> UDMA/133
> >> [   95.223882] ata3.00: 156301488 sectors, multi 1: LBA48 NCQ (depth
> >> 31/32)
> >> [   95.230905] ata3.00: configured for UDMA/100 [   95.235399] scsi
> >> 2:0:0:0: Direct-Access     ATA      INTEL SSDSA2M080 2CV1 PQ: 0 ANSI:
> >> 5 [   95.244002] sd 2:0:0:0: Attached scsi generic sg0 type 0 [
> >> 95.252041] sd 2:0:0:0: [sda] 156301488 512-byte logical blocks:
> >> (80.0 GB/74.5 GiB)
> >> [   95.260219] sd 2:0:0:0: [sda] Write Protect is off [   95.265063]
> >> sd 2:0:0:0: [sda] Mode Sense: 00 3a 00 00 [   95.270500] sd 2:0:0:0:
> >> [sda] Write cache: enabled, read cache:
> >> enabled, doesn't support DPO or FUA
> >> [   95.283779]  sda: sda1 sda2 sda3 sda4 [   95.289482] sd 2:0:0:0:
> >> [sda] Attached SCSI disk [   95.965897] EXT3-fs: barriers not enabled
> >> [   95.977279] kjournald starting.  Commit interval 5 seconds [
> >> 95.983296] EXT3-fs (sda2): using internal journal [   95.988143]
> >> EXT3-fs (sda2): recovery complete [   95.992504] EXT3-fs (sda2):
> >> mounted filesystem with writeback data mode [   96.111587] NTFS
> >> volume version 3.1.
> >> [   97.331005] ata4: SATA link down (SStatus 0 SControl 0)
> >>
> >> root at p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=1000
> >> 1000+0 records in
> >> 1000+0 records out
> >> 4096000 bytes (4.1 MB) copied, 0.0315629 s, 130 MB/s root at p1020rdb:~#
> >> dd if=/dev/sda of=/dev/null bs=4k count=10000
> >> 10000+0 records in
> >> 10000+0 records out
> >> 40960000 bytes (41 MB) copied, 0.471802 s, 86.8 MB/s
> >>
> >> root at p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=100000
> >>
> >> That stalls, I see the controller fail. See dmesg below:
> >>
> >> ^C^Cdd: reading `/dev/sda': Input/output error
> >> 51804+0 records in
> >> 51804+0 records out
> >> 212189184 bytes (212 MB) copied, 85.6537 s, 2.5 MB/s
> >> dd: closing input file `/dev/sda': Bad file descriptor
> >>
> >>
> >> [   92.984120] sata_sil24 0001:03:00.0: version 1.1 [   92.988897]
> >> irq: irq 0 on host /soc at ffe00000/msi at 41600 mapped to virtual irq 41 [
> 
> >> 92.996229] sata_sil24 0001:03:00.0: Using MSI [   93.000675]
> >> sata_sil24 0001:03:00.0: enabling bus mastering [   93.011628] scsi2
> >> : sata_sil24 [   93.022463] scsi3 : sata_sil24 [   93.025695] ata3:
> >> SATA max UDMA/100 host m128 at 0xc0000000 port 0xc0004000 irq 41 [
> >> 93.033023] ata4: SATA max UDMA/100 host m128 at 0xc0000000 port
> >> 0xc0006000 irq 41 [   95.203029] ata3: SATA link up 3.0 Gbps (SStatus
> >> 123 SControl 0) [   95.209045] ata3: spurious interrupt (slot_stat
> >> 0x0 active_tag
> >> -84148995 sactive 0x0)
> >> [   95.217171] ata3.00: ATA-7: INTEL SSDSA2M080G2GN, 2CV102HD, max
> >> UDMA/133
> >> [   95.223882] ata3.00: 156301488 sectors, multi 1: LBA48 NCQ (depth
> >> 31/32)
> >> [   95.230905] ata3.00: configured for UDMA/100 [   95.235399] scsi
> >> 2:0:0:0: Direct-Access     ATA      INTEL SSDSA2M080 2CV1 PQ: 0 ANSI:
> >> 5 [   95.244002] sd 2:0:0:0: Attached scsi generic sg0 type 0 [
> >> 95.252041] sd 2:0:0:0: [sda] 156301488 512-byte logical blocks:
> >> (80.0 GB/74.5 GiB)
> >> [   95.260219] sd 2:0:0:0: [sda] Write Protect is off [   95.265063]
> >> sd 2:0:0:0: [sda] Mode Sense: 00 3a 00 00 [   95.270500] sd 2:0:0:0:
> >> [sda] Write cache: enabled, read cache:
> >> enabled, doesn't support DPO or FUA
> >> [   95.283779]  sda: sda1 sda2 sda3 sda4 [   95.289482] sd 2:0:0:0:
> >> [sda] Attached SCSI disk [   95.965897] EXT3-fs: barriers not enabled
> >> [   95.977279] kjournald starting.  Commit interval 5 seconds [
> >> 95.983296] EXT3-fs (sda2): using internal journal [   95.988143]
> >> EXT3-fs (sda2): recovery complete [   95.992504] EXT3-fs (sda2):
> >> mounted filesystem with writeback data mode [   96.111587] NTFS
> >> volume version 3.1.
> >> [   97.331005] ata4: SATA link down (SStatus 0 SControl 0) [
> >> 285.891036] ata3.00: exception Emask 0x0 SAct 0x3 SErr 0x0 action 0x6
> >> frozen [  285.898099] ata3.00: failed command: READ FPDMA QUEUED [
> >> 285.903250] ata3.00: cmd 60/00:00:e0:53:06/01:00:00:00:00/40 tag 0
> >> ncq
> >> 131072 in
> >> [  285.903255]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask
> >> 0x4 (timeout)
> >> [  285.918028] ata3.00: status: { DRDY } [  285.921689] ata3.00:
> >> failed
> >> command: READ FPDMA QUEUED [  285.926836] ata3.00: cmd
> >> 60/00:08:e0:52:06/01:00:00:00:00/40 tag 1 ncq 131072 in [
> >> 285.926841]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask
> >> 0x4 (timeout)
> >> [  285.941615] ata3.00: status: { DRDY } [  285.945281] ata3: hard
> >> resetting link [  288.055034] ata3: SATA link up 3.0 Gbps (SStatus
> >> 123 SControl 0) [  293.058999] ata3.00: qc timeout (cmd 0xec) [
> >> 293.063106]
> >> ata3.00: failed to IDENTIFY (I/O error, err_mask=0x4) [  293.069198]
> >> ata3.00: revalidation failed (errno=-5) [  293.074077] ata3: hard
> >> resetting link [  295.259018] ata3: SATA link up 3.0 Gbps (SStatus
> >> 123 SControl 0)
> >>
> >> What can I do next to investigate and help fix this issue?
> >>
> >>
> >> Regards,
> >> --
> >> Leon
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-ide"
> >> in the body of a message to majordomo at vger.kernel.org More majordomo
> >> info at http://vger.kernel.org/majordomo-info.html
> >
> >
> >
> 
> 
> 
> --
> Leon
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ide" in
> the body of a message to majordomo at vger.kernel.org More majordomo info at
> http://vger.kernel.org/majordomo-info.html




More information about the Linuxppc-dev mailing list