From: asheplyakov@yandex.ru To: devel@lists.altlinux.org Cc: Vitaly Chikunov <vt@altlinux.org>, Igor Chudov <nir@basealt.ru>, Alexey Sheplyakov <asheplyakov@altlinux.org>, Evgeny Sinelnikov <sin@basealt.ru> Subject: [devel] [PATCH 21/35] pm: disable all sleep states on Baikal-M based boards Date: Fri, 20 May 2022 20:28:35 +0400 Message-ID: <20220520162849.1554351-22-asheplyakov@yandex.ru> (raw) In-Reply-To: <20220520162849.1554351-1-asheplyakov@yandex.ru> From: Alexey Sheplyakov <asheplyakov@altlinux.org> These days desktop environments try to put computer into a sleep state after a certain period of inactivity. TF307 board is able to enter a sleep state, however it does *NOT* wakeup via power button or keyboard/mouse. Apparently the only wakeup sources on TF307 board are - Real time clock (RTC) - Ethernet Surprisingly BMC (board management controller) is NOT a wakeup source. Also tp_bmc driver does not use interrupts, and polls the device instead. Perhaps BMC is unable to generate interrupts at all? To avoid the problem disable all sleep states (including s2idle) on Baikal-M systems X-DONTUPSTREAM X-feature-Baikal-M --- kernel/power/suspend.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/kernel/power/suspend.c b/kernel/power/suspend.c index 6fcdee7e87a5..99298e393d48 100644 --- a/kernel/power/suspend.c +++ b/kernel/power/suspend.c @@ -30,6 +30,7 @@ #include <trace/events/power.h> #include <linux/compiler.h> #include <linux/moduleparam.h> +#include <linux/of.h> #include "power.h" @@ -236,6 +237,17 @@ EXPORT_SYMBOL_GPL(suspend_valid_only_mem); static bool sleep_state_supported(suspend_state_t state) { +#ifdef CONFIG_OF + if (of_device_is_compatible(of_root, "baikal,baikal-m")) { + /* XXX: there are no wakeup sources except RTC and Ethernet + * on BE-M1000 based boards. In other words, no way to wakeup + * system via the keyboard or power button. + * Thus even s2idle is unusable on BE-M1000 systems. + */ + pr_info("%s: no useful wakeup sources on Baikal-M", __func__); + return false; + } +#endif return state == PM_SUSPEND_TO_IDLE || valid_state(state); } -- 2.32.0
next prev parent reply other threads:[~2022-05-20 16:28 UTC|newest] Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-05-20 16:28 [devel] kernel-image-un-def: Baikal-M asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 01/35] net: stmmac: inital support of Baikal-T1/M SoCs GMAC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 02/35] dt-bindings: dwmac: Add bindings for Baikal-T1/M SoCs asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 03/35] net: stmmac: custom mdio reset for some Baikal-M boards asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 04/35] net: dwmac-baikal: added compatible strings asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 05/35] hwmon: bt1-pvt: access registers via pvt_{readl, writel} helpers asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 06/35] hwmon: bt1-pvt: define pvt_readl/pvt_writel for Baikal-M SoC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 07/35] hwmon: bt1-pvt: adjusted probing " asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 08/35] hwmon: bt1-pvt: added compatible baikal,pvt asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 09/35] clk: added Baikal-M clock management unit driver asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 10/35] cpufreq-dt: don't load on Baikal-M SoC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 11/35] usb: dwc3: of-simple: added compatible string for " asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 12/35] arm64: Enable armv8 based Baikal-M SoC support asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 13/35] drm: new bridge driver - stdp4028 asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 14/35] drm: added Baikal-M SoC video display unit driver asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 15/35] dw-hdmi-ahb-audio: support Baikal-M SoC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 16/35] Added TF307/TF306 board management controller driver asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 17/35] ALSA: hda: Baikal-M support asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 18/35] [rejected] serial: 8250_dw: verify clock rate in dw8250_set_termios asheplyakov 2022-05-20 16:53 ` Andy Shevchenko 2022-05-20 16:28 ` [devel] [PATCH 19/35] drm/panfrost: forcibly set dma-coherent on Baikal-M asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 20/35] drm/panfrost: disable devfreq " asheplyakov 2022-05-20 16:28 ` asheplyakov [this message] 2022-05-20 16:28 ` [devel] [PATCH 22/35] arm64-stub: fixed secondary cores boot on Baikal-M SoC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 23/35] efi-rtc: avoid calling efi.get_time " asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 24/35] net: fwnode_get_phy_id: consider all compatible strings asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 25/35] (BROKEN) dwc-i2s: support Baikal-M SoC asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 26/35] input: added TF307 serio PS/2 emulator driver asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 27/35] arm64: added Baikal-M SoC and TF307 board device tree asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 28/35] arm64: device tree: baikal: mark GPU as dma-coherent asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 29/35] arm64: device tree: Baikal-M: fixed PHY binding description asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 30/35] arm64: device tree: Baikal-M: fixed gpio alias asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 31/35] arm64: device tree: Baikal-M: fixed GPU opp_table asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 32/35] arm64: device tree: Baikal-M: fixed CPUs opp_table asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 33/35] arm64: defconfig for Baikal-M support testing asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 34/35] config-aarch64: enable more Baikal-M related drivers asheplyakov 2022-05-20 16:28 ` [devel] [PATCH 35/35] 1:5.17.9-alt2 asheplyakov 2022-05-21 4:04 ` P X 2022-05-21 16:50 ` Alexey Sheplyakov 2022-05-21 16:55 ` [devel] devel-kernel@ Антон Мидюков 2022-05-22 5:51 ` [devel] [PATCH 35/35] 1:5.17.9-alt2 Dmitry V. Levin 2022-05-23 8:51 ` Alexey Sheplyakov 2022-05-23 9:58 ` Dmitry V. Levin 2022-05-23 11:21 ` Alexey Gladkov 2022-05-23 9:47 ` [devel] Baikal-M patches for et101, aqbm1000, tf307 Evgeny Sinelnikov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220520162849.1554351-22-asheplyakov@yandex.ru \ --to=asheplyakov@yandex.ru \ --cc=asheplyakov@altlinux.org \ --cc=devel@lists.altlinux.org \ --cc=nir@basealt.ru \ --cc=sin@basealt.ru \ --cc=vt@altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git