Hello Ulf,
On Monday 22 March 2021 13:20:35 CET Ulf Hansson wrote:
On Mon, 15 Mar 2021 at 14:25, Jerome Pouiller
[off-list ref] wrote:
quoted
From: Jérôme Pouiller <jerome.pouiller@silabs.com>
Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
---
drivers/net/wireless/silabs/wfx/bus_sdio.c | 259 +++++++++++++++++++++
1 file changed, 259 insertions(+)
create mode 100644 drivers/net/wireless/silabs/wfx/bus_sdio.c
[...]
quoted
+static const struct sdio_device_id wfx_sdio_ids[] = {
+ { SDIO_DEVICE(SDIO_VENDOR_ID_SILABS, SDIO_DEVICE_ID_SILABS_WF200) },
+ { },
+};
+MODULE_DEVICE_TABLE(sdio, wfx_sdio_ids);
+
+struct sdio_driver wfx_sdio_driver = {
+ .name = "wfx-sdio",
+ .id_table = wfx_sdio_ids,
+ .probe = wfx_sdio_probe,
+ .remove = wfx_sdio_remove,
+ .drv = {
+ .owner = THIS_MODULE,
+ .of_match_table = wfx_sdio_of_match,
It's not mandatory to support power management, like system
suspend/resume. However, as this looks like this is a driver for an
embedded SDIO device, you probably want this.
If that is the case, please assign the dev_pm_ops here and implement
the ->suspend|resume() callbacks.
I have no platform to test suspend/resume, so I have only a
theoretical understanding of this subject.
I understanding is that with the current implementation, the
device will be powered off on suspend and then totally reset
(including reloading of the firmware) on resume. I am wrong?
This behavior sounds correct to me. You would expect something
more?
--
Jérôme Pouiller