• Sudeep Holla's avatar
    dt-bindings: dvfs: Add support for generic performance domains · 88bf5a85
    Sudeep Holla authored
    The CLKSCREW attack [0] exposed security vulnerabilities in energy management
    implementations where untrusted software had direct access to clock and
    voltage hardware controls. In this attack, the malicious software was able to
    place the platform into unsafe overclocked or undervolted configurations. Such
    configurations then enabled the injection of predictable faults to reveal
    secrets.
    
    Many Arm-based systems used to or still use voltage regulator and clock
    frameworks in the kernel. These frameworks allow callers to independently
    manipulate frequency and voltage settings. Such implementations can render
    systems susceptible to this form of attack.
    
    Attacks such as CLKSCREW are now being mitigated by not having direct and
    independent control of clock and voltage in the kernel and moving that
    control to a trusted entity, such as the SCP firmware or secure world
    firmware/software which are to perform sanity checking on the requested
    performance levels, thereby preventing any attempted malicious programming.
    
    With the advent of such an abstraction, there is a need to replace the
    generic clock and regulator bindings used by such devices with a generic
    performance domains bindings.
    
    [0] https://www.usenix.org/conference/usenixsecurity17/technical-sessions/presentation/tang
    
    Cc: Rob Herring <robh+dt@kernel.org>
    Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
    Signed-off-by: default avatarSudeep Holla <sudeep.holla@arm.com>
    Reviewed-by: default avatarRob Herring <robh@kernel.org>
    Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
    88bf5a85
cpus.yaml 14.3 KB