linux/drivers/net/ipa
Alex Elder a96e73fa12 net: ipa: re-enable transmit in PM WQ context
Create a new work structure in the modem private data, and use it to
re-enable the modem network device transmit queue when resuming.

This is needed by the next patch, which stops the TX queue if IPA
power isn't active when a transmit request arrives.  Packets will
start arriving the instant the TX queue is enabled, but resuming
isn't complete until ipa_modem_resume() returns.  This way we're
sure to be resumed before transmits are allowed again.

Cancel it before calling ipa_stop() in ipa_modem_stop() to ensure
the transmit queue restart completes before it gets stopped there.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-08-14 14:13:38 +01:00
..
gsi_private.h net: ipa: DMA addresses are nicely aligned 2021-03-28 18:12:03 -07:00
gsi_reg.h net: ipa: inter-EE interrupts aren't always available 2021-06-21 12:30:59 -07:00
gsi_trans.c net: ipa: use WARN_ON() rather than assertions 2021-07-26 22:38:11 +01:00
gsi_trans.h net: ipa: fix all kernel-doc warnings 2021-03-28 18:12:03 -07:00
gsi.c net: ipa: disable GSI interrupts while suspended 2021-08-04 10:12:05 +01:00
gsi.h net: ipa: disable GSI interrupts while suspended 2021-08-04 10:12:05 +01:00
ipa_clock.c net: ipa: distinguish system from runtime suspend 2021-08-14 14:13:38 +01:00
ipa_clock.h net: ipa: enable wakeup in ipa_power_setup() 2021-08-14 14:13:38 +01:00
ipa_cmd.c net: ipa: use WARN_ON() rather than assertions 2021-07-26 22:38:11 +01:00
ipa_cmd.h net: ipa: kill the remaining conditional validation code 2021-07-26 22:38:11 +01:00
ipa_data-v3.1.c net: ipa: add IPA v3.1 configuration data 2021-06-21 12:31:00 -07:00
ipa_data-v3.5.1.c net: ipa: don't index mem data array by ID 2021-06-10 14:50:08 -07:00
ipa_data-v4.2.c net: ipa: don't index mem data array by ID 2021-06-10 14:50:08 -07:00
ipa_data-v4.5.c net: ipa: enable inline checksum offload for IPA v4.5+ 2021-07-26 22:56:34 +01:00
ipa_data-v4.9.c net: ipa: fix IPA v4.9 interconnects 2021-08-05 11:01:16 +01:00
ipa_data-v4.11.c net: ipa: enable inline checksum offload for IPA v4.5+ 2021-07-26 22:56:34 +01:00
ipa_data.h net: ipa: add IPA v3.1 configuration data 2021-06-21 12:31:00 -07:00
ipa_endpoint.c net: ipa: use gsi->version for channel suspend/resume 2021-08-04 10:12:05 +01:00
ipa_endpoint.h net: ipa: three small fixes 2021-04-09 20:57:26 -07:00
ipa_gsi.c net: ipa: include declarations in "ipa_gsi.c" 2020-07-07 12:43:18 -07:00
ipa_gsi.h net: ipa: fix kerneldoc comments 2020-07-13 17:11:53 -07:00
ipa_interrupt.c net: ipa: have ipa_clock_get() return a value 2021-08-11 13:31:55 +01:00
ipa_interrupt.h net: ipa: set up IPA interrupts earlier 2021-07-26 23:09:18 +01:00
ipa_main.c net: ipa: enable wakeup in ipa_power_setup() 2021-08-14 14:13:38 +01:00
ipa_mem.c net: ipa: don't index mem data array by ID 2021-06-10 14:50:08 -07:00
ipa_mem.h net: ipa: don't index mem data array by ID 2021-06-10 14:50:08 -07:00
ipa_modem.c net: ipa: re-enable transmit in PM WQ context 2021-08-14 14:13:38 +01:00
ipa_modem.h net: ipa: kill ipa_modem_setup() 2021-07-26 23:09:18 +01:00
ipa_qmi_msg.c net: ipa: extend the INDICATION_REGISTER request 2021-03-16 11:17:59 -07:00
ipa_qmi_msg.h net: ipa: extend the INDICATION_REGISTER request 2021-03-16 11:17:59 -07:00
ipa_qmi.c net: ipa: kill ipa_modem_setup() 2021-07-26 23:09:18 +01:00
ipa_qmi.h net: ipa: kill ipa_modem_setup() 2021-07-26 23:09:18 +01:00
ipa_reg.c
ipa_reg.h net: ipa: use WARN_ON() rather than assertions 2021-07-26 22:38:11 +01:00
ipa_resource.c net: ipa: kill the remaining conditional validation code 2021-07-26 22:38:11 +01:00
ipa_resource.h net: ipa: get rid of empty IPA functions 2021-04-09 20:57:25 -07:00
ipa_smp2p.c net: ipa: kill ipa_clock_get_additional() 2021-08-11 13:31:56 +01:00
ipa_smp2p.h net: ipa: fix all kernel-doc warnings 2021-03-28 18:12:03 -07:00
ipa_sysfs.c net: ipa: introduce sysfs code 2021-06-11 14:13:18 -07:00
ipa_sysfs.h net: ipa: introduce sysfs code 2021-06-11 14:13:18 -07:00
ipa_table.c net: ipa: use WARN_ON() rather than assertions 2021-07-26 22:38:11 +01:00
ipa_table.h net: ipa: always validate filter and route tables 2021-07-26 22:38:11 +01:00
ipa_uc.c net: ipa: have ipa_clock_get() return a value 2021-08-11 13:31:55 +01:00
ipa_uc.h net: ipa: introduce ipa_uc_clock() 2021-07-26 23:09:18 +01:00
ipa_version.h net: ipa: introduce sysfs code 2021-06-11 14:13:18 -07:00
ipa.h net: ipa: move IPA flags field 2021-08-05 11:27:05 +01:00
Kconfig net: ipa: switch to version based configuration 2021-03-28 18:12:03 -07:00
Makefile net: ipa: kill the remaining conditional validation code 2021-07-26 22:38:11 +01:00