Myles,
I think that this is going to right direction. There are a couple things that I don't understand.
Why is there a w83627hf_pnp_ops and w83627hf_ops? Can they be combined?
And this is why there are two dts files, pnp.dts and dts?
I don't think each device should have io, io1, io2, etc. They only need whatever is required to fill the entry in pnp_dev_info[].
And so there isn't a stock pnp dts entry. Each should be specific for the device (kbc, uart, etc) but generic names.
Thanks for the clarification.
Marc -- http://marcjstuff.blogspot.com/
________________________________ From: Myles Watson mylesgw@gmail.com To: ron minnich rminnich@gmail.com Cc: Coreboot coreboot@coreboot.org Sent: Thursday, November 13, 2008 10:29:08 AM Subject: Re: [coreboot] Resource allocation
On Thu, Nov 13, 2008 at 8:58 AM, ron minnich rminnich@gmail.com wrote:
On Thu, Nov 13, 2008 at 6:03 AM, Myles Watson mylesgw@gmail.com wrote:
That makes it clear which devices get created (all the ones mentioned in the dts.) Then the SIO code can take care of special cases like devices that need to be set even when they're disabled.
yes, but this is *exactly* the model that people are objecting to in the other thread. We kind of need to make up our mind here.
How about we get something working, then improve on it. Here's my latest try.
While I'm wishing I'd like to use pnp@W83627HF_KBC instead of pnp@5 and have that just work. I think it might not be too hard, but it's a syntax error now. It would definitely reduce the chance for mistakes.
I would rather not do this.
OK. It's bitten me once, but I'll be more careful.
That's right. The problem is that there needs to be some generic way to pass this information to the resource code.
This is actually not even v2, it's v1. It did not work because you have resources in that struct that don't exist on many devices, and there are always new devices with new resource types that break the model.
Right now it allocates a new device for each of the SuperIO PNP functions, so there are dynamic devices for all of them. I think that there should only be dynamic devices for things that get plugged in.
I am still not convinced this really matters.
I'm attaching two logs. One is without the attached patch, the other with. It fixes resource allocation and makes the logs much cleaner, but it doesn't make the box work correctly. It's just hard to debug too many things at once. I'd like to get the SuperIO working, then resource allocation, then VGA if its still broken, then HT ...
The patch won't apply for you because it depends on other code in the tree. There's just too much to send now, and I haven't gotten organized enough to use Jordan's script yet.
Signed-off-by: Myles Watson mylesgw@gmail.com
Thanks, Myles