search for: lm_cfg

Displaying 8 results from an estimated 8 matches for "lm_cfg".

2019 Oct 16
0
[RFC 1/2] vhost: IFC VF hardware operation layer
...onfig? > + iowrite16(i, &hw->common_cfg->queue_select); > + notify_off = ioread16(&hw->common_cfg->queue_notify_off); > + hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + > + notify_off * hw->notify_off_multiplier); > + } > + > + hw->lm_cfg = hw->mem_resource[4].addr; > + > + IFC_INFO(&dev->dev, "PCI capability mapping:\n" > + "common cfg: %p\n" > + "notify base: %p\n" > + "isr cfg: %p\n" > + "device cfg: %p\n" > + "multiplier: %u\n&qu...
2019 Oct 21
0
[RFC 1/2] vhost: IFC VF hardware operation layer
...t;> +??????? notify_off = ioread16(&hw->common_cfg->queue_notify_off); >>> +??????? hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + >>> +??????????????? notify_off * hw->notify_off_multiplier); >>> +??? } >>> + >>> +??? hw->lm_cfg = hw->mem_resource[4].addr; >>> + >>> +??? IFC_INFO(&dev->dev, "PCI capability mapping:\n" >>> +??????????????? "common cfg: %p\n" >>> +??????????????? "notify base: %p\n" >>> +??????????????? "isr cfg: %p\n&q...
2019 Nov 06
0
[PATCH 1/2] IFC hardware operation layer
...= ioread16(&hw->common_cfg->queue_notify_off); > + hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + > + notify_off * hw->notify_off_multiplier); It might be better to store notify_addr inside the vring_info for better locality. > + } > + > + hw->lm_cfg = hw->mem_resource[IFCVF_LM_BAR].addr; > + > + IFC_DBG(&dev->dev, "PCI capability mapping: common cfg: %p,\ > + notify base: %p\n, isr cfg: %p, device cfg: %p,\ > + multiplier: %u\n", > + hw->common_cfg, hw->notify_base, hw->isr, > + hw->net_cfg...
2019 Nov 08
0
[PATCH 1/2] IFC hardware operation layer
...) { > + iowrite16(i, &hw->common_cfg->queue_select); > + notify_off = ioread16(&hw->common_cfg->queue_notify_off); > + hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + > + notify_off * hw->notify_off_multiplier); > + } > + > + hw->lm_cfg = hw->mem_resource[IFCVF_LM_BAR].addr; > + > + IFC_DBG(&dev->dev, "PCI capability mapping: common cfg: %p,\ > + notify base: %p\n, isr cfg: %p, device cfg: %p,\ > + multiplier: %u\n", > + hw->common_cfg, hw->notify_base, hw->isr, > + hw->net_cfg...
2019 Nov 05
1
[PATCH 1/2] IFC hardware operation layer
...) { > + iowrite16(i, &hw->common_cfg->queue_select); > + notify_off = ioread16(&hw->common_cfg->queue_notify_off); > + hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + > + notify_off * hw->notify_off_multiplier); > + } > + > + hw->lm_cfg = hw->mem_resource[IFCVF_LM_BAR].addr; > + > + IFC_DBG(&dev->dev, "PCI capability mapping: common cfg: %p,\ > + notify base: %p\n, isr cfg: %p, device cfg: %p,\ > + multiplier: %u\n", > + hw->common_cfg, hw->notify_base, hw->isr, > + hw->net_cfg...
2019 Nov 05
0
[PATCH 1/2] IFC hardware operation layer
...) { > + iowrite16(i, &hw->common_cfg->queue_select); > + notify_off = ioread16(&hw->common_cfg->queue_notify_off); > + hw->notify_addr[i] = (void *)((u8 *)hw->notify_base + > + notify_off * hw->notify_off_multiplier); > + } > + > + hw->lm_cfg = hw->mem_resource[IFCVF_LM_BAR].addr; > + > + IFC_DBG(&dev->dev, "PCI capability mapping: common cfg: %p,\ > + notify base: %p\n, isr cfg: %p, device cfg: %p,\ > + multiplier: %u\n", > + hw->common_cfg, hw->notify_base, hw->isr, > + hw->net_cfg...
2019 Nov 06
0
[PATCH 2/2] IFC VDPA layer
...vf(mdev); > + > + vf->req_features = features; > + > + return 0; > +} > + > +static u64 ifcvf_mdev_get_vq_state(struct mdev_device *mdev, u16 qid) > +{ > + struct ifcvf_hw *vf = mdev_to_vf(mdev); > + u16 last_avail_idx; > + > + last_avail_idx = *(u16 *)(vf->lm_cfg + IFCVF_LM_RING_STATE_OFFSET + > + (qid / 2) * IFCVF_LM_CFG_SIZE + (qid % 2) * 4); > + Similar to the comment of previous patch, it's better to have a structure for lm_cfg. > + return last_avail_idx; > +} > + > +static int ifcvf_mdev_set_vq_state(struct mdev_device *mdev,...
2020 Apr 02
0
[PATCH v2 -next] vdpa: remove unused variables 'ifcvf' and 'ifcvf_lm'
...rivers/vdpa/ifcvf/ifcvf_base.c index b61b06ea26d3..e24371d644b5 100644 --- a/drivers/vdpa/ifcvf/ifcvf_base.c +++ b/drivers/vdpa/ifcvf/ifcvf_base.c @@ -301,12 +301,10 @@ int ifcvf_set_vq_state(struct ifcvf_hw *hw, u16 qid, u64 num) static int ifcvf_hw_enable(struct ifcvf_hw *hw) { - struct ifcvf_lm_cfg __iomem *ifcvf_lm; struct virtio_pci_common_cfg __iomem *cfg; struct ifcvf_adapter *ifcvf; u32 i; - ifcvf_lm = (struct ifcvf_lm_cfg __iomem *)hw->lm_cfg; ifcvf = vf_to_adapter(hw); cfg = hw->common_cfg; ifc_iowrite16(IFCVF_MSI_CONFIG_OFF, &cfg->msix_config); diff --git a/...