mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
vfio-mdev: Make mdev_device private and abstract interfaces
Abstract access to mdev_device so that we can define which interfaces are public rather than relying on comments in the structure. Cc: Zhenyu Wang <[email protected]> Cc: Zhi Wang <[email protected]> Signed-off-by: Alex Williamson <[email protected]> Reviewed-by: Jike Song <[email protected]> Reviewed by: Kirti Wankhede <[email protected]>
This commit is contained in:
parent
9372e6feaa
commit
99e3123e3d
5 changed files with 71 additions and 45 deletions
|
|
@ -36,6 +36,36 @@ struct device *mdev_parent_dev(struct mdev_device *mdev)
|
|||
}
|
||||
EXPORT_SYMBOL(mdev_parent_dev);
|
||||
|
||||
void *mdev_get_drvdata(struct mdev_device *mdev)
|
||||
{
|
||||
return mdev->driver_data;
|
||||
}
|
||||
EXPORT_SYMBOL(mdev_get_drvdata);
|
||||
|
||||
void mdev_set_drvdata(struct mdev_device *mdev, void *data)
|
||||
{
|
||||
mdev->driver_data = data;
|
||||
}
|
||||
EXPORT_SYMBOL(mdev_set_drvdata);
|
||||
|
||||
struct device *mdev_dev(struct mdev_device *mdev)
|
||||
{
|
||||
return &mdev->dev;
|
||||
}
|
||||
EXPORT_SYMBOL(mdev_dev);
|
||||
|
||||
struct mdev_device *mdev_from_dev(struct device *dev)
|
||||
{
|
||||
return dev_is_mdev(dev) ? to_mdev_device(dev) : NULL;
|
||||
}
|
||||
EXPORT_SYMBOL(mdev_from_dev);
|
||||
|
||||
uuid_le mdev_uuid(struct mdev_device *mdev)
|
||||
{
|
||||
return mdev->uuid;
|
||||
}
|
||||
EXPORT_SYMBOL(mdev_uuid);
|
||||
|
||||
static int _find_mdev_device(struct device *dev, void *data)
|
||||
{
|
||||
struct mdev_device *mdev;
|
||||
|
|
|
|||
|
|
@ -26,6 +26,19 @@ struct mdev_parent {
|
|||
struct list_head type_list;
|
||||
};
|
||||
|
||||
struct mdev_device {
|
||||
struct device dev;
|
||||
struct mdev_parent *parent;
|
||||
uuid_le uuid;
|
||||
void *driver_data;
|
||||
struct kref ref;
|
||||
struct list_head next;
|
||||
struct kobject *type_kobj;
|
||||
};
|
||||
|
||||
#define to_mdev_device(dev) container_of(dev, struct mdev_device, dev)
|
||||
#define dev_is_mdev(d) ((d)->bus == &mdev_bus_type)
|
||||
|
||||
struct mdev_type {
|
||||
struct kobject kobj;
|
||||
struct kobject *devices_kobj;
|
||||
|
|
|
|||
Loading…
Reference in a new issue