Lines Matching full:sps

3  * Actions Semi Owl Smart Power System (SPS)
16 #include <linux/soc/actions/owl-sps.h>
46 struct owl_sps *sps; member
56 return owl_sps_set_pg(pd->sps->base, pwr_mask, ack_mask, enable); in owl_sps_set_power()
63 dev_dbg(pd->sps->dev, "%s power on", pd->info->name); in owl_sps_power_on()
72 dev_dbg(pd->sps->dev, "%s power off", pd->info->name); in owl_sps_power_off()
77 static int owl_sps_init_domain(struct owl_sps *sps, int index) in owl_sps_init_domain() argument
81 pd = devm_kzalloc(sps->dev, sizeof(*pd), GFP_KERNEL); in owl_sps_init_domain()
85 pd->info = &sps->info->domains[index]; in owl_sps_init_domain()
86 pd->sps = sps; in owl_sps_init_domain()
94 sps->genpd_data.domains[index] = &pd->genpd; in owl_sps_init_domain()
102 struct owl_sps *sps; in owl_sps_probe() local
111 sps = devm_kzalloc(&pdev->dev, in owl_sps_probe()
112 struct_size(sps, domains, sps_info->num_domains), in owl_sps_probe()
114 if (!sps) in owl_sps_probe()
117 sps->base = of_io_request_and_map(pdev->dev.of_node, 0, "owl-sps"); in owl_sps_probe()
118 if (IS_ERR(sps->base)) { in owl_sps_probe()
119 dev_err(&pdev->dev, "failed to map sps registers\n"); in owl_sps_probe()
120 return PTR_ERR(sps->base); in owl_sps_probe()
123 sps->dev = &pdev->dev; in owl_sps_probe()
124 sps->info = sps_info; in owl_sps_probe()
125 sps->genpd_data.domains = sps->domains; in owl_sps_probe()
126 sps->genpd_data.num_domains = sps_info->num_domains; in owl_sps_probe()
129 ret = owl_sps_init_domain(sps, i); in owl_sps_probe()
134 ret = of_genpd_add_provider_onecell(pdev->dev.of_node, &sps->genpd_data); in owl_sps_probe()
295 { .compatible = "actions,s500-sps", .data = &s500_sps_info },
296 { .compatible = "actions,s700-sps", .data = &s700_sps_info },
297 { .compatible = "actions,s900-sps", .data = &s900_sps_info },
304 .name = "owl-sps",