• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/lib/devif/backends/net/mlx4/drivers/infiniband/hw/mthca/

Lines Matching refs:dev

60 	struct mthca_dev *dev, *tmpdev;
70 list_for_each_entry_safe(dev, tmpdev, &tlist, catas_err.list) {
71 struct pci_dev *pdev = dev->pdev;
72 ret = __mthca_restart_one(dev->pdev);
73 /* 'dev' now is not valid */
86 static void handle_catas(struct mthca_dev *dev)
93 event.device = &dev->ib_dev;
96 dev->active = 0;
100 switch (swab32(readl(dev->catas_err.map)) >> 24) {
118 mthca_err(dev, "Catastrophic error detected: %s\n", type);
119 for (i = 0; i < dev->catas_err.size; ++i)
120 mthca_err(dev, " buf[%02x]: %08x\n",
121 i, swab32(readl(dev->catas_err.map + i)));
127 list_add(&dev->catas_err.list, &catas_list);
134 struct mthca_dev *dev = (struct mthca_dev *) dev_ptr;
137 for (i = 0; i < dev->catas_err.size; ++i)
138 if (readl(dev->catas_err.map + i)) {
139 handle_catas(dev);
143 mod_timer(&dev->catas_err.timer,
147 void mthca_start_catas_poll(struct mthca_dev *dev)
151 init_timer(&dev->catas_err.timer);
152 dev->catas_err.map = NULL;
154 addr = pci_resource_start(dev->pdev, 0) +
155 ((pci_resource_len(dev->pdev, 0) - 1) &
156 dev->catas_err.addr);
158 dev->catas_err.map = ioremap(addr, dev->catas_err.size * 4);
159 if (!dev->catas_err.map) {
160 mthca_warn(dev, "couldn't map catastrophic error region "
161 "at 0x%lx/0x%x\n", addr, dev->catas_err.size * 4);
165 dev->catas_err.timer.data = (unsigned long) dev;
166 dev->catas_err.timer.function = poll_catas;
167 dev->catas_err.timer.expires = jiffies + MTHCA_CATAS_POLL_INTERVAL;
168 INIT_LIST_HEAD(&dev->catas_err.list);
169 add_timer(&dev->catas_err.timer);
172 void mthca_stop_catas_poll(struct mthca_dev *dev)
174 del_timer_sync(&dev->catas_err.timer);
176 if (dev->catas_err.map)
177 iounmap(dev->catas_err.map);
180 list_del(&dev->catas_err.list);