Hi Kyle!

Amon,

        Ok, I've made a few changes.  I have added support for the ping
pong feature on the HC.  With the Ethernet device I have been using, I
was able to get ~15% better performance with the ping pong feature.
Depending on how the driver for the individual device is written, you
may or may not see a performance increase with ping pong.  To enable the
ping pong functionality, CONFIG_USB_PING_PONG must be defined.
In order to use ping pong, the ATL buffer size must be at most the size
of the smallest bulk and control endpoint of all devices on the bus.
This is set with the ATL_BLOCK_SZ constant.  For instance, the device I
have been using has endpoints of size 64.  Therefore, I set the size of
ATL_BLOCK_SZ to 64.  If I do not use ping pong, I can actually set it to
128 and it will still work.  I'm not sure why the device still accepts
the data, but for some reason it does.  But if I use a size of 128 with
ping pong, nothing works.  I can actually achieve better throughput
rates without using ping pong and an ATL_BLOCK_SZ of 128, but if other
devices on the bus do not accept 128 byte packets, I would then have to
back it down to 64 and use ping pong.  Depending on your devices, you
may have to play with these settings to attain the best performance.

with CONFIG_USB_PING_PONG defined and ATL_BLOCK_SZ 64 I get

bash-2.05# time dd if=/dev/sda1 of=/tmp/dump-32MB.bin count=32 bs=1M
31+1 records in
31+1 records out

real    1m20.551s
user    0m0.010s
sys     0m2.270s

so.. a bit better! :-)

with ATL_BLOCK_SZ 128 (and CONFIG_USB_PING_PONG as you request) I have:

bash-2.05# time dd if=/dev/sda1 of=/tmp/dump-32MB.bin count=32 bs=1M
31+1 records in
31+1 records out

real    0m59.943s
user    0m0.000s
sys     0m2.220s

which is very close to the Philips one! (yours takes only 10 seconds more...)
Good work! :-)

I have also been able to fix a couple of crashes.  I have not seen a
crash all afternoon so it is definitely more stable than yesterday.
There is still a problem with removing some devices and with hub
support.  I plan on getting to these next week when I get back.  I also
see another way of getting even better performance out of the driver,
but I want to get other things working properly before I go there.

I cannot see the Keyboard kernel panic anymore, so it seems it is working quite better..
all the other problem are still there (keyboard not working, mouse stop working after a while and so on..)


Also, you have noted that you got a Memory Stick working.  What driver
did you use and what did you have to do to get it working?  It is just
another thing we would like to try out.

I'm currently using an USB 1.0 32MB Memory Stick, with the standard USB Storage device driver provided
with the 2.4.20 kernel (no changes required).


Best Regards,


Amon

DAVE Electronics System House - R&D Department
web:   http://www.dave-tech.it
email: r&[EMAIL PROTECTED]



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to