[coreboot] v3 HT

Marc Jones Marc.Jones at amd.com
Mon Oct 27 22:25:51 CET 2008

Myles Watson wrote:
>> -----Original Message-----
>> From: Marc Jones [mailto:Marc.Jones at amd.com]
>> Sent: Monday, October 27, 2008 3:10 PM
>> To: Myles Watson
>> Cc: 'ron minnich'; 'Coreboot'
>> Subject: Re: [coreboot] v3 HT
>> Myles Watson wrote:
>>>> -----Original Message-----
>>>> From: ron minnich [mailto:rminnich at gmail.com]
>>>> Sent: Monday, October 27, 2008 8:57 AM
>>>> To: Myles Watson
>>>> Cc: Coreboot
>>>> Subject: Re: [coreboot] v3 HT
>>>> On Mon, Oct 27, 2008 at 7:48 AM, Myles Watson <mylesgw at gmail.com>
>> wrote:
>>>>> I don't think we need to expand the dts to fix this, we just need to
>>>> make
>>>>> the code match the structure.
>>>> Do you have a rough idea of how this would look in the code? This is a
>>>> good catch.
>>> Right now the code goes through the list of children and initializes
>> them as
>>> bridges, without checking to see that they are.  Then it enumerates them
>>> with the pci code.
>>> I think we'd have to find the children that are bridges and then
>> enumerate
>>> them with the list of children, so that we can pass parameters
>> correctly.  I
>>> don't think it would be too hard.
>>> 1. Find bridges and set them to not decode
>>> 2. Set first bridge to decode all device numbers (HT Unit IDs)
>>> 3. Do PCI scan on bridge with remaining non-bridge children
>>> 4. Find next bridge
>>> 5. Set to decode next device numbers
>>> 6. Goto 3
>> I think that the dts is can/should to handle arbitrary bus numbering
>> (since a bridge can be plugged into any slot making everything change).
>> The numbers are not so important if as long as the tree has the same
>> connections (bridgeA has device 1, 2, 3 and bridgeB has x, y, z).
>> I don't think that you need a bridge scan before the device scan. It can
>> be done as one. The device tree just needs to note the appropriate
>> decode (bus number) for the bridge and the devices under it. Also, If
>> the bus is already numbered we we shouldn't change it. Just use what is
>> set.
> So the collapse existing enumeration needs to be taken out?

I didn't know that there was a collapse. That might not be good since a 
bridge could be "hard coded" to a location. That is ok if bus numbers 
are arbitrary. It they get colapsed that would be bad. I need to go 
understand this part of the dts/scan more.


Marc Jones
Senior Firmware Engineer
(970) 226-9684 Office
mailto:Marc.Jones at amd.com

More information about the coreboot mailing list