On Mon, 2023-09-11 at 18:47 +0300, Ilpo Järvinen wrote: > + thermal people. > > ... > Hi, > > Okay, thanks for the clarification. So the point is to plan for > adding > support for Link Width later and currently only support throttling > Link > Speed. In any case, the Link Width control seems to be controlled > using > a different approach (Link Width change does not require Link > Retraining). > > I don't know either how such 2 dimensioned throttling (Link Speed and > Link Width) is supposed to be realized using the thermal/cooling > device > interface which only provides a single integer as the current state. > That > is, whether to provide a single cooling device (with a single integer > exposed to userspace) or separate cooling device for each dimension? > > Perhaps thermal people could provide some insight on this? Is there > some > precedent I could take look at? Yes. The processor cooling device does similar. 1-3 are reserved for P- state and and 4-7 for T-states. But I don't suggest using such method. This causes confusion and difficult to change. For example if we increase range of P-state control, then there is no way to know what is the start point of T- states. It is best to create to separate cooling devices for BW and link width. Also there is a requirement that anything you add to thermal sysfs, it should have some purpose for thermal control. I hope Link width control is targeted to similar use case BW control. Thanks, Srinivas >