On Fri, Jan 31, 2020 at 08:08:09AM -0800, Doug Anderson wrote:
Hi,
On Fri, Jan 31, 2020 at 4:16 AM smasetty@codeaurora.org wrote:
reg = <0 0x0506a000 0 0x31000>, <0 0x0b290000
0 0x10000>,
<0 0x0b490000 0 0x10000>;
reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
interrupts = <GIC_SPI 304
IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "hfi", "gmu";
clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
<&gpucc GPU_CC_CXO_CLK>,
<&gcc GCC_DDRSS_GPU_AXI_CLK>,
<&gcc GCC_GPU_MEMNOC_GFX_CLK>;
clock-names = "gmu", "cxo", "axi", "memnoc";
power-domains = <&gpucc CX_GDSC>;
Bindings claim that you need both CX and GC. Is sc7180 somehow different? Bindings also claim that you should be providing power-domain-names.
No this is still needed, We need the GX power domain for GPU recovery use cases where the shutdown was not successful.
This almost sounds as if the bindings should mark the GX power domain as optional? The driver can function without it but doesn't get all the features? As the binding is written right now I think it is "invalid" to not specify a a GX power domain and once the yaml conversion is done then it will even be flagged as an error. That's going to make it harder to land the your patch...
For GMU attached targets the GX power domain is mandatory assuming you want to recover successfully from a hard GMU hang, that is.
Jordan