On Tue, Mar 05, 2024 at 10:27:35PM +0530, Sriram Dash wrote: > Some target systems allow multiple resources to be managed by firmware. > On these targets, tasks related to clocks, regulators, resets, and > interconnects can be delegated to the firmware, while the remaining > responsibilities are handled by Linux. > > To support the management of partial resources in Linux and leave the rest > to firmware, multiple power domains are introduced. Each power domain can > manage one or more resources, depending on the specific use case. > Currently it is just 2 IIUC. Better to be specific with more details and point to the exact binding. > These power domains handle SCMI calls to the firmware, enabling the > activation and deactivation of firmware-managed resources. > > The driver is responsible for managing multiple power domains and > linking them to consumers as needed. Incase there is only single > power domain, it is considered to be a standard GDSC hooked on to > the qcom dt node which is read and assigned to device structure > (by genpd framework) before the driver probe even begins. > > fw-managed dt property allows the driver to determine whether > device resources are managed by Linux or firmware, ensuring > backward compatibility. > And provide the reason why this additional property is a must ? Why can't the implementation deal with absence of it on these systems ? Not sure if you have seen/followed this[1] discussion before, but please do now if not already and contribute. It is definitely related to this patch set and all possible very similar patch sets Qcom might have in the future across various subsystems in the Linux kernel. In general, Qcom must stop pushing such changes to individual drivers in isolation and confuse the reviewers to some extent without giving the complete view(or rather providing partial view) which may result in them agreeing with proposed solution without considering the overall impact on various subsystems and DT bindings. -- Regards, Sudeep [1] https://lore.kernel.org/all/be31801e-bb21-426b-f7aa-2b52727de646@xxxxxxxxxxx/