Lines Matching refs:ioatdca
101 struct ioat_dca_priv *ioatdca = dca_priv(dca); in ioat_dca_dev_managed() local
106 for (i = 0; i < ioatdca->max_requesters; i++) { in ioat_dca_dev_managed()
107 if (ioatdca->req_slots[i].pdev == pdev) in ioat_dca_dev_managed()
115 struct ioat_dca_priv *ioatdca = dca_priv(dca); in ioat_dca_add_requester() local
127 if (ioatdca->requester_count == ioatdca->max_requesters) in ioat_dca_add_requester()
130 for (i = 0; i < ioatdca->max_requesters; i++) { in ioat_dca_add_requester()
131 if (ioatdca->req_slots[i].pdev == NULL) { in ioat_dca_add_requester()
133 ioatdca->requester_count++; in ioat_dca_add_requester()
134 ioatdca->req_slots[i].pdev = pdev; in ioat_dca_add_requester()
135 ioatdca->req_slots[i].rid = id; in ioat_dca_add_requester()
137 readw(ioatdca->dca_base + IOAT3_DCA_GREQID_OFFSET); in ioat_dca_add_requester()
139 ioatdca->iobase + global_req_table + (i * 4)); in ioat_dca_add_requester()
150 struct ioat_dca_priv *ioatdca = dca_priv(dca); in ioat_dca_remove_requester() local
160 for (i = 0; i < ioatdca->max_requesters; i++) { in ioat_dca_remove_requester()
161 if (ioatdca->req_slots[i].pdev == pdev) { in ioat_dca_remove_requester()
163 readw(ioatdca->dca_base + IOAT3_DCA_GREQID_OFFSET); in ioat_dca_remove_requester()
164 writel(0, ioatdca->iobase + global_req_table + (i * 4)); in ioat_dca_remove_requester()
165 ioatdca->req_slots[i].pdev = NULL; in ioat_dca_remove_requester()
166 ioatdca->req_slots[i].rid = 0; in ioat_dca_remove_requester()
167 ioatdca->requester_count--; in ioat_dca_remove_requester()
180 struct ioat_dca_priv *ioatdca = dca_priv(dca); in ioat_dca_get_tag() local
188 entry = ioatdca->tag_map[i]; in ioat_dca_get_tag()
250 struct ioat_dca_priv *ioatdca; in ioat_dca_init() local
279 struct_size(ioatdca, req_slots, slots)); in ioat_dca_init()
283 ioatdca = dca_priv(dca); in ioat_dca_init()
284 ioatdca->iobase = iobase; in ioat_dca_init()
285 ioatdca->dca_base = iobase + dca_offset; in ioat_dca_init()
286 ioatdca->max_requesters = slots; in ioat_dca_init()
289 csi_fsb_control = readw(ioatdca->dca_base + IOAT3_CSI_CONTROL_OFFSET); in ioat_dca_init()
293 ioatdca->dca_base + IOAT3_CSI_CONTROL_OFFSET); in ioat_dca_init()
295 pcie_control = readw(ioatdca->dca_base + IOAT3_PCI_CONTROL_OFFSET); in ioat_dca_init()
299 ioatdca->dca_base + IOAT3_PCI_CONTROL_OFFSET); in ioat_dca_init()
307 readl(ioatdca->dca_base + IOAT3_APICID_TAG_MAP_OFFSET_LOW); in ioat_dca_init()
309 readl(ioatdca->dca_base + IOAT3_APICID_TAG_MAP_OFFSET_HIGH); in ioat_dca_init()
312 ioatdca->tag_map[i] = bit & DCA_TAG_MAP_MASK; in ioat_dca_init()
315 if (dca3_tag_map_invalid(ioatdca->tag_map)) { in ioat_dca_init()