Lines Matching refs:adapter

23 	struct zfcp_adapter *adapter;
27 adapter = dev_get_drvdata(&cdev->dev);
28 if (adapter)
29 kref_get(&adapter->ref);
31 return adapter;
34 void zfcp_ccw_adapter_put(struct zfcp_adapter *adapter)
39 kref_put(&adapter->ref, zfcp_adapter_release);
44 * zfcp_ccw_activate - activate adapter and wait for it to finish
51 struct zfcp_adapter *adapter = zfcp_ccw_adapter_by_cdev(cdev);
53 if (!adapter)
56 zfcp_erp_clear_adapter_status(adapter, clear);
57 zfcp_erp_set_adapter_status(adapter, ZFCP_STATUS_COMMON_RUNNING);
58 zfcp_erp_adapter_reopen(adapter, ZFCP_STATUS_COMMON_ERP_FAILED,
74 zfcp_erp_wait(adapter);
75 flush_delayed_work(&adapter->scan_work);
77 zfcp_ccw_adapter_put(adapter);
95 * work: To only allocate adapter resources for devices actually used,
107 * This function gets called by the common i/o layer and removes an adapter
109 * ports that belong to this adapter. And in addition all resources of this
110 * adapter will be freed too.
114 struct zfcp_adapter *adapter;
122 adapter = zfcp_ccw_adapter_by_cdev(cdev);
123 if (!adapter)
126 write_lock_irq(&adapter->port_list_lock);
127 list_for_each_entry(port, &adapter->port_list, list) {
132 list_splice_init(&adapter->port_list, &port_remove_lh);
133 write_unlock_irq(&adapter->port_list_lock);
134 zfcp_ccw_adapter_put(adapter); /* put from zfcp_ccw_adapter_by_cdev */
142 zfcp_adapter_unregister(adapter);
150 * adapter into state online. The first call will allocate all
151 * adapter resources that will be retained until the device is removed
156 * adapter will be opened.
160 struct zfcp_adapter *adapter = zfcp_ccw_adapter_by_cdev(cdev);
162 if (!adapter) {
163 adapter = zfcp_adapter_enqueue(cdev);
165 if (IS_ERR(adapter)) {
168 "FCP adapter failed\n");
169 return PTR_ERR(adapter);
171 kref_get(&adapter->ref);
175 BUG_ON(!zfcp_reqlist_isempty(adapter->req_list));
176 adapter->req_no = 0;
190 zfcp_fc_inverse_conditional_port_scan(adapter);
191 flush_delayed_work(&adapter->scan_work);
192 zfcp_ccw_adapter_put(adapter);
200 * This function gets called by the common i/o layer and sets an adapter
205 struct zfcp_adapter *adapter = zfcp_ccw_adapter_by_cdev(cdev);
207 if (!adapter)
210 zfcp_erp_set_adapter_status(adapter, 0);
211 zfcp_erp_adapter_shutdown(adapter, 0, "ccsoff1");
212 zfcp_erp_wait(adapter);
214 zfcp_ccw_adapter_put(adapter);
221 * @event: indicates if adapter was detached or attached
223 * This function gets called by the common i/o layer if an adapter has gone
228 struct zfcp_adapter *adapter = zfcp_ccw_adapter_by_cdev(cdev);
230 if (!adapter)
236 zfcp_erp_adapter_shutdown(adapter, 0, "ccnoti1");
241 zfcp_erp_adapter_shutdown(adapter, 0, "ccnoti2");
245 zfcp_erp_set_adapter_status(adapter,
247 zfcp_erp_adapter_reopen(adapter, ZFCP_STATUS_COMMON_ERP_FAILED,
253 zfcp_erp_adapter_shutdown(adapter, 0, "ccnoti5");
257 zfcp_ccw_adapter_put(adapter);
263 * @cdev: device for adapter to shutdown.
267 struct zfcp_adapter *adapter = zfcp_ccw_adapter_by_cdev(cdev);
269 if (!adapter)
272 zfcp_erp_adapter_shutdown(adapter, 0, "ccshut1");
273 zfcp_erp_wait(adapter);
274 zfcp_erp_thread_kill(adapter);
276 zfcp_ccw_adapter_put(adapter);