On Sun, 4 May 2014, Mark Cave-Ayland wrote:
On 03/05/14 10:56, BALATON Zoltan wrote:
On Fri, 3 May 2014, Tarl Neustaedter wrote:
I'm not volunteering to do the work (lest I hear my boss scream in agony), but I suspect this is a case that it just drops in and works. Lillian wrote it for the OneLaptop project, and I understand that implementation and OpenBios haven't diverged all that much.
Problem is I don't know where to drop it to try if it works and if it doesn't I don't know how to debug Forth so I could only shoot in the dark. I don't even know where to start with this Forth driver.
As this seems to be the preferred way I looked at it again to see if I can start trying to integrate the usb2 driver from openfirmwre but I still don't see where to start.
Sadly the PCI code in OpenBIOS is still written in C so there would be some interface work required there.
In terms of testing the code, Forth is an interpreted language so you can literally copy/paste from the source files into a serial console and see what happens ;) I suspect that the reality will be slightly different though, for example we know that OpenFirmware has behaviours which aren't implemented in OpenBIOS.
The usb driver is split into 75 *.fth files so it's not obvious what to paste in a console. Additionally there are some *.bth files that seem to build some FCode modules but these are not working on OpenBIOS as they contain words that I did not find in OpenBIOS. So I don't know how to get OpenBIOS's Forth at least try to interpret these files to see what is missing. The ohci.bth file looks like this: ---begin--- purpose: Load file for OHCI HCD command: &tokenize &this build-now silent on begin-tokenizing ohci.fc FCode-version2 " ohci" encode-string " device_type" property fload ${BP}/dev/usb2/hcd/ohci/loadpkg.fth end0 end-tokenizing ---end--- and the hcd/ohci/loadpkg.fth referenced here contains more fload commands that load the other parts. What is the equivalent in OpenBIOS's Forth to do this? Regards, BALATON Zoltan