Re: known working sata_sil24.c setup on powerpc platforms?
Hello Prabhakar, On Fri, Apr 8, 2011 at 5:44 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@vger.kernel.org; Tejun Heo; Jeff Garzik Subject: Re: known working sata_sil24.c setup on powerpc platforms? On Thu, Apr 7, 2011 at 6:48 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: 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: 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@ffe09000 { ... Please try with this.. I am in process of pushing these IDSEL values to upstream. Do you have these for P1020RDB as well? I found a P1020RDB board that has the CE10 errata fixed, so IRQ0 is properly pulled up. Regards, -- Leon ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: known working sata_sil24.c setup on powerpc platforms?
Hi Leon, -Original Message- From: Leon Woestenberg [mailto:leon.woestenb...@gmail.com] Sent: Friday, April 08, 2011 1:55 PM To: Kushwaha Prabhakar-B32579 Cc: Moffett, Kyle D; linux-...@vger.kernel.org; Tejun Heo; Jeff Garzik; Linux PPC; Gupta Maneesh-B18878 Subject: Re: known working sata_sil24.c setup on powerpc platforms? Hello Prabhakar, On Fri, Apr 8, 2011 at 5:44 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@vger.kernel.org; Tejun Heo; Jeff Garzik Subject: Re: known working sata_sil24.c setup on powerpc platforms? On Thu, Apr 7, 2011 at 6:48 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: 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: 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@ffe09000 { ... Please try with this.. I am in process of pushing these IDSEL values to upstream. Do you have these for P1020RDB as well? I found a P1020RDB board that has the CE10 errata fixed, so IRQ0 is properly pulled up. Same IDSEL values are valid for P1020RDB also. --Prabhakar ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
Hello Prabhakar, On Fri, Apr 8, 2011 at 10:31 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: Hi Leon, -Original Message- From: Leon Woestenberg [mailto:leon.woestenb...@gmail.com] Sent: Friday, April 08, 2011 1:55 PM To: Kushwaha Prabhakar-B32579 Cc: Moffett, Kyle D; linux-...@vger.kernel.org; Tejun Heo; Jeff Garzik; Linux PPC; Gupta Maneesh-B18878 Subject: Re: known working sata_sil24.c setup on powerpc platforms? Hello Prabhakar, On Fri, Apr 8, 2011 at 5:44 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@vger.kernel.org; Tejun Heo; Jeff Garzik Subject: Re: known working sata_sil24.c setup on powerpc platforms? On Thu, Apr 7, 2011 at 6:48 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: 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: 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@ffe09000 { ... Please try with this.. I am in process of pushing these IDSEL values to upstream. Do you have these for P1020RDB as well? I found a P1020RDB board that has the CE10 errata fixed, so IRQ0 is properly pulled up. Same IDSEL values are valid for P1020RDB also. I compiled the new device tree binary, the dump is below(*) and booted the P1020RDB from that. I verified using an oscilloscope that IRQ0 indeed remains high. However, no interrupt seems to come in from the sata_sil24 driver, see boot log (**). (*) dtb dump: $ dtc -I dtb -O dts /tftpboot/p1020rdb/uImage.dtb pcie@ffe09000 { compatible = fsl,mpc8548-pcie; device_type = pci; #interrupt-cells = 0x1; #size-cells = 0x2; #address-cells = 0x3; reg = 0x0 0xffe09000 0x0 0x1000; bus-range = 0x0 0xff; ranges = 0x200 0x0 0xa000 0x0 0xa000 0x0 0x2000 0x100 0x0 0x0 0x0 0xffc3 0x0 0x1; clock-frequency = 0x1fca055; interrupt-parent = 0x2; interrupts = 0x10 0x2; interrupt-map-mask = 0xf800 0x0 0x0 0x7; interrupt-map = 0x0 0x0 0x0 0x1 0x2 0x4 0x1 0x0 0x0 0x0 0x2 0x2 0x5 0x1 0x0 0x0 0x0 0x3 0x2 0x6 0x1 0x0 0x0 0x0 0x4 0x2 0x7 0x1; pcie@0 { reg = 0x0 0x0 0x0 0x0 0x0; #size-cells = 0x2; #address-cells = 0x3; device_type = pci; ranges = 0x200 0x0 0xa000 0x200 0x0 0xa000 0x0 0x2000 0x100 0x0 0x0 0x100 0x0 0x0 0x0 0x10; }; }; pcie@ffe0a000 { compatible = fsl,mpc8548-pcie; device_type = pci; #interrupt-cells = 0x1; #size-cells = 0x2; #address-cells = 0x3; reg = 0x0 0xffe0a000 0x0 0x1000; bus-range = 0x0 0xff; ranges = 0x200 0x0 0xc000 0x0 0xc000 0x0 0x2000 0x100 0x0 0x0 0x0 0xffc2 0x0 0x1; clock-frequency = 0x1fca055; interrupt-parent = 0x2; interrupts = 0x10 0x2; interrupt-map = 0x0 0x0 0x0 0x1 0x2 0x0 0x1 0x0 0x0 0x0 0x2 0x2 0x1 0x1 0x0 0x0 0x0 0x3 0x2 0x2 0x1 0x0 0x0 0x0 0x4 0x2 0x3 0x1; pcie@0 { reg = 0x0 0x0 0x0 0x0 0x0; #size-cells = 0x2; #address-cells = 0x3; device_type = pci; ranges = 0x200 0x0 0xc000 0x200 0x0 0xc000 0x0 0x2000 0x100 0x0 0x0 0x100 0x0 0x0 0x0 0x10; }; }; }; (**) boot log [0.00] Using P1020 RDB machine description [0.00] Memory CAM mapping: 256/256 Mb, residual: 0Mb [0.00] Linux version 2.6.38 (leon@lunar) (gcc version 4.3.3 (GCC) ) #6 Fri Apr 8 11:00:10 CEST 2011 [0.00] Found legacy serial port 0 for /soc@ffe0/serial@4500 [0.00] mem=ffe04500, taddr=ffe04500, irq=0, clk=39996, speed=0 [0.00] Found legacy serial port 1 for /soc@ffe0/serial@4600 [0.00] mem=ffe04600, taddr=ffe04600, irq=0, clk=39996, speed=0 [0.00] bootconsole [udbg0] enabled [0.00] Found FSL PCI host bridge at 0xffe09000. Firmware bus number: 0-255 [0.00] PCI host bridge /pcie@ffe09000 ranges: [0.00] MEM
RE: known working sata_sil24.c setup on powerpc platforms?
Hi Leon, interrupt-map-mask is missing for pcie@ffe0a000 node. Please see my comment there... pcie@ffe0a000 node deals with mini-PCIe. one more thing, can you please tell P1020Si version. It will be there on u-boot log. --Prabhakar -Original Message- From: Leon Woestenberg [mailto:leon.woestenb...@gmail.com] Sent: Friday, April 08, 2011 2:43 PM To: Kushwaha Prabhakar-B32579 Cc: Moffett, Kyle D; linux-...@vger.kernel.org; Tejun Heo; Jeff Garzik; Linux PPC; Gupta Maneesh-B18878 Subject: Re: known working sata_sil24.c setup on powerpc platforms? Hello Prabhakar, On Fri, Apr 8, 2011 at 10:31 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: Hi Leon, -Original Message- From: Leon Woestenberg [mailto:leon.woestenb...@gmail.com] Sent: Friday, April 08, 2011 1:55 PM To: Kushwaha Prabhakar-B32579 Cc: Moffett, Kyle D; linux-...@vger.kernel.org; Tejun Heo; Jeff Garzik; Linux PPC; Gupta Maneesh-B18878 Subject: Re: known working sata_sil24.c setup on powerpc platforms? Hello Prabhakar, On Fri, Apr 8, 2011 at 5:44 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@vger.kernel.org; Tejun Heo; Jeff Garzik Subject: Re: known working sata_sil24.c setup on powerpc platforms? On Thu, Apr 7, 2011 at 6:48 AM, Kushwaha Prabhakar-B32579 b32...@freescale.com wrote: 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: 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@ffe09000 { ... Please try with this.. I am in process of pushing these IDSEL values to upstream. Do you have these for P1020RDB as well? I found a P1020RDB board that has the CE10 errata fixed, so IRQ0 is properly pulled up. Same IDSEL values are valid for P1020RDB also. I compiled the new device tree binary, the dump is below(*) and booted the P1020RDB from that. I verified using an oscilloscope that IRQ0 indeed remains high. However, no interrupt seems to come in from the sata_sil24 driver, see boot log (**). (*) dtb dump: $ dtc -I dtb -O dts /tftpboot/p1020rdb/uImage.dtb pcie@ffe09000 { compatible = fsl,mpc8548-pcie; device_type = pci; #interrupt-cells = 0x1; #size-cells = 0x2; #address-cells = 0x3; reg = 0x0 0xffe09000 0x0 0x1000; bus-range = 0x0 0xff; ranges = 0x200 0x0 0xa000 0x0 0xa000 0x0 0x2000 0x100 0x0 0x0 0x0 0xffc3 0x0 0x1; clock-frequency = 0x1fca055; interrupt-parent = 0x2; interrupts = 0x10 0x2; interrupt-map-mask = 0xf800 0x0 0x0 0x7; interrupt-map = 0x0 0x0 0x0 0x1 0x2 0x4 0x1 0x0 0x0 0x0 0x2 0x2 0x5 0x1 0x0 0x0 0x0 0x3 0x2 0x6 0x1 0x0 0x0 0x0 0x4 0x2 0x7 0x1; pcie@0 { reg = 0x0 0x0 0x0 0x0 0x0; #size-cells = 0x2; #address-cells = 0x3; device_type = pci; ranges = 0x200 0x0 0xa000 0x200 0x0 0xa000 0x0 0x2000 0x100 0x0 0x0 0x100 0x0 0x0 0x0 0x10; }; }; pcie@ffe0a000 { compatible = fsl,mpc8548-pcie; device_type = pci; #interrupt-cells = 0x1; #size-cells = 0x2; #address-cells = 0x3; reg = 0x0 0xffe0a000 0x0 0x1000; bus-range = 0x0 0xff; ranges = 0x200 0x0 0xc000 0x0 0xc000 0x0 0x2000 0x100 0x0 0x0 0x0 0xffc2 0x0 0x1; clock-frequency = 0x1fca055; interrupt-parent = 0x2; interrupts = 0x10 0x2; interrupt-map-mask is missing here.. can you please check dts again. interrupt-map = 0x0 0x0 0x0 0x1 0x2 0x0 0x1 0x0 0x0 0x0 0x2 0x2 0x1 0x1 0x0 0x0 0x0 0x3 0x2 0x2 0x1 0x0 0x0 0x0 0x4 0x2 0x3 0x1; pcie@0 { reg = 0x0 0x0 0x0 0x0 0x0; #size-cells = 0x2; #address-cells = 0x3; device_type = pci; ranges = 0x200 0x0 0xc000 0x200 0x0 0xc000 0x0 0x2000 0x100 0x0 0x0 0x100 0x0 0x0 0x0 0x10; }; }; }; (**) boot log [0.00] Using P1020 RDB machine
Re: known working sata_sil24.c setup on powerpc platforms?
On 06/04/11 18:00, Leon Woestenberg wrote: Hello, 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? Yes, I think we even use it on a p2020 board, though I think our current kernel on that product is 2.6.34. Martyn -- Martyn Welch (Principal Software Engineer) | Registered in England and GE Intelligent Platforms | Wales (3828642) at 100 T +44(0)127322748 | Barbirolli Square, Manchester, E martyn.we...@ge.com | M2 3AB VAT:GB 927559189 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
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 b32...@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? Also, did you see the reference to Felix' thread? Problem with mini-PCI-E slot on P2020RDB Best regards, Leon. --Prabhakar -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@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 j...@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@0xc000 port 0xc0004000 irq 16 [ 8.911961] ata2: SATA max UDMA/100 host m128@0xc000 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@ffe0/msi@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@0xc000 port 0xc0004000 irq 41 [ 93.033023] ata4: SATA max UDMA/100 host m128@0xc000 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@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@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=1 1+0 records in 1+0 records out 4096 bytes (41 MB) copied, 0.471802 s, 86.8 MB/s root@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=10
Re: known working sata_sil24.c setup on powerpc platforms?
Hello Martyn, thanks for a confirmation. On Thu, Apr 7, 2011 at 10:27 AM, Martyn Welch martyn.we...@ge.com wrote: On 06/04/11 18:00, Leon Woestenberg wrote: Does anyone know of a working setup of sata_sil24 on a big endian powerpc system? Yes, I think we even use it on a p2020 board, though I think our current kernel on that product is 2.6.34. Could you check if that's using MSI or legacy interrupting on PCIe? Thanks in advance for the effort, Regards, -- Leon ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: known working sata_sil24.c setup on powerpc platforms?
-Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@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 b32...@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@ffe09000 { --- --- interrupt-map-mask = 0xf800 0x0 0x0 0x7; interrupt-map = /* IDSEL 0x0 */ 0x0 0x0 0x1 mpic 0x4 0x1 0x0 0x0 0x2 mpic 0x5 0x1 0x0 0x0 0x3 mpic 0x6 0x1 0x0 0x0 0x4 mpic 0x7 0x1 ; --- --- }; pci1: pcie@ffe0a000 { --- --- interrupt-map-mask = 0xf800 0x0 0x0 0x7; interrupt-map = /* IDSEL 0x0 */ 0x0 0x0 0x1 mpic 0x0 0x1 0x0 0x0 0x2 mpic 0x1 0x1 0x0 0x0 0x3 mpic 0x2 0x1 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-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@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 j...@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@0xc000 port 0xc0004000 irq 16 [ 8.911961] ata2: SATA max UDMA/100 host m128@0xc000 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@ffe0/msi@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@0xc000 port 0xc0004000 irq 41 [ 93.033023] ata4: SATA max UDMA/100 host m128@0xc000 port 0xc0006000 irq 41 [ 95.203029] ata3: SATA link up 3.0 Gbps (SStatus
known working sata_sil24.c setup on powerpc platforms?
Hello, 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? Regards, -- Leon ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
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. I know our MSI *does* work in general because we have an Intel 82571EB chipset also attached via PCI-E with working MSI. We've definitely had issues with sata_sil24 + MSI, also... sata_sil24 does work on big endian in general. Jeff ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
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. I know our MSI *does* work in general because we have an Intel 82571EB chipset also attached via PCI-E with working MSI. Cheers, Kyle Moffett ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
Hello Jeff, all, On Wed, Apr 6, 2011 at 8:12 PM, Jeff Garzik j...@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@0xc000 port 0xc0004000 irq 16 [8.911961] ata2: SATA max UDMA/100 host m128@0xc000 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@ffe0/msi@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@0xc000 port 0xc0004000 irq 41 [ 93.033023] ata4: SATA max UDMA/100 host m128@0xc000 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@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@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=1 1+0 records in 1+0 records out 4096 bytes (41 MB) copied, 0.471802 s, 86.8 MB/s root@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=10 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@ffe0/msi@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@0xc000 port 0xc0004000 irq 41 [ 93.033023] ata4: SATA max UDMA/100 host m128@0xc000 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:
Re: known working sata_sil24.c setup on powerpc platforms?
Hi Leon, I think there's a hardware problem with mini PCI-E slot on P2020RDB related to legacy IRQ routing. See this thread for details http://www.mail-archive.com/linuxppc-dev@lists.ozlabs.org/msg40037.html You may have better luck with PCI-E slot and mini PCI-E to PCI-E adapter. Felix. ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
Hello Felix, On Wed, Apr 6, 2011 at 10:49 PM, Felix Radensky fe...@embedded-sol.com wrote: I think there's a hardware problem with mini PCI-E slot on P2020RDB related to legacy IRQ routing. See this thread for details http://www.mail-archive.com/linuxppc-dev@lists.ozlabs.org/msg40037.html Thanks for the heads-up. You may have better luck with PCI-E slot and mini PCI-E to PCI-E adapter. Unfortunately the PCIe is slot already occupied, so that's why I searched for and found the Mini PCIe Sil3132 card. Legacy IRQ routing on PCIe is broken in what sense? Software (device tree, kernel) or silicon (p2020) ? On the MSI side, I'm getting quite far on transfers, but at one point the device stalls. Maybe a race condition in interrupt handling in sata_sil24.c? Regards, -- Leon ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: known working sata_sil24.c setup on powerpc platforms?
Hi Leon, On 04/06/2011 11:58 PM, Leon Woestenberg wrote: Hello Felix, On Wed, Apr 6, 2011 at 10:49 PM, Felix Radenskyfe...@embedded-sol.com wrote: I think there's a hardware problem with mini PCI-E slot on P2020RDB related to legacy IRQ routing. See this thread for details http://www.mail-archive.com/linuxppc-dev@lists.ozlabs.org/msg40037.html Unfortunately the PCIe is slot already occupied, so that's why I searched for and found the Mini PCIe Sil3132 card. Legacy IRQ routing on PCIe is broken in what sense? Software (device tree, kernel) or silicon (p2020) ? It's a board design problem specific to P2020RDB. Maybe it's fixed in latest board revisions. I have P2020RDB rev C and the problem is still there. Freescale people on the list should know better. On the MSI side, I'm getting quite far on transfers, but at one point the device stalls. Maybe a race condition in interrupt handling in sata_sil24.c? Sorry, cannot help you with that. I have no experience with sata_sil24. Felix. ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
RE: known working sata_sil24.c setup on powerpc platforms?
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. --Prabhakar -Original Message- From: linux-ide-ow...@vger.kernel.org [mailto:linux-ide- ow...@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-...@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 j...@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@0xc000 port 0xc0004000 irq 16 [8.911961] ata2: SATA max UDMA/100 host m128@0xc000 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@ffe0/msi@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@0xc000 port 0xc0004000 irq 41 [ 93.033023] ata4: SATA max UDMA/100 host m128@0xc000 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@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@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=1 1+0 records in 1+0 records out 4096 bytes (41 MB) copied, 0.471802 s, 86.8 MB/s root@p1020rdb:~# dd if=/dev/sda of=/dev/null bs=4k count=10 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@ffe0/msi@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