Symbol: tsm_dev
drivers/crypto/ccp/sev-dev-tsm.c
225
static struct pci_tsm *dsm_probe(struct tsm_dev *tsmdev, struct pci_dev *pdev)
drivers/crypto/ccp/sev-dev-tsm.c
345
struct tsm_dev *tsmdev;
drivers/crypto/ccp/sev-dev.h
67
struct tsm_dev *tsmdev;
drivers/pci/tsm.c
178
pdev->tsm = ops->probe(dsm_dev->tsm->tsm_dev, pdev);
drivers/pci/tsm.c
186
static int pci_tsm_connect(struct pci_dev *pdev, struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
190
const struct pci_tsm_ops *ops = tsm_dev->pci_ops;
drivers/pci/tsm.c
191
struct pci_tsm *pci_tsm __free(tsm_remove) = ops->probe(tsm_dev, pdev);
drivers/pci/tsm.c
234
struct tsm_dev *tsm_dev;
drivers/pci/tsm.c
244
tsm_dev = pdev->tsm->tsm_dev;
drivers/pci/tsm.c
245
return sysfs_emit(buf, "%s\n", dev_name(&tsm_dev->dev));
drivers/pci/tsm.c
249
static bool is_link_tsm(struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
251
return tsm_dev && tsm_dev->pci_ops && tsm_dev->pci_ops->link_ops.probe;
drivers/pci/tsm.c
255
static bool is_devsec_tsm(struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
257
return tsm_dev && tsm_dev->pci_ops && tsm_dev->pci_ops->devsec_ops.lock;
drivers/pci/tsm.c
277
struct tsm_dev *tsm_dev __free(put_tsm_dev) = find_tsm_dev(id);
drivers/pci/tsm.c
278
if (!is_link_tsm(tsm_dev))
drivers/pci/tsm.c
281
rc = pci_tsm_connect(pdev, tsm_dev);
drivers/pci/tsm.c
35
return tsm->tsm_dev->pci_ops;
drivers/pci/tsm.c
355
if (!is_link_tsm(pdev->tsm->tsm_dev))
drivers/pci/tsm.c
422
if (!is_link_tsm(pdev->tsm->tsm_dev))
drivers/pci/tsm.c
474
struct tsm_dev *tsm_dev;
drivers/pci/tsm.c
484
tsm_dev = pdev->tsm->tsm_dev;
drivers/pci/tsm.c
485
if (!sysfs_streq(buf, dev_name(&tsm_dev->dev)))
drivers/pci/tsm.c
516
return sysfs_emit(buf, "%s\n", dev_name(&tsm->tsm_dev->dev));
drivers/pci/tsm.c
720
struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
722
if (!is_link_tsm(tsm_dev))
drivers/pci/tsm.c
731
tsm->tsm_dev = tsm_dev;
drivers/pci/tsm.c
744
struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
754
return pci_tsm_link_constructor(pdev, &tsm->base_tsm, tsm_dev);
drivers/pci/tsm.c
764
int pci_tsm_register(struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
768
if (!tsm_dev)
drivers/pci/tsm.c
772
if (!is_link_tsm(tsm_dev) && !is_devsec_tsm(tsm_dev))
drivers/pci/tsm.c
775
if (is_link_tsm(tsm_dev) && is_devsec_tsm(tsm_dev))
drivers/pci/tsm.c
781
if (is_link_tsm(tsm_dev) && pci_tsm_link_count++ == 0) {
drivers/pci/tsm.c
785
} else if (is_devsec_tsm(tsm_dev)) {
drivers/pci/tsm.c
807
static void __pci_tsm_destroy(struct pci_dev *pdev, struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
818
if (is_link_tsm(tsm_dev) && is_pci_tsm_pf0(pdev) && !pci_tsm_link_count)
drivers/pci/tsm.c
826
if (!tsm_dev)
drivers/pci/tsm.c
827
tsm_dev = tsm->tsm_dev;
drivers/pci/tsm.c
828
else if (tsm_dev != tsm->tsm_dev)
drivers/pci/tsm.c
831
if (is_link_tsm(tsm_dev) && is_pci_tsm_pf0(pdev))
drivers/pci/tsm.c
872
void pci_tsm_unregister(struct tsm_dev *tsm_dev)
drivers/pci/tsm.c
877
if (is_link_tsm(tsm_dev))
drivers/pci/tsm.c
879
if (is_devsec_tsm(tsm_dev))
drivers/pci/tsm.c
882
__pci_tsm_destroy(pdev, tsm_dev);
drivers/virt/coco/tsm-core.c
101
if (tsm_dev->pci_ops)
drivers/virt/coco/tsm-core.c
102
pci_tsm_unregister(tsm_dev);
drivers/virt/coco/tsm-core.c
103
device_unregister(&tsm_dev->dev);
drivers/virt/coco/tsm-core.c
109
struct tsm_dev *tsm_dev = container_of(dev, typeof(*tsm_dev), dev);
drivers/virt/coco/tsm-core.c
111
ida_free(&tsm_ida, tsm_dev->id);
drivers/virt/coco/tsm-core.c
112
kfree(tsm_dev);
drivers/virt/coco/tsm-core.c
17
struct tsm_dev *tsm_dev = container_of(dev, struct tsm_dev, dev);
drivers/virt/coco/tsm-core.c
20
return tsm_dev->id == id;
drivers/virt/coco/tsm-core.c
23
struct tsm_dev *find_tsm_dev(int id)
drivers/virt/coco/tsm-core.c
29
return container_of(dev, struct tsm_dev, dev);
drivers/virt/coco/tsm-core.c
32
static struct tsm_dev *alloc_tsm_dev(struct device *parent)
drivers/virt/coco/tsm-core.c
37
struct tsm_dev *tsm_dev __free(kfree) =
drivers/virt/coco/tsm-core.c
38
kzalloc_obj(*tsm_dev);
drivers/virt/coco/tsm-core.c
39
if (!tsm_dev)
drivers/virt/coco/tsm-core.c
46
tsm_dev->id = id;
drivers/virt/coco/tsm-core.c
47
dev = &tsm_dev->dev;
drivers/virt/coco/tsm-core.c
52
return no_free_ptr(tsm_dev);
drivers/virt/coco/tsm-core.c
55
static struct tsm_dev *tsm_register_pci_or_reset(struct tsm_dev *tsm_dev,
drivers/virt/coco/tsm-core.c
61
return tsm_dev;
drivers/virt/coco/tsm-core.c
63
tsm_dev->pci_ops = pci_ops;
drivers/virt/coco/tsm-core.c
64
rc = pci_tsm_register(tsm_dev);
drivers/virt/coco/tsm-core.c
66
dev_err(tsm_dev->dev.parent,
drivers/virt/coco/tsm-core.c
68
device_unregister(&tsm_dev->dev);
drivers/virt/coco/tsm-core.c
73
kobject_uevent(&tsm_dev->dev.kobj, KOBJ_CHANGE);
drivers/virt/coco/tsm-core.c
74
return tsm_dev;
drivers/virt/coco/tsm-core.c
77
struct tsm_dev *tsm_register(struct device *parent, struct pci_tsm_ops *pci_ops)
drivers/virt/coco/tsm-core.c
79
struct tsm_dev *tsm_dev __free(put_tsm_dev) = alloc_tsm_dev(parent);
drivers/virt/coco/tsm-core.c
83
if (IS_ERR(tsm_dev))
drivers/virt/coco/tsm-core.c
84
return tsm_dev;
drivers/virt/coco/tsm-core.c
86
dev = &tsm_dev->dev;
drivers/virt/coco/tsm-core.c
87
rc = dev_set_name(dev, "tsm%d", tsm_dev->id);
drivers/virt/coco/tsm-core.c
95
return tsm_register_pci_or_reset(no_free_ptr(tsm_dev), pci_ops);
drivers/virt/coco/tsm-core.c
99
void tsm_unregister(struct tsm_dev *tsm_dev)
include/linux/pci-tsm.h
113
struct tsm_dev *tsm_dev;
include/linux/pci-tsm.h
203
int pci_tsm_register(struct tsm_dev *tsm_dev);
include/linux/pci-tsm.h
204
void pci_tsm_unregister(struct tsm_dev *tsm_dev);
include/linux/pci-tsm.h
206
struct tsm_dev *tsm_dev);
include/linux/pci-tsm.h
208
struct tsm_dev *tsm_dev);
include/linux/pci-tsm.h
220
static inline int pci_tsm_register(struct tsm_dev *tsm_dev)
include/linux/pci-tsm.h
224
static inline void pci_tsm_unregister(struct tsm_dev *tsm_dev)
include/linux/pci-tsm.h
48
struct pci_tsm *(*probe)(struct tsm_dev *tsm_dev,
include/linux/pci-tsm.h
74
struct pci_tsm *(*lock)(struct tsm_dev *tsm_dev,
include/linux/pci-tsm.h
9
struct tsm_dev;
include/linux/tsm.h
118
DEFINE_FREE(put_tsm_dev, struct tsm_dev *,
include/linux/tsm.h
123
struct tsm_dev *tsm_register(struct device *parent, struct pci_tsm_ops *ops);
include/linux/tsm.h
124
void tsm_unregister(struct tsm_dev *tsm_dev);
include/linux/tsm.h
125
struct tsm_dev *find_tsm_dev(int id);