@ -75,7 +75,8 @@ static struct mhi_dev *mhi_ctx;
static void mhi_hwc_cb ( void * priv , enum ipa_mhi_event_type event ,
unsigned long data ) ;
static void mhi_ring_init_cb ( void * user_data ) ;
static void mhi_update_state_info ( uint32_t uevent_idx , enum mhi_ctrl_info info ) ;
static void mhi_update_state_info ( enum mhi_ctrl_info info ) ;
static void mhi_update_state_info_ch ( uint32_t ch_id , enum mhi_ctrl_info info ) ;
static int mhi_deinit ( struct mhi_dev * mhi ) ;
static void mhi_dev_resume_init_with_link_up ( struct ep_pcie_notify * notify ) ;
static int mhi_dev_pcie_notify_event ;
@ -698,8 +699,7 @@ static int mhi_enable_int(void)
pr_err ( " Failed to enable command db: %d \n " , rc ) ;
return rc ;
}
mhi_update_state_info ( MHI_DEV_UEVENT_CTRL ,
MHI_STATE_CONNECTED ) ;
mhi_update_state_info ( MHI_STATE_CONNECTED ) ;
if ( ! mhi_ctx - > mhi_int )
ep_pcie_mask_irq_event ( mhi_ctx - > phandle ,
EP_PCIE_INT_EVT_MHI_A7 , true ) ;
@ -1345,7 +1345,7 @@ send_start_completion_event:
if ( rc )
pr_err ( " Error sending command completion event \n " ) ;
mhi_update_state_info ( ch_id , MHI_STATE_CONNECTED ) ;
mhi_update_state_info_ch ( ch_id , MHI_STATE_CONNECTED ) ;
/* Trigger callback to clients */
mhi_dev_trigger_cb ( ch_id ) ;
mhi_uci_chan_state_notify ( mhi , ch_id , MHI_STATE_CONNECTED ) ;
@ -1401,7 +1401,7 @@ send_start_completion_event:
pr_err ( " stop event send failed \n " ) ;
mutex_unlock ( & ch - > ch_lock ) ;
mhi_update_state_info ( ch_id , MHI_STATE_DISCONNECTED ) ;
mhi_update_state_info_ch ( ch_id , MHI_STATE_DISCONNECTED ) ;
/* Trigger callback to clients */
mhi_dev_trigger_cb ( ch_id ) ;
mhi_uci_chan_state_notify ( mhi , ch_id ,
@ -1478,7 +1478,7 @@ send_start_completion_event:
if ( rc )
pr_err ( " Error sending command completion event \n " ) ;
mutex_unlock ( & ch - > ch_lock ) ;
mhi_update_state_info ( ch_id , MHI_STATE_DISCONNECTED ) ;
mhi_update_state_info_ch ( ch_id , MHI_STATE_DISCONNECTED ) ;
mhi_dev_trigger_cb ( ch_id ) ;
mhi_uci_chan_state_notify ( mhi , ch_id ,
MHI_STATE_DISCONNECTED ) ;
@ -2159,7 +2159,7 @@ int mhi_dev_resume(struct mhi_dev *mhi)
mhi_ctx - > write_to_host ( mhi , & data_transfer , NULL ,
MHI_DEV_DMA_SYNC ) ;
}
mhi_update_state_info ( MHI_DEV_UEVENT_CTRL , MHI_ STATE_CONNECTED ) ;
mhi_update_state_info ( MHI_STATE_CONNECTED ) ;
atomic_set ( & mhi - > is_suspended , 0 ) ;
@ -2855,7 +2855,7 @@ static void mhi_dev_enable(struct work_struct *work)
enable_irq ( mhi_ctx - > mhi_irq ) ;
}
mhi_update_state_info ( MHI_DEV_UEVENT_CTRL , MHI_ STATE_CONFIGURED ) ;
mhi_update_state_info ( MHI_STATE_CONFIGURED ) ;
}
static void mhi_ring_init_cb ( void * data )
@ -2913,22 +2913,22 @@ int mhi_register_state_cb(void (*mhi_state_cb)
}
EXPORT_SYMBOL ( mhi_register_state_cb ) ;
static void mhi_update_state_info ( uint32_t uevent_idx , enum mhi_ctrl_info info )
static void mhi_update_state_info_ch ( uint32_t ch_id , enum mhi_ctrl_info info )
{
struct mhi_dev_client_cb_reason reason ;
if ( uevent_idx = = MHI_DEV_UEVENT_CTRL )
mhi_ctx - > ctrl_info = info ;
channel_state_info [ uevent_idx ] . ctrl_info = info ;
if ( uevent_idx = = MHI_CLIENT_QMI_OUT | |
uevent_idx = = MHI_CLIENT_QMI_IN ) {
channel_state_info [ ch_id ] . ctrl_info = info ;
if ( ch_id = = MHI_CLIENT_QMI_OUT | | ch_id = = MHI_CLIENT_QMI_IN ) {
/* For legacy reasons for QTI client */
reason . reason = MHI_DEV_CTRL_UPDATE ;
uci_ctrl_update ( & reason ) ;
}
}
static void mhi_update_state_info ( enum mhi_ctrl_info info )
{
mhi_ctx - > ctrl_info = info ;
}
int mhi_ctrl_state_info ( uint32_t idx , uint32_t * info )
@ -3467,8 +3467,7 @@ static int mhi_dev_probe(struct platform_device *pdev)
mutex_init ( & mhi_ctx - > mhi_lock ) ;
mhi_uci_init ( ) ;
mhi_update_state_info ( MHI_DEV_UEVENT_CTRL ,
MHI_STATE_CONFIGURED ) ;
mhi_update_state_info ( MHI_STATE_CONFIGURED ) ;
}
if ( mhi_ctx - > use_edma ) {