linux/drivers/net/ipa
Alex Elder 724c2d7436 net: ipa: don't use ipa_clock_get() in "ipa_modem.c"
When we open or close the modem network device we need to ensure the
hardware is powered.  Replace the callers of ipa_clock_get() found
in ipa_open() and ipa_stop() with calls to pm_runtime_get_sync().
If an error is returned, simply return that error to the caller
(without any error or warning message).  This could conceivably
occur if the function was called while the system was suspended,
but that really shouldn't happen.  Replace corresponding calls to
ipa_clock_put() with pm_runtime_put() also.

If the modem crashes we also need to ensure the hardware is powered
to recover.  If getting power returns an error there's not much we
can do, but at least report the error.  (Ideally the remoteproc SSR
code would ensure the AP was not suspended when it sends the
notification, but that is not (yet) the case.)

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-08-20 14:45:47 +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: fix TX queue race 2021-08-20 14:43:39 +01:00
ipa_clock.h net: ipa: fix TX queue race 2021-08-20 14:43:39 +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: don't use ipa_clock_get() in "ipa_main.c" 2021-08-20 14:45:47 +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: don't use ipa_clock_get() in "ipa_modem.c" 2021-08-20 14:45:47 +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: don't use ipa_clock_get() in "ipa_smp2p.c" 2021-08-20 14:45:47 +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: don't use ipa_clock_get() in "ipa_uc.c" 2021-08-20 14:45:47 +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