Hi Jason
On Thu, May 7, 2009 at 11:34 AM, Jason Wang wangqingpei@gmail.com wrote:
Hi all,
On Wed, May 6, 2009 at 10:05 PM, Leandro Dorileo ldorileo@gmail.com wrote:
Hi Guys
I was talking to Jason and we found we need to draw a bit better the API and responsibilities between us. I figure out I`m going to support hardware detection and initialization, and a framework to read and write blocks from MSC devices.
i also want to know how can i support the api functions with option rom. I have a little doubt that the hardware detection and initialization can be done with out optionrom which in my eyes should be done within optionrom.
AFAICS the libpayload will supply the option ROM with a common API that knows how to detect the Host Controller Interfaces, the functions/hubs plugged in and so on. The option ROM should organize the execution path using the libpayload usb stack.
That`s what I understand, and it`s how I`ve designed things to work, I may be wrong of course. ;-)
Looking the current libpayload`s source code I found UHCI is pretty complete and meets the requirements I mentioned above. So, the focus should be put on EHCI and OHCI. Of course bug fixing what becomes needed as well.
Again looking in the source code, I found abstractions that will ease the process of coupling the other host controller interface drivers, I don`t have many questions regarding the internal design and API of libpayload(by now at least) but how Jason is going to integrate and use libpayload usb stack.
To test and improve my understanding I put together[1] some code from FILO, libpayload and a stub option ROM, just to see how it`s supposed to be integrate(PS: this option ROM is a work in progress and will be used just for testing the usb implementations I`m going to do, and it`s not functional yet).
For now, I have two major questions, #1: I`ve seen other projects like FILO including libpayload with svn:external, once seabios is maintained with git, how it should be done with seabios? how would we manage the source code integration and maintainability between seabios and libpayload?.
that's also what i am thinking about, mabe we can put the optionrom in coreboot, just let the seabios to load the optionrom .
I hadn`t thought that but I think there`s no technical limitations for that. Very well thought any way. ;-)
#2: libpayload uses kbuild/kconfig but seabios doesn`t, what would be the best approach to integrate their build system? (PS: Sorry, it wasn`t two questions, but many questions and two areas. ;-) )
A third questions would be, how people test the libpayload stuffs? do they write small payloads for that? is that feasible writing an option ROM for testing the libpayload`s usb stack?
A last question. Should I CC the mentors and people I judge interested? or, is coreboot@coreboot.org good enough? ;-)
Regards..