Lines Matching full:ide
56 static int stream_enable(struct pci_ide *ide) in stream_enable() argument
58 struct pci_dev *rp = pcie_find_root_port(ide->pdev); in stream_enable()
61 ret = pci_ide_stream_enable(rp, ide); in stream_enable()
65 ret = pci_ide_stream_enable(ide->pdev, ide); in stream_enable()
67 pci_ide_stream_disable(rp, ide); in stream_enable()
72 static int streams_enable(struct pci_ide **ide) in streams_enable() argument
77 if (ide[i]) { in streams_enable()
78 ret = stream_enable(ide[i]); in streams_enable()
87 static void stream_disable(struct pci_ide *ide) in stream_disable() argument
89 pci_ide_stream_disable(ide->pdev, ide); in stream_disable()
90 pci_ide_stream_disable(pcie_find_root_port(ide->pdev), ide); in stream_disable()
93 static void streams_disable(struct pci_ide **ide) in streams_disable() argument
96 if (ide[i]) in streams_disable()
97 stream_disable(ide[i]); in streams_disable()
100 static void stream_setup(struct pci_ide *ide) in stream_setup() argument
102 struct pci_dev *rp = pcie_find_root_port(ide->pdev); in stream_setup()
104 ide->partner[PCI_IDE_EP].rid_start = 0; in stream_setup()
105 ide->partner[PCI_IDE_EP].rid_end = 0xffff; in stream_setup()
106 ide->partner[PCI_IDE_RP].rid_start = 0; in stream_setup()
107 ide->partner[PCI_IDE_RP].rid_end = 0xffff; in stream_setup()
109 ide->pdev->ide_cfg = 0; in stream_setup()
110 ide->pdev->ide_tee_limit = 1; in stream_setup()
114 pci_warn(ide->pdev, "Forcing CFG/TEE for %s", pci_name(rp)); in stream_setup()
115 pci_ide_stream_setup(ide->pdev, ide); in stream_setup()
116 pci_ide_stream_setup(rp, ide); in stream_setup()
119 static u8 streams_setup(struct pci_ide **ide, u8 *ids) in streams_setup() argument
126 if (!ide[i]) { in streams_setup()
132 ids[i] = ide[i]->stream_id; in streams_setup()
137 settings = pci_ide_to_settings(ide[i]->pdev, ide[i]); in streams_setup()
142 stream_setup(ide[i]); in streams_setup()
148 static int streams_register(struct pci_ide **ide) in streams_register() argument
153 if (ide[i]) { in streams_register()
154 ret = pci_ide_stream_register(ide[i]); in streams_register()
163 static void streams_unregister(struct pci_ide **ide) in streams_unregister() argument
166 if (ide[i]) in streams_unregister()
167 pci_ide_stream_unregister(ide[i]); in streams_unregister()
170 static void stream_teardown(struct pci_ide *ide) in stream_teardown() argument
172 pci_ide_stream_teardown(ide->pdev, ide); in stream_teardown()
173 pci_ide_stream_teardown(pcie_find_root_port(ide->pdev), ide); in stream_teardown()
176 static void streams_teardown(struct pci_ide **ide) in streams_teardown() argument
179 if (ide[i]) { in streams_teardown()
180 stream_teardown(ide[i]); in streams_teardown()
181 pci_ide_stream_free(ide[i]); in streams_teardown()
182 ide[i] = NULL; in streams_teardown()
187 static int stream_alloc(struct pci_dev *pdev, struct pci_ide **ide, in stream_alloc() argument
192 if (ide[tc]) { in stream_alloc()
203 ide[tc] = ide1; in stream_alloc()
280 ret = stream_alloc(pdev, dev_data->ide, 0); in dsm_connect()
288 tc_mask = streams_setup(dev_data->ide, ids); in dsm_connect()
295 streams_enable(dev_data->ide); in dsm_connect()
297 ret = streams_register(dev_data->ide); in dsm_connect()
306 streams_disable(dev_data->ide); in dsm_connect()
309 streams_teardown(dev_data->ide); in dsm_connect()
330 streams_disable(dev_data->ide); in dsm_disconnect()
331 streams_unregister(dev_data->ide); in dsm_disconnect()
332 streams_teardown(dev_data->ide); in dsm_disconnect()