[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