Re: [Zaurus-devel] cf speed evolution
kirill wrote: Hi! Recently I've upgraded internal cf on my c3000. So now I have a better idea of what cf storage performance you can get with c3000 hardwire. Benchmark results (2.6.19 kernel, dd if=/dev/hda of=/dev/null): 1) unmodified kernel: ~ 2MB/sec 2) optimized timings, 250ns io cycle: ~ 3MB/sec Well, I tried your patch from the list on 2.6.26-RP. I see 2.33 MB/sec - 2.63MB/sec improvement on 6 years old 40x card. 3) optimized timings, DMA patch, 250ns io cycle: ~ 4MB/sec 4) optimized timings, DMA patch, 120ns io cycle: ~ 5.5MB/sec 5) optimized timings, DMA patch, 120ns io cycle, different cf card: ~ 6.3MB/sec 120ns io cycle = CFA advanced I/O timing mode supported by the card. DMA patch = ide-cs patch, which adds support for memory-to-memory style DMA to transfer data from IDE data register to memory buffer. Do you have a patch for these things? Well, I guess that also SD runs slower than it could. PXA270 datasheet[1] says, that it can run 9.75MB/sec on SD. I see 1.8MB/s. [1] http://www.penguin.cz/~utx/zaurus/datasheets/CPU/Intel%20PXA27x%20Processor%20Family%20Developer's%20Manual.pdf page 15-1 -- Stanislav Brabec http://www.penguin.cz/~utx/zaurus ___ Zaurus-devel mailing list Zaurus-devel@lists.linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/zaurus-devel
Re: [Zaurus-devel] cf speed evolution
Well, I tried your patch from the list on 2.6.26-RP. I see 2.33 MB/sec - 2.63MB/sec improvement on 6 years old 40x card. In my experience, the speed in pcmcia mode is not related to card's maximum speed. I don't think that 6 year old CF supports advanced timing mode. You may check it with hdparm --Istdout /dev/hdX word 164, bits 0-2 represent io timing capabilities. If it's zero, the card supports 250ns cycle only. 120ns io cycle = CFA advanced I/O timing mode supported by the card. DMA patch = ide-cs patch, which adds support for memory-to-memory style DMA to transfer data from IDE data register to memory buffer. Do you have a patch for these things? I have DMA patch for 2.6.19. It's quite clean. I'll post it. Some version of PIODMA patch you can find in the following thread: http://www.mail-archive.com/linux-pcm...@lists.infradead.org/msg00514.html Later I renamed it to VDMA and separated from ide driver. Technically changing IO speed is very simple. You just need to load value in MCIO reg. Unfortunately it's not that easy to do so with current pcmcia implementation. 1) soc_common stuff is not using IO cycle time to set IO speed, it uses command assertion time instead 2) there's no pcmcia API to change the io speed 3) before setting up 120ns io cycle, drive identification should be read to check card capabilities. Well, I guess that also SD runs slower than it could. PXA270 datasheet[1] says, that it can run 9.75MB/sec on SD. I see 1.8MB/s. It looks like 4-wire sd support was added in 2.6.29... Although I have not tried it. ___ Zaurus-devel mailing list Zaurus-devel@lists.linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/zaurus-devel
[Zaurus-devel] cf speed evolution
Hi! Recently I've upgraded internal cf on my c3000. So now I have a better idea of what cf storage performance you can get with c3000 hardwire. Benchmark results (2.6.19 kernel, dd if=/dev/hda of=/dev/null): 1) unmodified kernel: ~ 2MB/sec 2) optimized timings, 250ns io cycle: ~ 3MB/sec 3) optimized timings, DMA patch, 250ns io cycle: ~ 4MB/sec 4) optimized timings, DMA patch, 120ns io cycle: ~ 5.5MB/sec 5) optimized timings, DMA patch, 120ns io cycle, different cf card: ~ 6.3MB/sec optimized timings = Changes I described in pxa pcmcia timings thread. 120ns io cycle = CFA advanced I/O timing mode supported by the card. DMA patch = ide-cs patch, which adds support for memory-to-memory style DMA to transfer data from IDE data register to memory buffer. ___ Zaurus-devel mailing list Zaurus-devel@lists.linuxtogo.org http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/zaurus-devel