Lines Matching +full:bcm2835 +full:- +full:hdmi

1 // SPDX-License-Identifier: GPL-2.0
13 #include <dt-bindings/power/raspberrypi-power.h>
14 #include <soc/bcm2835/raspberrypi-firmware.h>
55 packet.domain = rpi_domain->domain; in rpi_firmware_set_power()
57 return rpi_firmware_property(rpi_domain->fw, in rpi_firmware_set_power()
58 rpi_domain->old_interface ? in rpi_firmware_set_power()
83 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_common_init_power_domain()
85 dom->fw = rpi_domains->fw; in rpi_common_init_power_domain()
87 dom->base.name = name; in rpi_common_init_power_domain()
88 dom->base.power_on = rpi_domain_on; in rpi_common_init_power_domain()
89 dom->base.power_off = rpi_domain_off; in rpi_common_init_power_domain()
99 pm_genpd_init(&dom->base, NULL, true); in rpi_common_init_power_domain()
101 rpi_domains->xlate.domains[xlate_index] = &dom->base; in rpi_common_init_power_domain()
107 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_init_power_domain()
109 if (!rpi_domains->has_new_interface) in rpi_init_power_domain()
113 dom->domain = xlate_index + 1; in rpi_init_power_domain()
122 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_init_old_power_domain()
124 dom->old_interface = true; in rpi_init_old_power_domain()
125 dom->domain = domain; in rpi_init_old_power_domain()
147 ret = rpi_firmware_property(rpi_domains->fw, in rpi_has_new_domain_support()
157 struct device *dev = &pdev->dev; in rpi_power_probe()
162 return -ENOMEM; in rpi_power_probe()
164 rpi_domains->xlate.domains = in rpi_power_probe()
167 sizeof(*rpi_domains->xlate.domains), in rpi_power_probe()
169 if (!rpi_domains->xlate.domains) in rpi_power_probe()
170 return -ENOMEM; in rpi_power_probe()
172 rpi_domains->xlate.num_domains = RPI_POWER_DOMAIN_COUNT; in rpi_power_probe()
174 fw_np = of_parse_phandle(pdev->dev.of_node, "firmware", 0); in rpi_power_probe()
176 dev_err(&pdev->dev, "no firmware node\n"); in rpi_power_probe()
177 return -ENODEV; in rpi_power_probe()
180 rpi_domains->fw = rpi_firmware_get(fw_np); in rpi_power_probe()
182 if (!rpi_domains->fw) in rpi_power_probe()
183 return -EPROBE_DEFER; in rpi_power_probe()
185 rpi_domains->has_new_interface = in rpi_power_probe()
194 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_HDMI, "HDMI"); in rpi_power_probe()
221 of_genpd_add_provider_onecell(dev->of_node, &rpi_domains->xlate); in rpi_power_probe()
229 { .compatible = "raspberrypi,bcm2835-power", },
236 .name = "raspberrypi-power",