On 6/3/2016 2:27 PM, Dong Jia wrote:
> On Wed, 25 May 2016 01:28:15 +0530
> Kirti Wankhede <kwankh...@nvidia.com> wrote:
> 
> 
> ...snip...
> 
>> +struct phy_device_ops {
>> +    struct module   *owner;
>> +    const struct attribute_group **dev_attr_groups;
>> +    const struct attribute_group **mdev_attr_groups;
>> +
>> +    int     (*supported_config)(struct device *dev, char *config);
>> +    int     (*create)(struct device *dev, uuid_le uuid,
>> +                      uint32_t instance, char *mdev_params);
>> +    int     (*destroy)(struct device *dev, uuid_le uuid,
>> +                       uint32_t instance);
>> +    int     (*start)(uuid_le uuid);
>> +    int     (*shutdown)(uuid_le uuid);
>> +    ssize_t (*read)(struct mdev_device *vdev, char *buf, size_t count,
>> +                    enum mdev_emul_space address_space, loff_t pos);
>> +    ssize_t (*write)(struct mdev_device *vdev, char *buf, size_t count,
>> +                     enum mdev_emul_space address_space, loff_t pos);
>> +    int     (*set_irqs)(struct mdev_device *vdev, uint32_t flags,
>> +                        unsigned int index, unsigned int start,
>> +                        unsigned int count, void *data);
>> +    int     (*get_region_info)(struct mdev_device *vdev, int region_index,
>> +                             struct pci_region_info *region_info);
>> +    int     (*validate_map_request)(struct mdev_device *vdev,
>> +                                    unsigned long virtaddr,
>> +                                    unsigned long *pfn, unsigned long *size,
>> +                                    pgprot_t *prot);
>> +};
> 
> Dear Kirti:
> 
> When I rebased my vfio-ccw patches on this series, I found I need an
> extra 'ioctl' callback in phy_device_ops.
> 

Thanks for taking closer look. As per my knowledge ccw is not PCI
device, right? Correct me if I'm wrong. I'm curious to know. Are you
planning to write a driver (vfio-mccw) for mediated ccw device?

Thanks,
Kirti

> The ccw physical device only supports one ccw mediated device. And I
> have two new ioctl commands for the ccw mediated device. One is 
> to hot-reset the resource in the physical device that allocated for
> the mediated device, the other is to do an I/O instruction translation
> and perform an I/O operation on the physical device. I found the
> existing callbacks could not meet my requirements.
> 
> Something like the following would be fine for my case:
>       int (*ioctl)(struct mdev_device *vdev,
>                    unsigned int cmd,
>                    unsigned long arg);
> 
> What do you think about this?
> 
> --------
> Dong Jia
> 

Reply via email to