Lines Matching refs:fw_event
2425 _scsih_fw_event_add(struct MPT3SAS_ADAPTER *ioc, struct fw_event_work *fw_event) in _scsih_fw_event_add() argument
2433 INIT_LIST_HEAD(&fw_event->list); in _scsih_fw_event_add()
2434 list_add_tail(&fw_event->list, &ioc->fw_event_list); in _scsih_fw_event_add()
2435 INIT_WORK(&fw_event->work, _firmware_event_work); in _scsih_fw_event_add()
2436 queue_work(ioc->firmware_event_thread, &fw_event->work); in _scsih_fw_event_add()
2452 *fw_event) in _scsih_fw_event_free()
2457 list_del(&fw_event->list); in _scsih_fw_event_free()
2458 kfree(fw_event); in _scsih_fw_event_free()
2474 struct fw_event_work *fw_event; in mpt3sas_send_trigger_data_event() local
2478 fw_event = kzalloc(sizeof(*fw_event) + sizeof(*event_data), in mpt3sas_send_trigger_data_event()
2480 if (!fw_event) in mpt3sas_send_trigger_data_event()
2482 fw_event->event = MPT3SAS_PROCESS_TRIGGER_DIAG; in mpt3sas_send_trigger_data_event()
2483 fw_event->ioc = ioc; in mpt3sas_send_trigger_data_event()
2484 memcpy(fw_event->event_data, event_data, sizeof(*event_data)); in mpt3sas_send_trigger_data_event()
2485 _scsih_fw_event_add(ioc, fw_event); in mpt3sas_send_trigger_data_event()
2497 struct fw_event_work *fw_event; in _scsih_error_recovery_delete_devices() local
2501 fw_event = kzalloc(sizeof(struct fw_event_work), GFP_ATOMIC); in _scsih_error_recovery_delete_devices()
2502 if (!fw_event) in _scsih_error_recovery_delete_devices()
2504 fw_event->event = MPT3SAS_REMOVE_UNRESPONDING_DEVICES; in _scsih_error_recovery_delete_devices()
2505 fw_event->ioc = ioc; in _scsih_error_recovery_delete_devices()
2506 _scsih_fw_event_add(ioc, fw_event); in _scsih_error_recovery_delete_devices()
2518 struct fw_event_work *fw_event; in mpt3sas_port_enable_complete() local
2520 fw_event = kzalloc(sizeof(struct fw_event_work), GFP_ATOMIC); in mpt3sas_port_enable_complete()
2521 if (!fw_event) in mpt3sas_port_enable_complete()
2523 fw_event->event = MPT3SAS_PORT_ENABLE_COMPLETE; in mpt3sas_port_enable_complete()
2524 fw_event->ioc = ioc; in mpt3sas_port_enable_complete()
2525 _scsih_fw_event_add(ioc, fw_event); in mpt3sas_port_enable_complete()
2540 struct fw_event_work *fw_event, *next; in _scsih_fw_event_cleanup_queue() local
2546 list_for_each_entry_safe(fw_event, next, &ioc->fw_event_list, list) { in _scsih_fw_event_cleanup_queue()
2547 if (cancel_delayed_work_sync(&fw_event->delayed_work)) { in _scsih_fw_event_cleanup_queue()
2548 _scsih_fw_event_free(ioc, fw_event); in _scsih_fw_event_cleanup_queue()
3126 struct fw_event_work *fw_event; in _scsih_check_topo_delete_events() local
3171 list_for_each_entry(fw_event, &ioc->fw_event_list, list) { in _scsih_check_topo_delete_events()
3172 if (fw_event->event != MPI2_EVENT_SAS_TOPOLOGY_CHANGE_LIST || in _scsih_check_topo_delete_events()
3173 fw_event->ignore) in _scsih_check_topo_delete_events()
3176 fw_event->event_data; in _scsih_check_topo_delete_events()
3185 fw_event->ignore = 1; in _scsih_check_topo_delete_events()
3957 struct fw_event_work *fw_event; in _scsih_send_event_to_turn_on_pfa_led() local
3959 fw_event = kzalloc(sizeof(struct fw_event_work), GFP_ATOMIC); in _scsih_send_event_to_turn_on_pfa_led()
3960 if (!fw_event) in _scsih_send_event_to_turn_on_pfa_led()
3962 fw_event->event = MPT3SAS_TURN_ON_PFA_LED; in _scsih_send_event_to_turn_on_pfa_led()
3963 fw_event->device_handle = handle; in _scsih_send_event_to_turn_on_pfa_led()
3964 fw_event->ioc = ioc; in _scsih_send_event_to_turn_on_pfa_led()
3965 _scsih_fw_event_add(ioc, fw_event); in _scsih_send_event_to_turn_on_pfa_led()
5061 struct fw_event_work *fw_event) in _scsih_sas_topology_change_event() argument
5073 fw_event->event_data; in _scsih_sas_topology_change_event()
5088 if (fw_event->ignore) { in _scsih_sas_topology_change_event()
5118 if (fw_event->ignore) { in _scsih_sas_topology_change_event()
5264 struct fw_event_work *fw_event) in _scsih_sas_device_status_change_event() argument
5272 fw_event->event_data; in _scsih_sas_device_status_change_event()
5363 struct fw_event_work *fw_event) in _scsih_sas_enclosure_dev_status_change_event() argument
5369 fw_event->event_data); in _scsih_sas_enclosure_dev_status_change_event()
5383 struct fw_event_work *fw_event) in _scsih_sas_broadcast_primitive_event() argument
5395 fw_event->event_data; in _scsih_sas_broadcast_primitive_event()
5545 struct fw_event_work *fw_event) in _scsih_sas_discovery_event() argument
5548 (Mpi2EventDataSasDiscovery_t *) fw_event->event_data; in _scsih_sas_discovery_event()
6029 struct fw_event_work *fw_event) in _scsih_sas_ir_config_change_event() argument
6036 fw_event->event_data; in _scsih_sas_ir_config_change_event()
6098 struct fw_event_work *fw_event) in _scsih_sas_ir_volume_event() argument
6107 (Mpi2EventDataIrVolume_t *) fw_event->event_data; in _scsih_sas_ir_volume_event()
6181 struct fw_event_work *fw_event) in _scsih_sas_ir_physical_disk_event() argument
6191 (Mpi2EventDataIrPhysicalDisk_t *) fw_event->event_data; in _scsih_sas_ir_physical_disk_event()
6309 struct fw_event_work *fw_event) in _scsih_sas_ir_operation_status_event() argument
6313 fw_event->event_data; in _scsih_sas_ir_operation_status_event()
7064 _mpt3sas_fw_work(struct MPT3SAS_ADAPTER *ioc, struct fw_event_work *fw_event) in _mpt3sas_fw_work() argument
7069 _scsih_fw_event_free(ioc, fw_event); in _mpt3sas_fw_work()
7073 switch (fw_event->event) { in _mpt3sas_fw_work()
7077 fw_event->event_data); in _mpt3sas_fw_work()
7095 _scsih_turn_on_pfa_led(ioc, fw_event->device_handle); in _mpt3sas_fw_work()
7098 _scsih_sas_topology_change_event(ioc, fw_event); in _mpt3sas_fw_work()
7101 _scsih_sas_device_status_change_event(ioc, fw_event); in _mpt3sas_fw_work()
7104 _scsih_sas_discovery_event(ioc, fw_event); in _mpt3sas_fw_work()
7107 _scsih_sas_broadcast_primitive_event(ioc, fw_event); in _mpt3sas_fw_work()
7111 fw_event); in _mpt3sas_fw_work()
7114 _scsih_sas_ir_config_change_event(ioc, fw_event); in _mpt3sas_fw_work()
7117 _scsih_sas_ir_volume_event(ioc, fw_event); in _mpt3sas_fw_work()
7120 _scsih_sas_ir_physical_disk_event(ioc, fw_event); in _mpt3sas_fw_work()
7123 _scsih_sas_ir_operation_status_event(ioc, fw_event); in _mpt3sas_fw_work()
7126 _scsih_fw_event_free(ioc, fw_event); in _mpt3sas_fw_work()
7143 struct fw_event_work *fw_event = container_of(work, in _firmware_event_work() local
7146 _mpt3sas_fw_work(fw_event->ioc, fw_event); in _firmware_event_work()
7166 struct fw_event_work *fw_event; in mpt3sas_scsih_event_callback() local
7242 fw_event = kzalloc(sizeof(*fw_event) + sz, GFP_ATOMIC); in mpt3sas_scsih_event_callback()
7243 if (!fw_event) { in mpt3sas_scsih_event_callback()
7249 memcpy(fw_event->event_data, mpi_reply->EventData, sz); in mpt3sas_scsih_event_callback()
7250 fw_event->ioc = ioc; in mpt3sas_scsih_event_callback()
7251 fw_event->VF_ID = mpi_reply->VF_ID; in mpt3sas_scsih_event_callback()
7252 fw_event->VP_ID = mpi_reply->VP_ID; in mpt3sas_scsih_event_callback()
7253 fw_event->event = event; in mpt3sas_scsih_event_callback()
7254 _scsih_fw_event_add(ioc, fw_event); in mpt3sas_scsih_event_callback()