Lines Matching refs:info
109 static struct ve_spc_drvdata *info;
113 return cluster == info->a15_clusid;
129 reg = readl_relaxed(info->baseaddr + WAKE_INT_MASK);
136 writel_relaxed(reg, info->baseaddr + WAKE_INT_MASK);
162 reg = readl_relaxed(info->baseaddr + WAKE_INT_MASK);
169 writel_relaxed(reg, info->baseaddr + WAKE_INT_MASK);
187 baseaddr = info->baseaddr + A15_BX_ADDR0 + (cpu << 2);
189 baseaddr = info->baseaddr + A7_BX_ADDR0 + (cpu << 2);
212 writel_relaxed(enable, info->baseaddr + pwdrn_reg);
242 ret = readl_relaxed(info->baseaddr + STANDBYWFI_STAT);
252 struct ve_spc_opp *opps = info->opps[cluster];
258 perf = readl_relaxed(info->baseaddr + perf_cfg_reg);
259 if (perf >= info->num_opps[cluster])
271 int idx, max_opp = info->num_opps[cluster];
272 struct ve_spc_opp *opps = info->opps[cluster];
294 int idx, max_opp = info->num_opps[cluster];
295 struct ve_spc_opp *opps = info->opps[cluster];
306 &info->done, usecs_to_jiffies(TIMEOUT_US));
310 ret = info->cur_rsp_stat & STAT_COMPLETE(req_type) ? 0 : -EIO;
332 if (down_timeout(&info->sem, usecs_to_jiffies(TIMEOUT_US)))
335 init_completion(&info->done);
336 info->cur_rsp_mask = RESPONSE_MASK(req_type);
338 writel(perf, info->baseaddr + perf_cfg_reg);
341 info->cur_rsp_mask = 0;
342 up(&info->sem);
351 if (down_timeout(&info->sem, usecs_to_jiffies(TIMEOUT_US)))
354 init_completion(&info->done);
355 info->cur_rsp_mask = RESPONSE_MASK(SPC_SYS_CFG);
358 writel(SYSCFG_START | func | offset >> 2, info->baseaddr + COMMS);
362 *data = readl(info->baseaddr + SYSCFG_RDATA);
364 info->cur_rsp_mask = 0;
365 up(&info->sem);
375 if (info->cur_rsp_mask & status) {
376 info->cur_rsp_stat = status;
402 info->opps[cluster] = opps;
414 info->num_opps[cluster] = idx;
428 max_opp = info->num_opps[cluster];
429 opps = info->opps[cluster];
445 info = kzalloc(sizeof(*info), GFP_KERNEL);
446 if (!info)
449 info->baseaddr = baseaddr;
450 info->a15_clusid = a15_clusid;
454 kfree(info);
458 init_completion(&info->done);
460 readl_relaxed(info->baseaddr + PWC_STATUS);
463 | IRQF_ONESHOT, "vexpress-spc", info);
466 kfree(info);
470 sema_init(&info->sem, 1);
473 * cluster power-up/power-down. Make sure driver info reaches main
476 sync_cache_w(info);
477 sync_cache_w(&info);
550 if (!info)