| /* |
| * Copyright (C) 2014, 2016 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-300/400/450 GPU |
| |
| Required properties: |
| - compatible: |
| At least one of these: "arm,mali-300", "arm,mali-400", "arm,mali-450" |
| Always: "arm,mali-utgard" |
| Mali-450 can also include "arm,mali-400" as it is compatible. |
| - "arm,mali-400", "arm,mali-utgard" for any Mali-400 GPU. |
| - "arm,mali-450", "arm,mali-400", "arm,mali-utgard" for any Mali-450 GPU. |
| - reg: |
| Physical base address and length of the GPU's registers. |
| - interrupts: |
| - List of all Mali interrupts. |
| - This list must match the number of and the order of entries in |
| interrupt-names. |
| - interrupt-names: |
| - IRQPP<X> - Name for PP interrupts. |
| - IRQPPMMU<X> - Name for interrupts from the PP MMU. |
| - IRQPP - Name for the PP broadcast interrupt (Mali-450 only). |
| - IRQGP - Name for the GP interrupt. |
| - IRQGPMMU - Name for the interrupt from the GP MMU. |
| - IRQPMU - Name for the PMU interrupt (If pmu is implemented in HW, it must be contained). |
| |
| Optional properties: |
| - pmu_domain_config: |
| - If the Mali internal PMU is present and the PMU IRQ is specified in |
| interrupt/interrupt-names ("IRQPMU").This contains the mapping of |
| Mali HW units to the PMU power domain. |
| -Mali Dynamic power domain configuration in sequence from 0-11, like: |
| <GP PP0 PP1 PP2 PP3 PP4 PP5 PP6 PP7 L2$0 L2$1 L2$2>. |
| - pmu-switch-delay: |
| - Only needed if the power gates are connected to the PMU in a high fanout |
| network. This value is the number of Mali clock cycles it takes to |
| enable the power gates and turn on the power mesh. This value will |
| have no effect if a daisy chain implementation is used. |
| |
| Platform related properties: |
| - clocks: Phandle to clock for Mali utgard device. |
| - clock-names: the corresponding names of clock in clocks property. |
| - regulator: Phandle to regulator which is power supplier of mali device. |
| |
| Example for a Mali400_MP1_PMU device: |
| |
| / { |
| ... |
| |
| gpu@12300000 { |
| compatible = "arm,mali-400", "arm,mali-utgard"; |
| reg = <0x12300000 0x30000>; |
| interrupts = <0 55 4>, <0 56 4>, <0 57 4>, <0 58 4>, <0 59 4>; |
| interrupt-names = "IRQGP", "IRQGPMMU", "IRQPP0", "IRQPPMMU0", "IRQPMU"; |
| |
| pmu_domain_config = <0x1 0x4 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x2 0x0 0x0>; |
| pmu_switch_delay = <0xff>; |
| clocks = <clock 122>, <clock 123>; |
| clock-names = "mali_parent", "mali"; |
| vdd_g3d-supply = <regulator_Phandle>; |
| }; |
| } |