net: wwan: iosm: fixes unable to send AT command during mbim tx
ev_cdev_write_pending flag is preventing a TX message post for AT port while MBIM transfer is ongoing. Removed the unnecessary check around control port TX transfer. Signed-off-by: M Chetan Kumar <m.chetan.kumar@linux.intel.com> Reviewed-by: Sergey Ryazanov <ryazanov.s.a@gmail.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
07d3f2743d
commit
383451ceb0
|
@ -1270,7 +1270,6 @@ struct iosm_imem *ipc_imem_init(struct iosm_pcie *pcie, unsigned int device_id,
|
||||||
|
|
||||||
ipc_imem->pci_device_id = device_id;
|
ipc_imem->pci_device_id = device_id;
|
||||||
|
|
||||||
ipc_imem->ev_cdev_write_pending = false;
|
|
||||||
ipc_imem->cp_version = 0;
|
ipc_imem->cp_version = 0;
|
||||||
ipc_imem->device_sleep = IPC_HOST_SLEEP_ENTER_SLEEP;
|
ipc_imem->device_sleep = IPC_HOST_SLEEP_ENTER_SLEEP;
|
||||||
|
|
||||||
|
|
|
@ -336,8 +336,6 @@ enum ipc_phase {
|
||||||
* process the irq actions.
|
* process the irq actions.
|
||||||
* @flag: Flag to monitor the state of driver
|
* @flag: Flag to monitor the state of driver
|
||||||
* @td_update_timer_suspended: if true then td update timer suspend
|
* @td_update_timer_suspended: if true then td update timer suspend
|
||||||
* @ev_cdev_write_pending: 0 means inform the IPC tasklet to pass
|
|
||||||
* the accumulated uplink buffers to CP.
|
|
||||||
* @ev_mux_net_transmit_pending:0 means inform the IPC tasklet to pass
|
* @ev_mux_net_transmit_pending:0 means inform the IPC tasklet to pass
|
||||||
* @reset_det_n: Reset detect flag
|
* @reset_det_n: Reset detect flag
|
||||||
* @pcie_wake_n: Pcie wake flag
|
* @pcie_wake_n: Pcie wake flag
|
||||||
|
@ -375,7 +373,6 @@ struct iosm_imem {
|
||||||
u8 ev_irq_pending[IPC_IRQ_VECTORS];
|
u8 ev_irq_pending[IPC_IRQ_VECTORS];
|
||||||
unsigned long flag;
|
unsigned long flag;
|
||||||
u8 td_update_timer_suspended:1,
|
u8 td_update_timer_suspended:1,
|
||||||
ev_cdev_write_pending:1,
|
|
||||||
ev_mux_net_transmit_pending:1,
|
ev_mux_net_transmit_pending:1,
|
||||||
reset_det_n:1,
|
reset_det_n:1,
|
||||||
pcie_wake_n:1;
|
pcie_wake_n:1;
|
||||||
|
|
|
@ -41,7 +41,6 @@ void ipc_imem_sys_wwan_close(struct iosm_imem *ipc_imem, int if_id,
|
||||||
static int ipc_imem_tq_cdev_write(struct iosm_imem *ipc_imem, int arg,
|
static int ipc_imem_tq_cdev_write(struct iosm_imem *ipc_imem, int arg,
|
||||||
void *msg, size_t size)
|
void *msg, size_t size)
|
||||||
{
|
{
|
||||||
ipc_imem->ev_cdev_write_pending = false;
|
|
||||||
ipc_imem_ul_send(ipc_imem);
|
ipc_imem_ul_send(ipc_imem);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -50,11 +49,6 @@ static int ipc_imem_tq_cdev_write(struct iosm_imem *ipc_imem, int arg,
|
||||||
/* Through tasklet to do sio write. */
|
/* Through tasklet to do sio write. */
|
||||||
static int ipc_imem_call_cdev_write(struct iosm_imem *ipc_imem)
|
static int ipc_imem_call_cdev_write(struct iosm_imem *ipc_imem)
|
||||||
{
|
{
|
||||||
if (ipc_imem->ev_cdev_write_pending)
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
ipc_imem->ev_cdev_write_pending = true;
|
|
||||||
|
|
||||||
return ipc_task_queue_send_task(ipc_imem, ipc_imem_tq_cdev_write, 0,
|
return ipc_task_queue_send_task(ipc_imem, ipc_imem_tq_cdev_write, 0,
|
||||||
NULL, 0, false);
|
NULL, 0, false);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue