Lines Matching defs:lpc_ctrl

51 	struct aspeed_lpc_ctrl *lpc_ctrl = file_aspeed_lpc_ctrl(file);
55 if (vma->vm_pgoff + vma_pages(vma) > lpc_ctrl->mem_size >> PAGE_SHIFT)
62 (lpc_ctrl->mem_base >> PAGE_SHIFT) + vma->vm_pgoff,
72 struct aspeed_lpc_ctrl *lpc_ctrl = file_aspeed_lpc_ctrl(file);
97 if (!lpc_ctrl->mem_size) {
102 map.size = lpc_ctrl->mem_size;
138 if (!lpc_ctrl->pnor_size) {
142 addr = lpc_ctrl->pnor_base;
143 size = lpc_ctrl->pnor_size;
146 if (!lpc_ctrl->mem_size) {
150 addr = lpc_ctrl->mem_base;
151 size = lpc_ctrl->mem_size;
175 rc = regmap_write(lpc_ctrl->regmap, HICR7,
180 rc = regmap_write(lpc_ctrl->regmap, HICR8,
188 if (lpc_ctrl->fwh2ahb) {
194 regmap_update_bits(lpc_ctrl->scu, 0x0D8, BIT(2), 0);
201 regmap_write(lpc_ctrl->regmap, HICR6, SW_FWH2AHB);
208 return regmap_update_bits(lpc_ctrl->regmap, HICR5,
224 struct aspeed_lpc_ctrl *lpc_ctrl;
233 lpc_ctrl = devm_kzalloc(dev, sizeof(*lpc_ctrl), GFP_KERNEL);
234 if (!lpc_ctrl)
249 lpc_ctrl->pnor_size = resource_size(&resm);
250 lpc_ctrl->pnor_base = resm.start;
254 dev_set_drvdata(&pdev->dev, lpc_ctrl);
268 lpc_ctrl->mem_size = resource_size(&resm);
269 lpc_ctrl->mem_base = resm.start;
271 if (!is_power_of_2(lpc_ctrl->mem_size)) {
273 (unsigned int)lpc_ctrl->mem_size);
277 if (!IS_ALIGNED(lpc_ctrl->mem_base, lpc_ctrl->mem_size)) {
279 (unsigned int)lpc_ctrl->mem_size);
292 lpc_ctrl->regmap = syscon_node_to_regmap(np);
293 if (IS_ERR(lpc_ctrl->regmap)) {
299 lpc_ctrl->fwh2ahb = true;
301 lpc_ctrl->scu = syscon_regmap_lookup_by_compatible("aspeed,ast2600-scu");
302 if (IS_ERR(lpc_ctrl->scu)) {
304 return PTR_ERR(lpc_ctrl->scu);
308 lpc_ctrl->clk = devm_clk_get(dev, NULL);
309 if (IS_ERR(lpc_ctrl->clk))
310 return dev_err_probe(dev, PTR_ERR(lpc_ctrl->clk),
312 rc = clk_prepare_enable(lpc_ctrl->clk);
318 lpc_ctrl->miscdev.minor = MISC_DYNAMIC_MINOR;
319 lpc_ctrl->miscdev.name = DEVICE_NAME;
320 lpc_ctrl->miscdev.fops = &aspeed_lpc_ctrl_fops;
321 lpc_ctrl->miscdev.parent = dev;
322 rc = misc_register(&lpc_ctrl->miscdev);
331 clk_disable_unprepare(lpc_ctrl->clk);
337 struct aspeed_lpc_ctrl *lpc_ctrl = dev_get_drvdata(&pdev->dev);
339 misc_deregister(&lpc_ctrl->miscdev);
340 clk_disable_unprepare(lpc_ctrl->clk);