Lines Matching refs:fw_event
1605 esas2r_free_fw_event(struct esas2r_fw_event_work *fw_event) in esas2r_free_fw_event() argument
1608 struct esas2r_adapter *a = fw_event->a; in esas2r_free_fw_event()
1611 list_del(&fw_event->list); in esas2r_free_fw_event()
1612 kfree(fw_event); in esas2r_free_fw_event()
1709 static void esas2r_send_ae_event(struct esas2r_fw_event_work *fw_event) in esas2r_send_ae_event() argument
1711 struct esas2r_vda_ae *ae = (struct esas2r_vda_ae *)fw_event->data; in esas2r_send_ae_event()
1791 struct esas2r_fw_event_work *fw_event = in esas2r_firmware_event_work() local
1794 struct esas2r_adapter *a = fw_event->a; in esas2r_firmware_event_work()
1796 u16 target_id = *(u16 *)&fw_event->data[0]; in esas2r_firmware_event_work()
1801 switch (fw_event->type) { in esas2r_firmware_event_work()
1819 esas2r_send_ae_event(fw_event); in esas2r_firmware_event_work()
1824 esas2r_free_fw_event(fw_event); in esas2r_firmware_event_work()
1832 struct esas2r_fw_event_work *fw_event; in esas2r_queue_fw_event() local
1835 fw_event = kzalloc(sizeof(struct esas2r_fw_event_work), GFP_ATOMIC); in esas2r_queue_fw_event()
1836 if (!fw_event) { in esas2r_queue_fw_event()
1844 (struct esas2r_vda_ae *)fw_event->data; in esas2r_queue_fw_event()
1851 memcpy(fw_event->data, data, data_sz); in esas2r_queue_fw_event()
1854 fw_event->type = type; in esas2r_queue_fw_event()
1855 fw_event->a = a; in esas2r_queue_fw_event()
1858 list_add_tail(&fw_event->list, &a->fw_event_list); in esas2r_queue_fw_event()
1859 INIT_DELAYED_WORK(&fw_event->work, esas2r_firmware_event_work); in esas2r_queue_fw_event()
1861 smp_processor_id(), a->fw_event_q, &fw_event->work, in esas2r_queue_fw_event()