Displaying 11 results from an estimated 11 matches for "ifc_private_to_vf".
2019 Oct 21
0
[RFC 2/2] vhost: IFC VF vdpa layer
...he future.
>
>>
>>
>>> +}
>>> +
>>> +static int ifcvf_mdev_set_features(struct mdev_device *mdev, u64
>>> features)
>>> +{
>>> +??? struct ifcvf_adapter *adapter = mdev_get_drvdata(mdev);
>>> +??? struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);
>>> +
>>> +??? vf->req_features = features;
>>> +
>>> +??? return 0;
>>> +}
>>> +
>>> +static u64 ifcvf_mdev_get_vq_state(struct mdev_device *mdev, u16 qid)
>>> +{
>>> +??? struct ifcvf_adapter *adapter =...
2019 Oct 16
0
[RFC 2/2] vhost: IFC VF vdpa layer
...ect this should be done by querying the hw. Or IFC VF can't
get any update through its firmware?
> +}
> +
> +static int ifcvf_mdev_set_features(struct mdev_device *mdev, u64 features)
> +{
> + struct ifcvf_adapter *adapter = mdev_get_drvdata(mdev);
> + struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);
> +
> + vf->req_features = features;
> +
> + return 0;
> +}
> +
> +static u64 ifcvf_mdev_get_vq_state(struct mdev_device *mdev, u16 qid)
> +{
> + struct ifcvf_adapter *adapter = mdev_get_drvdata(mdev);
> + struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);...
2019 Nov 06
0
[PATCH 2/2] IFC VDPA layer
...G "0.1"
> +#define DRIVER_AUTHOR "Intel Corporation"
> +#define IFCVF_DRIVER_NAME "ifcvf"
> +
> +static struct ifcvf_hw *mdev_to_vf(struct mdev_device *mdev)
> +{
> + struct ifcvf_asapter *adapter = mdev_get_drvdata(mdev);
> + struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);
> +
> + return vf;
> +}
> +
> +static irqreturn_t ifcvf_intr_handler(int irq, void *arg)
> +{
> + struct vring_info *vring = arg;
> +
> + if (vring->cb.callback)
> + return vring->cb.callback(vring->cb.private);
> +
> + return IRQ_HANDLED;
>...
2019 Oct 22
0
[RFC 2/2] vhost: IFC VF vdpa layer
...+}
>>>>> +
>>>>> +static int ifcvf_mdev_set_features(struct mdev_device *mdev, u64
>>>>> features)
>>>>> +{
>>>>> +??? struct ifcvf_adapter *adapter = mdev_get_drvdata(mdev);
>>>>> +??? struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);
>>>>> +
>>>>> +??? vf->req_features = features;
>>>>> +
>>>>> +??? return 0;
>>>>> +}
>>>>> +
>>>>> +static u64 ifcvf_mdev_get_vq_state(struct mdev_device *mdev, u16
>>>&g...
2019 Oct 23
0
[RFC 2/2] vhost: IFC VF vdpa layer
...gt;>>> +static int ifcvf_mdev_set_features(struct mdev_device *mdev,
>>>>>>> u64 features)
>>>>>>> +{
>>>>>>> +??? struct ifcvf_adapter *adapter = mdev_get_drvdata(mdev);
>>>>>>> +??? struct ifcvf_hw *vf = IFC_PRIVATE_TO_VF(adapter);
>>>>>>> +
>>>>>>> +??? vf->req_features = features;
>>>>>>> +
>>>>>>> +??? return 0;
>>>>>>> +}
>>>>>>> +
>>>>>>> +static u64 ifcvf_mdev_ge...
2019 Nov 08
0
[PATCH 1/2] IFC hardware operation layer
...LM_BAR 4
> +
> +#define IFCVF_32_BIT_MASK 0xffffffff
> +
> +#define IFC_ERR(dev, fmt, ...) dev_err(dev, fmt, ##__VA_ARGS__)
> +#define IFC_DBG(dev, fmt, ...) dev_dbg(dev, fmt, ##__VA_ARGS__)
> +#define IFC_INFO(dev, fmt, ...) dev_info(dev, fmt, ##__VA_ARGS__)
> +
> +#define IFC_PRIVATE_TO_VF(adapter) \
> + (&((struct ifcvf_adapter *)adapter)->vf)
> +
> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
> +
> +struct ifcvf_net_config {
> + u8 mac[6];
> + u16 status;
> + u16 max_virtqueue_pairs;
> +} __packed;
> +
> +struct ifcvf_pci_me...
2019 Nov 05
1
[PATCH 1/2] IFC hardware operation layer
...LM_BAR 4
> +
> +#define IFCVF_32_BIT_MASK 0xffffffff
> +
> +#define IFC_ERR(dev, fmt, ...) dev_err(dev, fmt, ##__VA_ARGS__)
> +#define IFC_DBG(dev, fmt, ...) dev_dbg(dev, fmt, ##__VA_ARGS__)
> +#define IFC_INFO(dev, fmt, ...) dev_info(dev, fmt, ##__VA_ARGS__)
> +
> +#define IFC_PRIVATE_TO_VF(adapter) \
> + (&((struct ifcvf_adapter *)adapter)->vf)
> +
> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
> +
> +struct ifcvf_net_config {
> + u8 mac[6];
> + u16 status;
> + u16 max_virtqueue_pairs;
> +} __packed;
> +
> +struct ifcvf_pci_me...
2019 Nov 05
0
[PATCH 1/2] IFC hardware operation layer
...LM_BAR 4
> +
> +#define IFCVF_32_BIT_MASK 0xffffffff
> +
> +#define IFC_ERR(dev, fmt, ...) dev_err(dev, fmt, ##__VA_ARGS__)
> +#define IFC_DBG(dev, fmt, ...) dev_dbg(dev, fmt, ##__VA_ARGS__)
> +#define IFC_INFO(dev, fmt, ...) dev_info(dev, fmt, ##__VA_ARGS__)
> +
> +#define IFC_PRIVATE_TO_VF(adapter) \
> + (&((struct ifcvf_adapter *)adapter)->vf)
> +
> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
> +
> +struct ifcvf_net_config {
> + u8 mac[6];
> + u16 status;
> + u16 max_virtqueue_pairs;
> +} __packed;
Looks like a partial copy of vi...
2019 Nov 06
0
[PATCH 1/2] IFC hardware operation layer
...LM_BAR 4
> +
> +#define IFCVF_32_BIT_MASK 0xffffffff
> +
> +#define IFC_ERR(dev, fmt, ...) dev_err(dev, fmt, ##__VA_ARGS__)
> +#define IFC_DBG(dev, fmt, ...) dev_dbg(dev, fmt, ##__VA_ARGS__)
> +#define IFC_INFO(dev, fmt, ...) dev_info(dev, fmt, ##__VA_ARGS__)
> +
> +#define IFC_PRIVATE_TO_VF(adapter) \
> + (&((struct ifcvf_adapter *)adapter)->vf)
> +
> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
> +
> +struct ifcvf_net_config {
> + u8 mac[6];
> + u16 status;
> + u16 max_virtqueue_pairs;
> +} __packed;
Why not just use virtio_net_con...
2019 Oct 16
0
[RFC 1/2] vhost: IFC VF hardware operation layer
...tify_off_multiplier;
> + u64 req_features;
> + struct virtio_pci_common_cfg *common_cfg;
> + struct ifcvf_net_config *dev_cfg;
> + struct vring_info vring[IFCVF_MAX_QUEUE_PAIRS * 2];
> + struct ifcvf_pci_mem_resource mem_resource[IFCVF_PCI_MAX_RESOURCE];
> +};
> +
> +#define IFC_PRIVATE_TO_VF(adapter) \
> + (&((struct ifcvf_adapter *)adapter)->vf)
> +
> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
The extra one means the config interrupt?
> +
> +struct ifcvf_adapter {
> + struct device *dev;
> + struct mutex mdev_lock;
Not used in the patch,...
2019 Oct 21
0
[RFC 1/2] vhost: IFC VF hardware operation layer
...g *common_cfg;
>>> +??? struct??? ifcvf_net_config *dev_cfg;
>>> +??? struct??? vring_info vring[IFCVF_MAX_QUEUE_PAIRS * 2];
>>> +??? struct??? ifcvf_pci_mem_resource
>>> mem_resource[IFCVF_PCI_MAX_RESOURCE];
>>> +};
>>> +
>>> +#define IFC_PRIVATE_TO_VF(adapter) \
>>> +??? (&((struct ifcvf_adapter *)adapter)->vf)
>>> +
>>> +#define IFCVF_MAX_INTR (IFCVF_MAX_QUEUE_PAIRS * 2 + 1)
>>
>>
>> The extra one means the config interrupt?
> Yes.
Ok, when we support control vq, it should be changed to 2...