[coreboot] patch: stage 2 ide device for mcp55
ron minnich
rminnich at gmail.com
Tue Aug 12 05:59:25 CEST 2008
On Mon, Aug 11, 2008 at 6:36 PM, Carl-Daniel Hailfinger
> We have a generic subsystem ID infrastructure in v3. Look at
> pci_dev_enable_resources().
True. I left it there by mistake :-)
>
>> propagation of subsystem stuff can be done by the dtc, AFAICS. We do
>> this:
>> 1. add subsystem info to dts and device struct
>>
>
> We only have per-mainboard subsystem info in the dts. We need to add
> per-device subsystem info to the dts.
it's easy. Add two properties, and if they are set, then put then in
the device, and if they are not, leave them 0.
>
>> 2. allow users to specify subsystem to any node in the dts. All nodes
>> under that
>> node will inherit that id unless they similarly set it.
>>
>
> Not yet done.
good point.
>
>> 3. at the root, we set subsystem to (I assume) mainboard VID and DID
>>
>
> We set a special variable mainboard_subsystem_vendor and ..._id as part
> of the mainboard struct.
yep, I'm counting on that. See, most fo the work is already done :-)
>
>> 4. at flatten tree time, we walk the tree and propagate subsystem VID
>> and DID to
>> children. This ensures that all devices have it at compile time
>>
>
> Not yet.
but we could, right? Then we'd have it at compile time and when we
visualize the tree. That would be cool!
> We do that in pci_dev_enable_resources().
good point.
I would much rather do this in dtc, but I'm not that worried about it,
but how about we drop the pci_ops and just put the setting of
subsystem ops into the generic device. It's too much messing around to
all this pci_ops stuff for one simple operation.
ron
More information about the coreboot
mailing list