USB2.0 support for MorphOS
  • Order of the Butterfly
    Order of the Butterfly
    Posts: 154 from 2003/4/22
    Quote:


    ArakAttack was never ment to run on PPC system, because it's highly optimized to get maximum performance from 68K base systems. This is because USB need much CPU power, because the controllers are very stupid.



    Humm, I can't see any need to write the driver is 68k asm if it's what you mean.

    A clean C implementation could have been recompiled easily for MorphOS. (And maybe Amithlon x86 ???).
    Native PowerPC C is faster than emulated 68k asm.

    In my mind, wait for a Poseidon/MorphOS update in order to get better USB 2.0 support.

    Bye


    [ Edited by NicoPPC on 2005/5/10 16:19 ]

    [ Edited by NicoPPC on 2005/5/10 16:21 ]
    MorphOS Rulez !
  • »10.05.05 - 22:18
    Profile Visit Website
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    @Schlonz

    >>Use it to search for 202c 000c 0300 and replace it by 202c ffff ffff.
    >>Are you sure? I could not find that string, but there was 203c 000c 0300. Did you mean this?
    My fault. Of course it's 203c. My Fault. I also provide a patched version on my homepage.

    Please consult the readme for any further questions. I don't garantee it's working.

    http://www.geit.de/stupid/OpenUSB.lha
  • »10.05.05 - 22:29
    Profile
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    @NicoPPC

    For USB you need massiv endian swaps and little endian linked listest, which must be set up by the CPU. It's consuming much CPU load, even in the optimized version. Regarding having a 030 CPU this is relevant.

    Geit
  • »10.05.05 - 22:32
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    magnetic
    Posts: 2129 from 2003/3/1
    From: Los Angeles
    Geit

    Thx alot for the advice...


    Also, I love the

    blah/stupid/blah

    :-D

    magnetic
    Pegasos 2 Rev 2B3 w/ Freescale 7447 "G4" @ 1ghz / 1gb Nanya Ram
    Quad Boot: MorphOS 2.7 | Amiga OS4.1 U4 | Ubuntu PPC GNU/Linux | OS X 10.4
  • »11.05.05 - 06:14
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    GK_LKA
    Posts: 481 from 2004/3/28
    From: Hungary
    I coludn't get it working at all. Which chipsets does it support? I have a VIA PCI USB2.0 card (don't know it's number, but it is working with MOS in 1.1 mode).

    I installed the device, added to poseidon, but it didn't go online. (It says:
    openusb.png
    )

    What is wrong?
    [ GK / LKA Team ]
  • »11.05.05 - 10:14
    Profile Visit Website
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    @Schlonz

    Use Unit 0! Since your card is UHCI there is no other unit than EHCI.

    Geit
  • »11.05.05 - 12:20
    Profile
  • Paladin of the Pegasos
    Paladin of the Pegasos
    ThePlayer
    Posts: 1068 from 2003/3/24
    From: Hamburg/Germany
    Does it work now? And if yes what is the speed?
    PowerMac G5 Quad 2.5 running UWQHD Resolution
  • »11.05.05 - 14:19
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    Neko
    Posts: 301 from 2003/2/24
    From: Genesi
    Geit,

    Why does the byteswapping requirement somehow make coding in C so much difficult? If it is 68k asm for the byteswapping routines I can understand, but remember PowerPC has a set of instructions for loading and storing with an implicit byteswap - there should be some fairly simple replacements for your heavy 68k asm.

    The entire driver can't be one great big byteswapping routine. What is your benefit for coding in 68k asm otherwise? Did you also think that an x86-native driver under Amithlon would have worked better too (x86 has the same kind of byteswap routines.. I don't know how Amithlon presents the data though..)

    Neko
    Matt Sealey, Genesi USA, Inc.
    Developer Relations
    Product Development Analyst
  • »11.05.05 - 18:08
    Profile Visit Website
  • Paladin of the Pegasos
    Paladin of the Pegasos
    ThePlayer
    Posts: 1068 from 2003/3/24
    From: Hamburg/Germany
    I bought a USB 2.0 Card with the Via VT6212L Chip but i can't boot into MOS when the Card is pluged in. I got MOS1.4.5 installed and Poseidon V2.0 installed.
    PowerMac G5 Quad 2.5 running UWQHD Resolution
  • »11.05.05 - 18:52
    Profile
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    >Why does the byteswapping requirement somehow make coding in C so much difficult?
    Where did I say that?

    My driver was ment to run on 68K Systems. Point.

    Making it in C would cause a speed drop by around 20%, depending on the used CPU. The available USB controller are crap. They need more CPU load, than you are expecting. I would never ever use a mouse or keyboard via USB. The cpu load required to setup and parse the stuff is huge. I guess you should take a look into the ?HCI manuals for details on the stuff.

    Geit
  • »11.05.05 - 19:41
    Profile
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    Posts: 979 from 2003/6/28
    Maybe is needed a C version with PowerPC assembly optimizations for those non-68k systems?

    Or if you can do it, a fully PowerPC assembly version ;-)
  • »11.05.05 - 21:28
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    Schlonz
    Posts: 131 from 2004/4/16
    From: Langen, Germany
    @Geit:

    Thanks, using Unit 0 did work. Well, kind of. Poseidon went online telling me that OpenUSB.device unit 0 is an EHCI controller, but no USB devices (I tried a scanner, an USB stick and a Hub) were recognized - inserting USB devices into the USB controller card just did no result, just like no USB device were inserted.

    Could you imagine if an OHCI/EHCI controller card works better or would there be no difference?
  • »21.05.05 - 01:11
    Profile
  • rms
  • Priest of the Order of the Butterfly
    Priest of the Order of the Butterfly
    rms
    Posts: 599 from 2004/11/27
    @ Schlonz and all

    A bit offtopic but...

    I have the problem, that an USB stick does not mount twice! I explain: I insert the stick, it mounts, I copy something do it, take it out.
    Without a reset of the Peg in between, if I use the USB stick again it does not mount anymore.

    Is this due to the Peg's controller?, is an external controller better?
  • »21.05.05 - 06:30
    Profile Visit Website
  • Caterpillar
    Caterpillar
    amigafil
    Posts: 23 from 2003/9/6
    @ms

    i have the same probleme with my camera olympus c460.
    Powerbook and Pegasos II G4 MOS 3.7 :-)
  • »21.05.05 - 13:22
    Profile
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    We worked all night on our LAN party to find the problem.

    It seems the EHCI controller is positioned missaligned into the address space, which causes the card not to be working. So currently no chance!

    Geit
  • »22.05.05 - 14:30
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    Schlonz
    Posts: 131 from 2004/4/16
    From: Langen, Germany
    Hi Geit,

    thanks for trying to find the problem.

    Do you know if this missaligne-problem is caused by MorphOS or by OpenPCI?
  • »22.05.05 - 20:48
    Profile
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    >Do you know if this missaligne-problem is caused by MorphOS or by OpenPCI?
    No! Regarding to the base registers the card is at the right position, but when checking the cards position by locating specific register fields it's not.

    The same card within Amithlon shows the card at the right position and the registers are where they should be.

    It's very strange. Thanks to Axel Knabe I now have an USB 2.0 card in the Peg, so I can do more testing.

    Guido Mersmann
  • »23.05.05 - 23:25
    Profile
  • Acolyte of the Butterfly
    Acolyte of the Butterfly
    Schlonz
    Posts: 131 from 2004/4/16
    From: Langen, Germany
    >Thanks to Axel Knabe I now have an USB 2.0 card
    >in the Peg, so I can do more testing.

    Glad to hear that.

    Please continue your great work.
  • »24.05.05 - 00:01
    Profile
  • Yokemate of Keyboards
    Yokemate of Keyboards
    magnetic
    Posts: 2129 from 2003/3/1
    From: Los Angeles
    Geit

    Alright! You are a valued dev in our community. Thank you, many appreciate your work.

    magnetic


    :-D
    Pegasos 2 Rev 2B3 w/ Freescale 7447 "G4" @ 1ghz / 1gb Nanya Ram
    Quad Boot: MorphOS 2.7 | Amiga OS4.1 U4 | Ubuntu PPC GNU/Linux | OS X 10.4
  • »24.05.05 - 02:49
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    Raf_MegaByte
    Posts: 430 from 2004/10/10
    From: Nella grande r...
    @ GK_LKA

    >Good morning, it is 2005, and an average photo size on my digital camera is 2MB.
    >I want to watch films with my PDA (= I have to copy lots of MB's over USB).
    >Copying films and photos take much time...
    >I have a 2.0 USB PCI card for over 3 months...
    >I'm very tired, that these simple operations are so slow...

    @ Schlonz

    >Sorry, but this is not true... Guido Mersmann,
    >Author of ArakAttack, told me that it runs at
    >about 6 MB / sec on his Amithlon system.
    >
    >And Spider does provide about 3 MB/sec.
    >But will the Spider work with Pegasos? I dont know...
    [...]
    >Yes, but right now I will only get USB 1.1 speed with that cheap card,
    >and me and a lot of other people want USB 2.0 speed in the Peggy.

    @ NicoPPC

    >By the way, believe it or not but my brother's XP box does not support USB 2.0 high speed
    >;-P

    @ SoundSquare

    >XP supports USB2 with SP1
    >maybe ur bro doesn't even have some USB2 hardware...?


    I want to remember you all (as SoundSquare said about Brother Printer) that if you connect USB1.x (old) hardware to USB 2.0 port, then that port degrades its transfer-rate capabilities to fit 1.x specifications.

    This fact could explain some low-speed problems you encounterd.


    Although now here follows a question risen in my mind:

    "Is USB 2.0 so intelligent to degrade to USB1.x specs ONLY THAT PORT connected to "old" hardware???"


    Or maybe

    "ALL 2.0 system degrades itself to 1.x specs in that situation?"

    If the answer is:
    "it degrades only the port connected to 1.x hardware" then you all just need to connect your new 2.0 Hardware to those USB ports you leave free from 1.x hardware.

    If the answer is:
    "It degraded it all", then USB 2.0 is not so robust as I previously believe, and you could do nothing.
    Bill Gates "Think!", Steve Jobs: "Think different!" So... Let these guy continue blabbering thinking and enjoy computing! We are on Amiga!
  • »24.05.05 - 05:40
    Profile
  • MorphOS Developer
    geit
    Posts: 1031 from 2004/9/23
    >USB 2.0 so intelligent to degrade to USB1.x specs ONLY THAT PORT connected to "old" hardware???"

    On USB2.0 cards/board each USB connector is connected to an UHCI/OHCI and an EHCI by a switch. If you plug in a USB1.1 device EHCI (USB2.0) simply turns the switch and the UHCI/OHCI controller is taking over (owning) this port until the user unplugs the device again.

    Guido Mersmann
  • »24.05.05 - 19:16
    Profile