97 lines
3.9 KiB
Plaintext
97 lines
3.9 KiB
Plaintext
#
|
|
# (C) COPYRIGHT 2013-2017 ARM Limited. All rights reserved.
|
|
#
|
|
# This program is free software and is provided to you under the terms of the
|
|
# GNU General Public License version 2 as published by the Free Software
|
|
# Foundation, and any use by you of this program is subject to the terms
|
|
# of such GNU licence.
|
|
#
|
|
# A copy of the licence is included with the program, and can also be obtained
|
|
# from Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
|
# Boston, MA 02110-1301, USA.
|
|
#
|
|
#
|
|
|
|
|
|
* ARM Mali Midgard devices
|
|
|
|
|
|
Required properties:
|
|
|
|
- compatible : Should be mali<chip>, replacing digits with x from the back,
|
|
until malit<Major>xx, ending with arm,mali-midgard, the latter not optional.
|
|
- reg : Physical base address of the device and length of the register area.
|
|
- interrupts : Contains the three IRQ lines required by T-6xx devices
|
|
- interrupt-names : Contains the names of IRQ resources in the order they were
|
|
provided in the interrupts property. Must contain: "JOB, "MMU", "GPU".
|
|
|
|
Optional:
|
|
|
|
- clocks : Phandle to clock for the Mali T-6xx device.
|
|
- clock-names : Shall be "clk_mali".
|
|
- mali-supply : Phandle to regulator for the Mali device. Refer to
|
|
Documentation/devicetree/bindings/regulator/regulator.txt for details.
|
|
- operating-points : Refer to Documentation/devicetree/bindings/power/opp.txt
|
|
for details.
|
|
- jm_config : For T860/T880. Sets job manager configuration. An array containing:
|
|
- 1 to override the TIMESTAMP value, 0 otherwise.
|
|
- 1 to override clock gate, forcing them to be always on, 0 otherwise.
|
|
- 1 to enable job throttle, limiting the number of cores that can be started
|
|
simultaneously, 0 otherwise.
|
|
- Value between 0 and 63 (including). If job throttle is enabled, this is one
|
|
less than the number of cores that can be started simultaneously.
|
|
- power_model : Sets power model parameters. Note that this model was designed for the Juno
|
|
platform, and may not be suitable for other platforms. A structure containing :
|
|
- compatible: Should be arm,mali-simple-power-model
|
|
- dynamic-coefficient: Coefficient, in pW/(Hz V^2), which is multiplied
|
|
by v^2*f to calculate the dynamic power consumption.
|
|
- static-coefficient: Coefficient, in uW/V^3, which is multiplied by
|
|
v^3 to calculate the static power consumption.
|
|
- ts: An array containing coefficients for the temperature scaling
|
|
factor. This is used to scale the static power by a factor of
|
|
tsf/1000000, where tsf = ts[3]*T^3 + ts[2]*T^2 + ts[1]*T + ts[0],
|
|
and T = temperature in degrees.
|
|
- thermal-zone: A string identifying the thermal zone used for the GPU
|
|
- system-coherency : Sets the coherency protocol to be used for coherent
|
|
accesses made from the GPU.
|
|
If not set then no coherency is used.
|
|
- 0 : ACE-Lite
|
|
- 1 : ACE
|
|
- 31 : No coherency
|
|
- ipa-model : Sets the IPA model to be used for power management. GPU probe will fail if the
|
|
model is not found in the registered models list. If no model is specified here,
|
|
a gpu-id based model is picked if available, otherwise the default model is used.
|
|
- mali-simple-power-model: Default model used on mali
|
|
- protected-mode-switcher : Phandle to device implemented protected mode switching functionality.
|
|
Refer to Documentation/devicetree/bindings/arm/smc-protected-mode-switcher.txt for one implementation.
|
|
|
|
Example for a Mali-T602:
|
|
|
|
gpu@0xfc010000 {
|
|
compatible = "arm,malit602", "arm,malit60x", "arm,malit6xx", "arm,mali-midgard";
|
|
reg = <0xfc010000 0x4000>;
|
|
interrupts = <0 36 4>, <0 37 4>, <0 38 4>;
|
|
interrupt-names = "JOB", "MMU", "GPU";
|
|
|
|
clocks = <&pclk_mali>;
|
|
clock-names = "clk_mali";
|
|
mali-supply = <&vdd_mali>;
|
|
operating-points = <
|
|
/* KHz uV */
|
|
533000 1250000,
|
|
450000 1150000,
|
|
400000 1125000,
|
|
350000 1075000,
|
|
266000 1025000,
|
|
160000 925000,
|
|
100000 912500,
|
|
>;
|
|
power_model {
|
|
compatible = "arm,mali-simple-power-model";
|
|
static-coefficient = <2427750>;
|
|
dynamic-coefficient = <4687>;
|
|
ts = <20000 2000 (-20) 2>;
|
|
thermal-zone = "gpu";
|
|
};
|
|
};
|