Lines Matching defs:sps
14 #include <linux/soc/actions/owl-sps.h>
44 struct owl_sps *sps;
54 return owl_sps_set_pg(pd->sps->base, pwr_mask, ack_mask, enable);
61 dev_dbg(pd->sps->dev, "%s power on", pd->info->name);
70 dev_dbg(pd->sps->dev, "%s power off", pd->info->name);
75 static int owl_sps_init_domain(struct owl_sps *sps, int index)
79 pd = devm_kzalloc(sps->dev, sizeof(*pd), GFP_KERNEL);
83 pd->info = &sps->info->domains[index];
84 pd->sps = sps;
92 sps->genpd_data.domains[index] = &pd->genpd;
101 struct owl_sps *sps;
117 sps = devm_kzalloc(&pdev->dev,
118 struct_size(sps, domains, sps_info->num_domains),
120 if (!sps)
123 sps->base = of_io_request_and_map(pdev->dev.of_node, 0, "owl-sps");
124 if (IS_ERR(sps->base)) {
125 dev_err(&pdev->dev, "failed to map sps registers\n");
126 return PTR_ERR(sps->base);
129 sps->dev = &pdev->dev;
130 sps->info = sps_info;
131 sps->genpd_data.domains = sps->domains;
132 sps->genpd_data.num_domains = sps_info->num_domains;
135 ret = owl_sps_init_domain(sps, i);
140 ret = of_genpd_add_provider_onecell(pdev->dev.of_node, &sps->genpd_data);
301 { .compatible = "actions,s500-sps", .data = &s500_sps_info },
302 { .compatible = "actions,s700-sps", .data = &s700_sps_info },
303 { .compatible = "actions,s900-sps", .data = &s900_sps_info },
310 .name = "owl-sps",