All pastes #11071 Raw Edit

OE irc logs

public text v1 · immutable
#11071 ·published 2005-05-05 22:10 UTC
rendered paste body
<RP> B0Ti: 2.6.12-rc3-mm2 is stable and you should develop against that now. 2.6.11 is bugfixes only
<RP> I sorted out the kernel size problems
<B0Ti> RP: usbcore is stable on 2.6.12 as well?
<hrw> RP: you recommend upgrade from 2.6.11 to 2.6.12-rc3-mm2?
<RP> B0Ti: I'm not sure about the status if usbcore
<B0Ti> I get a weird oops on an interrupt (insert) and I'm not sure where the problem lies. 
<B0Ti> oops: http://pastebin.ca/10926
<B0Ti> source: http://lxr.linux.no/source/drivers/usb/core/hub.c#L2079
<B0Ti> objdump: http://siliconium.net/usbcore.objdump
* B0Ti having a hard time with ARM asm
<RP> B0Ti: I'll repeat again, I really doubt usb support will work on the pxa270
<RP> B0Ti: That oops is from the SL811HD usb driver. Does spitz have one of them in it?
<B0Ti> RP: ok, so should I give up porting the CFU1 usb host card pcmcia driver?
<B0Ti> RP: that's in the ratoc rex usb cf card.
<pb_> B0Ti: isn't that driver ported already?
<pb_> I thought koen did that weeks ago.
<RP> B0Ti: That might be different then. I assumed you were trying to access the pxa's inbuilt usb functions
<B0Ti> pb_: tell me if it is ;)
<luke-jr_> hrw: hrm... I'd be willing to do a relay thing if they still had it and it was worth it for you (no idea how much shipping would be)
<RP> B0Ti: I really have no knowledge of usb cf cards though. It would assume you have a working pcmcia interface under 2.6...
<B0Ti> RP: The initial release of the sl811-hcd code had a comment that it works on pxa.
<RP> B0Ti: What did you do about scoop/pcmcia code?
<B0Ti> RP: now the pcmcia glue works ok. I can insert and remove the card. It gets detected and listed under /proc/bus/usb
<B0Ti> RP: This bug happens when I plug in an usb device into the hub.
<luke-jr_> mickeyl: hrw: so... any idea which libsigc++ glibmm *should* be depending on? :)
<RP> How does a memory card work?
<RP> B0Ti: Did you have to make many changes to get scoop/pcmcia working out of interest?
<B0Ti> RP: the pcmcia part was easy, and just needed to add a platform_device structure to pass on to the sl811-hcd driver. I also modified the sl811h a bit, pcmcia io address wasn't the same as expected for example
<RP> B0Ti: You did nothing with scoop or pxa2xx_sharpsl.c?
<B0Ti> RP: nope
<mickey|tv> luke-jr_: done
<RP> B0Ti: That sounds extemely wrong then
<B0Ti> RP: why so?
<RP> B0Ti: If you post your machine patches somewhere, I'll take a look
<luke-jr_> even CVS commits are usually immidiately available...
<RP> B0Ti: Sharp pcmcia access is done via these SCOOP chips they put in the device. If you aren't setting that up, I can't see any way it could be expected to work
<pb_> What does the scoop actually do?  Surely the pxa255 deals with about 98% of the pcmcia bus on its own.
<B0Ti> RP: the old code (for 2.4) had the io/irq detection stuff in place, and it seems to work.
<B0Ti> RP: http://siliconium.net/cfu1-driver-2.6.11-20050505.tar.gz
<B0Ti> RP: not a patch though.
<zecke> RP: in data.py you see three 'factory' methods
<pb_> B0Ti: where's it crashing?
<RP> B0Ti: I don't think you have any pcmcia/scoop interface setup so accessing a CF card is never going to work
<pb_> B0Ti: oh, right.  it looks like the sl811-hcd is forgetting to set up some data structure that the core needs.
<pb_> can you tell what line of code in hub.c it's crashing at/
<pb_> s:/:?:
<B0Ti> pb_: that's what I don't know how to do on arm.
<pb_> B0Ti: if you have a kernel with debug info, you can probably use gdb or addr2line, just like on any other platform.
<pb_> if not, you'll have to disassemble the code and match it up with the oops.
<B0Ti> pb_: I have disassembled it, but still couldn't figure out the line number yet. http://siliconium.net/usbcore.objdump
<B0Ti> pb_: I'll need to set up the kernel to use usb-serial as the console, if that's possible. I don't have a normal serial cable.
<RP> zecke: ok, thanks. I was thinking the cow patch did something a bit different from what it does :)
<pb_> B0Ti: can you do a dissassembly with relocs included (objdump -dr)?
<RP> pb_ For a start, scoop controls power to the card
<B0Ti> pb_: updated with -dr -> http://siliconium.net/usbcore.objdump
<pb_> RP: no, but I certainly haven't seen anything to suggest that it can't.
<RP> pb_: It doesn't need power then?
<pb_> RP: it does, but clearly the power is enabled since the device is being detected correctly.
<pb_> and, if it detects a hub being plugged in, the HCD itself must also be running.
<RP> pb_: There's also some interrupt control in scoop
<B0Ti> pb_: sorry I made a typo in the filename, this should be ok: http://siliconium.net/usbcore.objdump.dr
<pb_> ah, that's more like it
<B0Ti> RP: When I connect a USB device (my camera) it sees the connection, so there is power.
<B0Ti> RP: also I ported a register test routine from the old drivers, and it passes too.
<pb_> oh, heh, it looks like udev->bus->controller->driver->name is probably NULL.
<pb_> that'd be a bit dumb.
<RP> B0Ti: fair enough, if it works, go for it. I remain sceptical though ;-)
<B0Ti> pb_: thanks, I thought I did that, but that was only for the bus_name
<B0Ti> RP: if there is interrupt control in the scoop, that might pose some problems. We'll see ;)
<pb_> B0Ti: I think your irqs are probably working if it can detect peripheral in/out events.
<B0Ti> pb_: that's good to know. Can you tell me how you figured out udev->bus->controller->driver->name from the objdump?
<zecke> offroadgeek: loadkeys flip_flop_madmess?
<pb_> B0Ti: well, it was mostly a guess.  but, if you look at the code, udev arrives in r1 and then gets shuffled into r6.  then it does r2=*(r6+64); r3=*(r2); r1=*(r3+112); ip=*(r1), and the last load is the one that crashes.
<zecke> yeah so obvious
<zecke> ~hail pb_
* ibot bows down to pb_ and chants, "I'M NOT WORTHY!!"
<pb_> also, if you look at that big printk() call, the value that it was attempting to load is what it would have used as the second-to-last argument.
<B0Ti> pb_: thanx, it'll take some time till I can think in arm asm this fast, last time I coded in asm was for 286 =)
<pb_> heh
<B0Ti> java made me forget all that too :)
<B0Ti> fuck me. it works.
<B0Ti> ~hail pb_
* ibot bows down to pb_ and chants, "I'M NOT WORTHY!!"
<B0Ti> http://pastebin.ca/11067
<B0Ti> need to test transfers though.
<zecke> B0Ti: no heureka? fuck me instead? this youth...
<pb_> B0Ti: ah, very good
<B0Ti> hehe, I can plug the usb cable from the z into itself (into the usb cf card), and get a usb0 interface. This is a real loopback device!!
<pb_> hehe
<luke-jr> B0Ti: I can't even plug it from my Z into my desktop and get it to work :(