Lines Matching refs:rpi_domains
80 static void rpi_common_init_power_domain(struct rpi_power_domains *rpi_domains, in rpi_common_init_power_domain() argument
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()
101 rpi_domains->xlate.domains[xlate_index] = &dom->base; in rpi_common_init_power_domain()
104 static void rpi_init_power_domain(struct rpi_power_domains *rpi_domains, in rpi_init_power_domain() argument
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()
115 rpi_common_init_power_domain(rpi_domains, xlate_index, name); in rpi_init_power_domain()
118 static void rpi_init_old_power_domain(struct rpi_power_domains *rpi_domains, in rpi_init_old_power_domain() argument
122 struct rpi_power_domain *dom = &rpi_domains->domains[xlate_index]; in rpi_init_old_power_domain()
127 rpi_common_init_power_domain(rpi_domains, xlate_index, name); in rpi_init_old_power_domain()
139 rpi_has_new_domain_support(struct rpi_power_domains *rpi_domains) in rpi_has_new_domain_support() argument
147 ret = rpi_firmware_property(rpi_domains->fw, in rpi_has_new_domain_support()
158 struct rpi_power_domains *rpi_domains; in rpi_power_probe() local
160 rpi_domains = devm_kzalloc(dev, sizeof(*rpi_domains), GFP_KERNEL); in rpi_power_probe()
161 if (!rpi_domains) 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()
172 rpi_domains->xlate.num_domains = RPI_POWER_DOMAIN_COUNT; in rpi_power_probe()
180 rpi_domains->fw = devm_rpi_firmware_get(&pdev->dev, fw_np); in rpi_power_probe()
182 if (!rpi_domains->fw) in rpi_power_probe()
185 rpi_domains->has_new_interface = in rpi_power_probe()
186 rpi_has_new_domain_support(rpi_domains); in rpi_power_probe()
188 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_I2C0, "I2C0"); in rpi_power_probe()
189 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_I2C1, "I2C1"); in rpi_power_probe()
190 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_I2C2, "I2C2"); in rpi_power_probe()
191 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_VIDEO_SCALER, in rpi_power_probe()
193 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_VPU1, "VPU1"); in rpi_power_probe()
194 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_HDMI, "HDMI"); in rpi_power_probe()
200 rpi_init_old_power_domain(rpi_domains, RPI_POWER_DOMAIN_USB, in rpi_power_probe()
203 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_VEC, "VEC"); in rpi_power_probe()
204 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_JPEG, "JPEG"); in rpi_power_probe()
205 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_H264, "H264"); in rpi_power_probe()
206 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_V3D, "V3D"); in rpi_power_probe()
207 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_ISP, "ISP"); in rpi_power_probe()
208 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_UNICAM0, "UNICAM0"); in rpi_power_probe()
209 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_UNICAM1, "UNICAM1"); in rpi_power_probe()
210 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_CCP2RX, "CCP2RX"); in rpi_power_probe()
211 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_CSI2, "CSI2"); in rpi_power_probe()
212 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_CPI, "CPI"); in rpi_power_probe()
213 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_DSI0, "DSI0"); in rpi_power_probe()
214 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_DSI1, "DSI1"); in rpi_power_probe()
215 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_TRANSPOSER, in rpi_power_probe()
217 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_CCP2TX, "CCP2TX"); in rpi_power_probe()
218 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_CDP, "CDP"); in rpi_power_probe()
219 rpi_init_power_domain(rpi_domains, RPI_POWER_DOMAIN_ARM, "ARM"); in rpi_power_probe()
221 of_genpd_add_provider_onecell(dev->of_node, &rpi_domains->xlate); in rpi_power_probe()
223 platform_set_drvdata(pdev, rpi_domains); in rpi_power_probe()