
19 Jan
2022
19 Jan
'22
2:47 p.m.
Trivial English correction.
On Wed, Jan 19, 2022 at 6:04 AM Michal Simek michal.simek@xilinx.com wrote:
Driver should be enabled by CONFIG_POWER_DOMAIN=y and CONFIG_ZYNQMP_POWER_DOMAIN=y. Power domain driver doesn't have own DT node but it uses zynqmp firmware DT node that's why there is a need to bind driver when firmware node is found.
Driver itself is simple. It is sending pmufw config object overlay for enabling access to device which is done in ...domain_request(). In ...domain_on() capabilities are passed and node is requested. This should be bare minimum of required to get power domain driver working.
Signed-off-by: Michal Simek michal.simek@xilinx.com
[snip]
+static int zynqmp_firmware_bind(struct udevice *dev) +{
int ret;
struct udevice *child;
if (IS_ENABLED(CONFIG_ZYNQMP_POWER_DOMAIN)) {
ret = device_bind_driver_to_node(dev,
"zynqmp_power_domain",
"zynqmp_power_domain",
dev_ofnode(dev), &child);
if (ret)
printf("zynqmp power domain driver is not
binded\n");
s/binded/bound/
}
return dm_scan_fdt_dev(dev);
+}
[snip]
gvb