Lines Matching +full:bman +full:- +full:portal
1 /* Copyright 2008 - 2016 Freescale Semiconductor, Inc.
36 /* protect bman global registers and global data shared among portals */
44 dev_crit(pcfg->dev, "%s: Portal failure on cpu %d\n", in init_pcfg()
45 __func__, pcfg->cpu); in init_pcfg()
50 affine_bportals[pcfg->cpu] = p; in init_pcfg()
52 dev_info(pcfg->dev, "Portal initialised, cpu %d\n", pcfg->cpu); in init_pcfg()
71 irq_set_affinity(pcfg->irq, cpumask_of(cpu)); in bman_offline_cpu()
87 irq_set_affinity(pcfg->irq, cpumask_of(cpu)); in bman_online_cpu()
99 struct device *dev = &pdev->dev; in bman_portal_probe()
100 struct device_node *node = dev->of_node; in bman_portal_probe()
107 return -EPROBE_DEFER; in bman_portal_probe()
109 dev_err(&pdev->dev, "failing probe due to bman probe error\n"); in bman_portal_probe()
110 return -ENODEV; in bman_portal_probe()
115 __bman_portals_probed = -1; in bman_portal_probe()
116 return -ENOMEM; in bman_portal_probe()
119 pcfg->dev = dev; in bman_portal_probe()
135 pcfg->cpu = -1; in bman_portal_probe()
140 pcfg->irq = irq; in bman_portal_probe()
142 pcfg->addr_virt_ce = memremap(addr_phys[0]->start, in bman_portal_probe()
145 if (!pcfg->addr_virt_ce) { in bman_portal_probe()
150 pcfg->addr_virt_ci = ioremap(addr_phys[1]->start, in bman_portal_probe()
152 if (!pcfg->addr_virt_ci) { in bman_portal_probe()
161 /* unassigned portal, skip init */ in bman_portal_probe()
168 pcfg->cpu = cpu; in bman_portal_probe()
171 dev_err(dev, "portal init failed\n"); in bman_portal_probe()
182 * BMan wasn't reset prior to boot (Kexec for example) in bman_portal_probe()
199 iounmap(pcfg->addr_virt_ci); in bman_portal_probe()
201 memunmap(pcfg->addr_virt_ce); in bman_portal_probe()
203 __bman_portals_probed = -1; in bman_portal_probe()
205 return -ENXIO; in bman_portal_probe()
210 .compatible = "fsl,bman-portal",
236 pr_err("bman: failed to register hotplug callbacks.\n"); in bman_portal_driver_register()