90 lines
3.4 KiB
Text
90 lines
3.4 KiB
Text
#
|
|
# (C) COPYRIGHT 2013-2015 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.
|
|
#
|
|
#
|
|
|
|
|
|
* 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.
|
|
- snoop_enable_smc : SMC function ID to enable CCI snooping on the GPU port(s).
|
|
- snoop_disable_smc : SMC function ID to disable CCI snooping on the GPU port(s).
|
|
- 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
|
|
- voltage: Voltage at reference point. Specified in mV.
|
|
- frequency: Frequency at reference point. Specified in MHz.
|
|
- dynamic-power: Dynamic power at reference frequency and voltage. Specified in mW.
|
|
- static-power: Static power at reference frequency. Specified in mW.
|
|
- ts: An array containing coefficients for the temperature scaling factor.
|
|
Used as : tsf = ts[3]*T^3 + ts[2]*T^2 + ts[1]*T + ts[0], where T = temperature
|
|
- 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
|
|
|
|
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";
|
|
voltage = <800>;
|
|
frequency = <500>;
|
|
static-power = <500>;
|
|
dynamic-power = <1500>;
|
|
ts = <20000 2000 (-20) 2>;
|
|
thermal-zone = "gpu";
|
|
};
|
|
};
|