On 10/23/25 10:27 AM, Neil Armstrong wrote: > On 10/22/25 19:09, Konrad Dybcio wrote: >> On 10/22/25 2:44 PM, Neil Armstrong wrote: >>> Due to the sync_state is enabled by default in pmdomain & CCF since v6.17, >>> the GCC and GPUCC sync_state would stay pending, leaving the resources in >>> full performance: >>> gcc-x1e80100 100000.clock-controller: sync_state() pending due to >>> 3d6a000.gmu >>> gpucc-x1e80100 3d90000.clock-controller: sync_state() pending due to >>> 3d6a000.gmu >> >> Does this *actually* cause any harm, by the way? > > ? > >> >> For example on x1e, GMU refers to 2 GPU_CC GDSCs, GPU_CC refers >> to a pair of GCC clocks and GCC refers to VDD_CX >> >> and I see these prints, yet: >> >> /sys/kernel/debug/pm_genpd/gpu_cx_gdsc/current_state:off-0 >> /sys/kernel/debug/pm_genpd/gpu_gx_gdsc/current_state:off-0 >> >> /sys/kernel/debug/pm_genpd/cx/current_state:on >> /sys/kernel/debug/pm_genpd/cx/perf_state:256 # because of USB3 votes >> >> I'm not super sure where that sync_state comes from either (maybe >> dev_set_drv_sync_state in pmdomain/core?) > > The way we handle the GMU so far is wrong, it abuses the driver model. > > And this is a symptom, whatever the impact it has, it needs to be fixed > in a proper way. > > The sync_state is retained because the gmu device is never probed but > has some clocks and power domains attached to it, which is clearly wrong.
Yes I agree, however I'm only debating the commit message claims of 'leaving the resources in full performance', which doesn't seem to be true Konrad
