Lines Matching defs:gdev

49  * @gdev: HTE abstract device that this timestamp information belongs to.
66 struct hte_device *gdev;
105 static void hte_chip_dbgfs_init(struct hte_device *gdev)
107 const struct hte_chip *chip = gdev->chip;
110 gdev->dbg_root = debugfs_create_dir(name, hte_root);
112 debugfs_create_atomic_t("ts_requested", 0444, gdev->dbg_root,
113 &gdev->ts_req);
114 debugfs_create_u32("total_ts", 0444, gdev->dbg_root,
115 &gdev->nlines);
120 if (!ei->gdev->dbg_root || !name)
123 ei->ts_dbg_root = debugfs_create_dir(name, ei->gdev->dbg_root);
131 static void hte_chip_dbgfs_init(struct hte_device *gdev)
154 struct hte_device *gdev;
162 if (!ei || !ei->gdev)
165 gdev = ei->gdev;
171 dev_info(gdev->sdev, "id:%d is not requested\n",
179 dev_info(gdev->sdev, "id:%d is registered but not requested\n",
193 ret = gdev->chip->ops->release(gdev->chip, desc, ei->xlated_id);
195 dev_err(gdev->sdev, "id: %d free failed\n",
214 atomic_dec(&gdev->ts_req);
228 module_put(gdev->owner);
231 dev_dbg(gdev->sdev, "release id: %d\n", desc->attr.line_id);
240 struct hte_device *gdev;
250 if (!ei || !ei->gdev)
253 gdev = ei->gdev;
259 dev_dbg(gdev->sdev, "id:%d is not registered", ts_id);
273 ret = gdev->chip->ops->enable(gdev->chip, ei->xlated_id);
275 dev_warn(gdev->sdev, "id: %d enable failed\n",
289 ret = gdev->chip->ops->disable(gdev->chip, ei->xlated_id);
291 dev_warn(gdev->sdev, "id: %d disable failed\n",
356 struct hte_device *gdev;
359 gdev = ei->gdev;
368 dev_dbg(gdev->chip->dev, "id:%u req failed\n",
379 ret = gdev->chip->ops->request(gdev->chip, desc, ei->xlated_id);
381 dev_err(gdev->chip->dev, "ts request failed\n");
388 atomic_inc(&gdev->ts_req);
399 dev_dbg(gdev->chip->dev, "id: %u, xlated id:%u",
418 dev_dbg(ei->gdev->chip->dev, "id:%u is already requested\n",
436 struct hte_device *gdev;
440 list_for_each_entry(gdev, &hte_devices, list)
441 if (gdev->chip && gdev->chip->dev &&
442 device_match_of_node(gdev->chip->dev, np)) {
444 return gdev;
454 struct hte_device *gdev;
458 list_for_each_entry(gdev, &hte_devices, list)
459 if (gdev->chip && gdev->chip->match_from_linedata) {
460 if (!gdev->chip->match_from_linedata(gdev->chip, desc))
463 return gdev;
564 struct hte_device *gdev;
578 gdev = hte_of_get_dev(dev, desc, index, &args, &free_name);
580 gdev = hte_get_dev(desc);
582 if (IS_ERR(gdev)) {
584 return PTR_ERR(gdev);
587 if (!try_module_get(gdev->owner))
590 if (!gdev->chip) {
598 if (!gdev->chip->xlate_of)
601 ret = gdev->chip->xlate_of(gdev->chip, &args,
604 if (!gdev->chip->xlate_plat)
607 ret = gdev->chip->xlate_plat(gdev->chip, desc,
614 ei = &gdev->ei[xlated_id];
625 module_put(gdev->owner);
661 if (!ei || !ei->gdev)
666 dev_err(ei->gdev->chip->dev,
775 if (!ei->gdev || !ei->gdev->chip)
778 chip = ei->gdev->chip;
806 if (!chip || !data || !chip->gdev)
812 ei = &chip->gdev->ei[xlated_id];
842 struct hte_device *gdev;
853 gdev = kzalloc(struct_size(gdev, ei, chip->nlines), GFP_KERNEL);
854 if (!gdev)
857 gdev->chip = chip;
858 chip->gdev = gdev;
859 gdev->nlines = chip->nlines;
860 gdev->sdev = chip->dev;
863 gdev->ei[i].gdev = gdev;
864 mutex_init(&gdev->ei[i].req_mlock);
865 spin_lock_init(&gdev->ei[i].slock);
869 gdev->owner = chip->dev->driver->owner;
871 gdev->owner = THIS_MODULE;
875 INIT_LIST_HEAD(&gdev->list);
878 list_add_tail(&gdev->list, &hte_devices);
881 hte_chip_dbgfs_init(gdev);
890 struct hte_device *gdev;
895 gdev = chip->gdev;
898 list_del(&gdev->list);
901 gdev->chip = NULL;
904 debugfs_remove_recursive(gdev->dbg_root);
905 kfree(gdev);