From patchwork Tue Jul 16 08:35:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1132519 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="Ki9QHBg4"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45ntyM46NVz9s3l for ; Tue, 16 Jul 2019 18:35:39 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 9C506C21DA1; Tue, 16 Jul 2019 08:35:35 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 1B184C21C4A; Tue, 16 Jul 2019 08:35:33 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id F131CC21BE5; Tue, 16 Jul 2019 08:35:31 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150049.outbound.protection.outlook.com [40.107.15.49]) by lists.denx.de (Postfix) with ESMTPS id 5A2D2C21C29 for ; Tue, 16 Jul 2019 08:35:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7S0VtrqZF7LOVyuPbEjV0CfrTWqhqKaB4jot+bzH66s=; b=Ki9QHBg4PsaqHXlEfRRdMbWOxCi4FfLQZvac6aGiSYG3zfMupL5JeEdNSCbdOCxgaPq0qpxz+3/wjgWjRYeXq9uCfWDqeIDrpBZGGX1x8Yv6BKr+LbqrgasSp1ewpScrgDC1YXHontJ/jmkETtSSEPfM1ryKkob2pYCtzwTN8LY= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4692.eurprd04.prod.outlook.com (20.177.41.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2052.19; Tue, 16 Jul 2019 08:35:30 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::2023:c0e5:8a63:2e47]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::2023:c0e5:8a63:2e47%5]) with mapi id 15.20.2052.020; Tue, 16 Jul 2019 08:35:30 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 1/4] imx8: scu_api: add sc_pm_get_resource_power_mode Thread-Index: AQHVO7FtyNRy1mswe0mOc9E3m4CkzQ== Date: Tue, 16 Jul 2019 08:35:30 +0000 Message-ID: <20190716085034.30990-1-peng.fan@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.16.4 x-clientproxiedby: HK0PR03CA0072.apcprd03.prod.outlook.com (2603:1096:203:52::36) To AM0PR04MB4481.eurprd04.prod.outlook.com (2603:10a6:208:70::15) authentication-results: spf=none (sender IP is ) smtp.mailfrom=peng.fan@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [119.31.174.71] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: fcc1ffc5-20d8-49fe-0bfc-08d709c88f49 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4692; x-ms-traffictypediagnostic: AM0PR04MB4692: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:47; x-forefront-prvs: 0100732B76 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(39860400002)(136003)(396003)(366004)(376002)(346002)(199004)(189003)(8676002)(8936002)(66066001)(6506007)(386003)(52116002)(81166006)(81156014)(102836004)(305945005)(14454004)(316002)(66556008)(66476007)(2906002)(110136005)(186003)(64756008)(66946007)(66446008)(26005)(256004)(6116002)(54906003)(3846002)(6436002)(53936002)(71190400001)(476003)(71200400001)(44832011)(2501003)(6512007)(486006)(4326008)(7736002)(6486002)(5660300002)(99286004)(478600001)(36756003)(50226002)(1076003)(25786009)(86362001)(2616005)(68736007); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4692; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: hPSJB90oeCvUn+sNTmxQHlNMd0T2Zeppw9oIHGok+sFTnp1GMhBcNmZgQjSz0WZ3oWU2Q79XbdLU2U3whVORsngTWImM48BHf8JQw5Z3SqvIjrn1RZWg4J7am6CkwAHSqh9yk9tUyRCABM8rHzni7Paz7BOAL72TN6DRzhIZRhKpnxpjT6BTTPKAQboKJ6ifjETv65BhOZ0GdLXPXVM+vm5Am3yMR2sqjYhZ3klOtkVoOaIUrNFcZYPqPOHflJXkAqX5O+jhH+expGo7YGA8dJW86bYaO6MB7qZ8sEWXGYnSwWsWFMTGw4i9Xll4dfsozr4fij5in9ISqhtV1KLtA3vxDMHBDh8ZPbNGMf6bOuhZpAD6HoV6Ywvn2WnxyWoEA96xPEMZDYcrkQd072OSvqFIeIsAB3MWFZPgptUkQBY= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: fcc1ffc5-20d8-49fe-0bfc-08d709c88f49 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jul 2019 08:35:30.2670 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: peng.fan@nxp.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB4692 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 1/4] imx8: scu_api: add sc_pm_get_resource_power_mode X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add sc_pm_get_resource_power_mode to get resource power mode Signed-off-by: Peng Fan --- arch/arm/include/asm/arch-imx8/sci/sci.h | 2 ++ drivers/misc/imx8/scu_api.c | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/arch/arm/include/asm/arch-imx8/sci/sci.h b/arch/arm/include/asm/arch-imx8/sci/sci.h index 97377697f0..b73cda2286 100644 --- a/arch/arm/include/asm/arch-imx8/sci/sci.h +++ b/arch/arm/include/asm/arch-imx8/sci/sci.h @@ -58,6 +58,8 @@ static inline int sc_err_to_linux(sc_err_t err) /* PM API*/ int sc_pm_set_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_power_mode_t mode); +int sc_pm_get_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, + sc_pm_power_mode_t *mode); int sc_pm_set_clock_rate(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_clk_t clk, sc_pm_clock_rate_t *rate); int sc_pm_get_clock_rate(sc_ipc_t ipc, sc_rsrc_t resource, sc_pm_clk_t clk, diff --git a/drivers/misc/imx8/scu_api.c b/drivers/misc/imx8/scu_api.c index d9c4d5d784..b181c6a29f 100644 --- a/drivers/misc/imx8/scu_api.c +++ b/drivers/misc/imx8/scu_api.c @@ -119,6 +119,31 @@ int sc_pm_set_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, return ret; } +int sc_pm_get_resource_power_mode(sc_ipc_t ipc, sc_rsrc_t resource, + sc_pm_power_mode_t *mode) +{ + struct udevice *dev = gd->arch.scu_dev; + struct sc_rpc_msg_s msg; + int size = sizeof(struct sc_rpc_msg_s); + int ret; + + RPC_VER(&msg) = SC_RPC_VERSION; + RPC_SVC(&msg) = (u8)(SC_RPC_SVC_PM); + RPC_FUNC(&msg) = (u8)(PM_FUNC_GET_RESOURCE_POWER_MODE); + RPC_U16(&msg, 0U) = (u16)(resource); + RPC_SIZE(&msg) = 2U; + + ret = misc_call(dev, SC_FALSE, &msg, size, &msg, size); + if (ret) + printf("%s: resource:%d: res:%d\n", + __func__, resource, RPC_R8(&msg)); + + if (mode) + *mode = RPC_U8(&msg, 0U); + + return ret; +} + /* PAD */ int sc_pad_set(sc_ipc_t ipc, sc_pad_t pad, u32 val) {