[Skiboot] [PATCH 1/2] mowgli: Limit slot1 to Gen3 by default

Vasant Hegde hegdevasant at linux.vnet.ibm.com
Wed Dec 2 18:03:55 AEDT 2020


On 11/9/20 10:06 PM, Frederic Barrat wrote:
> 
> 
> On 30/10/2020 03:22, Lulu Su wrote:
>> From: LuluTHSu<Lulu_Su at wistron.com>
>>
>> Refer to the spec. of mowgli, limit the slot to Gen3 speed.
>> For mowgli platform spec.
>>
>> Cc:skiboot-stable at lists.ozlabs.org
>> Signed-off-by: LuluTHSu<Lulu_Su at wistron.com>
>> ---
>>   hw/phb4.c                 | 21 +++++++++++++++++++++
>>   include/phb4.h            |  1 +
>>   platforms/astbmc/mowgli.c | 16 ++++++++++++++++
>>   3 files changed, 38 insertions(+)
>>
>> diff --git a/hw/phb4.c b/hw/phb4.c
>> index 17a233f..de10bb0 100644
>> --- a/hw/phb4.c
>> +++ b/hw/phb4.c
>> @@ -2991,6 +2991,27 @@ static unsigned int phb4_get_max_link_speed(struct phb4 
>> *p, struct dt_node *np)
>>       return max_link_speed;
>>   }
>> +/*
>> + * Has the same effect as the ibm,max-link-speed property.
>> + * i.e. sets the default link speed, while allowing NVRAM
>> + * overrides, etc to still take effect.
>> + */
>> +void phb4_set_dt_max_link_speed(struct phb4 *p, int new_max)
>> +{
>> +    uint64_t scr;
>> +    int max;
>> +
>> +    /* take into account nvram settings, etc */
>> +    if (pcie_max_link_speed)
>> +        max = pcie_max_link_speed;
>> +    else
>> +        max = new_max;
>> +
>> +    scr = phb4_read_reg(p, PHB_PCIE_SCR);
>> +    scr = SETFIELD(PHB_PCIE_SCR_MAXLINKSPEED, scr, max);
>> +    phb4_write_reg(p, PHB_PCIE_SCR, scr);
>> +}
>> +
> 
> 
> This patch has already been merged, but I think there's a problem here. This 
> should work to limit the link speed at boot, when the link is trained for the 
> first time. However, since we're writing directly in the register, skiboot won't 
> memorize the limit and on the next link reset/retrain (due to a EEH recovery or 
> PCI hotplug for example), then that is lost. And mowgli_setup_phb() won't be 
> called either on that path.


Lulu,

Can you guys fix this issue?

-Vasant


More information about the Skiboot mailing list