From patchwork Fri Apr 12 07:54:50 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084456 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="FYV9KPcX"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVYK0jGCz9s47 for ; Fri, 12 Apr 2019 17:55:01 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C55CFC21E0D; Fri, 12 Apr 2019 07:54:59 +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=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 99ABDC21C2C; Fri, 12 Apr 2019 07:54:56 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 5DAA3C21CB6; Fri, 12 Apr 2019 07:54:55 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70081.outbound.protection.outlook.com [40.107.7.81]) by lists.denx.de (Postfix) with ESMTPS id 11D31C21C2C for ; Fri, 12 Apr 2019 07:54:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=AKyLaClw5wkSDhv4NwZ3+PWYUP1ujoLk+RVTn+zTlNM=; b=FYV9KPcXL7hyL1Bk1Tehlifm1+/GMv6TzYlpv7YUBNgftDrELyZ7sC1ViJ++DYV0bzBA+H+1hNSPGpbRpS36MTrUpbrjt22hejqUDNX37uRZDoq+yiLqrUxOevZIW8Ar+432/dniDuoTR9cdJeBHaK5AJyq1LMPRqik54YJAGxk= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB5843.eurprd04.prod.outlook.com (20.178.118.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.21; Fri, 12 Apr 2019 07:54:51 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:54:51 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 1/8] imx: sip: add call_imx_sip_ret2 Thread-Index: AQHU8QUBuAB/MsXkW0+fYAgdbvGPeg== Date: Fri, 12 Apr 2019 07:54:50 +0000 Message-ID: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 80bc0bcf-8acc-4cea-ff24-08d6bf1c242b x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB5843; x-ms-traffictypediagnostic: AM0PR04MB5843: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(396003)(346002)(376002)(136003)(366004)(189003)(199004)(2616005)(476003)(7736002)(6116002)(97736004)(3846002)(99286004)(68736007)(66066001)(81166006)(305945005)(8936002)(105586002)(71200400001)(50226002)(5660300002)(71190400001)(6436002)(106356001)(81156014)(8676002)(186003)(316002)(53936002)(14454004)(478600001)(25786009)(54906003)(2501003)(110136005)(256004)(6486002)(1076003)(36756003)(44832011)(102836004)(4326008)(52116002)(26005)(486006)(6512007)(6506007)(386003)(86362001)(2906002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB5843; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: 9urL7h8At00sEs5FkNmA3+PqmxTyrsxhZitEGQdW59dcrv2vvUEYikYP+U2WeQFyyHni2jtgAu/CjwwIGf7hifaszQagfhDB4z+8RjR8U31zF5jvoRTRUChAN69+xKlbx71j6H13g+s3qSpdJ6UdvL0+MNo6BQyuJTjefffdtUMhgAhPXIiH43RGKQk83eUoBFQhZtncUk0TXwC7QTGcmuhWWCeV0t6ZAPXJeUvqXEPtvMIhS2yAwo9ZLpDUwuxY31RCsl4Ly1bpf9ceHMKQ9n5OT8bhoTOjMMmajfN6ThI5onwxtUnnOUQK3nVU7GhFxnx2oTpAGCSP3OovneBbMout4QNsI4NsMn5B8QOBtEV1J7RTOjGyh5nI+ts+2BA7kPiVx7/VOwwwlpjjoaS53YFlov6zdJATbTHMBOW27DE= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 80bc0bcf-8acc-4cea-ff24-08d6bf1c242b X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:54:51.0259 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB5843 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 1/8] imx: sip: add call_imx_sip_ret2 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" This function will be used by i.MX8 fuse driver. Signed-off-by: Peng Fan --- arch/arm/include/asm/mach-imx/sys_proto.h | 3 +++ arch/arm/mach-imx/sip.c | 22 ++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/arch/arm/include/asm/mach-imx/sys_proto.h b/arch/arm/include/asm/mach-imx/sys_proto.h index d0f866b630..4925dd7894 100644 --- a/arch/arm/include/asm/mach-imx/sys_proto.h +++ b/arch/arm/include/asm/mach-imx/sys_proto.h @@ -134,4 +134,7 @@ int mxs_wait_mask_clr(struct mxs_register_32 *reg, u32 mask, u32 timeout); unsigned long call_imx_sip(unsigned long id, unsigned long reg0, unsigned long reg1, unsigned long reg2); +unsigned long call_imx_sip_ret2(unsigned long id, unsigned long reg0, + unsigned long *reg1, unsigned long reg2, + unsigned long reg3); #endif diff --git a/arch/arm/mach-imx/sip.c b/arch/arm/mach-imx/sip.c index 813c2ae5e1..968e7cf309 100644 --- a/arch/arm/mach-imx/sip.c +++ b/arch/arm/mach-imx/sip.c @@ -20,3 +20,25 @@ unsigned long call_imx_sip(unsigned long id, unsigned long reg0, return regs.regs[0]; } + +/* + * Do an SMC call to return 2 registers by having reg1 passed in by reference + */ +unsigned long call_imx_sip_ret2(unsigned long id, unsigned long reg0, + unsigned long *reg1, unsigned long reg2, + unsigned long reg3) +{ + struct pt_regs regs; + + regs.regs[0] = id; + regs.regs[1] = reg0; + regs.regs[2] = *reg1; + regs.regs[3] = reg2; + regs.regs[4] = reg3; + + smc_call(®s); + + *reg1 = regs.regs[1]; + + return regs.regs[0]; +} From patchwork Fri Apr 12 07:54:54 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084457 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="YKcVtkAv"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVYr4bV0z9s47 for ; Fri, 12 Apr 2019 17:55:28 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 397DEC21E70; Fri, 12 Apr 2019 07:55:18 +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=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 27389C21DF8; Fri, 12 Apr 2019 07:55:00 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 926EFC21D72; Fri, 12 Apr 2019 07:54:56 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70051.outbound.protection.outlook.com [40.107.7.51]) by lists.denx.de (Postfix) with ESMTPS id 22C77C21C2C for ; Fri, 12 Apr 2019 07:54:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K9a95+tQVBl2IvQwoi7hvkKXBuFqzHO4zEIAQ3Up6uI=; b=YKcVtkAvgnd0HzHhrspYPspsTo56BPUiOPLVxJV7aNvFqTWq9x8nmJsCTqf79bpoOdHuwtaVY7Fddwo2ZsVyl+XVNxAUoJ+3mG5hmBBb+HOpe9L1qBpFqK98x6ZhQ0hwIUwHxdcfUUn/tZfahUncKirUBQUI2uHMzb1R45VDZmM= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4609.eurprd04.prod.outlook.com (52.135.144.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.13; Fri, 12 Apr 2019 07:54:54 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:54:54 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 2/8] imx8: fuse: add fuse driver Thread-Index: AQHU8QUEkgkkWsFgC0C+yC/i4B8tyg== Date: Fri, 12 Apr 2019 07:54:54 +0000 Message-ID: <20190412080741.32412-2-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 9f56ce90-9d19-4d03-58fd-08d6bf1c2657 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4609; x-ms-traffictypediagnostic: AM0PR04MB4609: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(136003)(366004)(396003)(376002)(346002)(189003)(199004)(66066001)(36756003)(446003)(3846002)(386003)(106356001)(4326008)(5660300002)(97736004)(71200400001)(6506007)(71190400001)(14444005)(14454004)(53936002)(50226002)(1076003)(25786009)(256004)(105586002)(68736007)(8936002)(7736002)(44832011)(81156014)(54906003)(6116002)(11346002)(76176011)(8676002)(478600001)(6436002)(305945005)(6512007)(110136005)(26005)(2501003)(476003)(52116002)(2906002)(81166006)(2616005)(6486002)(102836004)(316002)(486006)(99286004)(86362001)(186003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4609; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: ipsd1tOYDYlWBaKnK8Pw/pKpuoUHn7OgJlzHiHzsELZhX12oy4NSWISXUesBcA2D6SZ8BZninUiRncubi0mILRZsDpMHxts+KCYqb+wLMau3buGW4eFpzEqK3KK5TT299yG54HPk+2MgnmyiYgtJfycgfGaDJV7EC6XjZo0licjj7G03TtJpFEddAdWW1bNh34w3s+r1BYkiMcXQImSUPNtuQgPNLmrrgSr04cS/bXrwFEdMkeoROHywXHRt/rdm3IvUVBgoEwL1PBG7Tspm2bpkclCJXUFqmN5UKaJ0iKf6HeNiGCHKZsulhnT2Pn6Jy/VFv0G+iEA0BmxlV3kxri8xM+/PUoc59s9t3bLEZAgmWCYvGBPmcuSzQ/EnL1poxZYxzaxVvg0sRdVRiqInpK+Yw7QSRZzOhlcIa+QWYrE= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9f56ce90-9d19-4d03-58fd-08d6bf1c2657 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:54:54.6899 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB4609 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 2/8] imx8: fuse: add fuse driver 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 fuse write for i.MX8 Signed-off-by: Peng Fan --- drivers/misc/imx8/Makefile | 1 + drivers/misc/imx8/fuse.c | 86 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 87 insertions(+) create mode 100644 drivers/misc/imx8/fuse.c diff --git a/drivers/misc/imx8/Makefile b/drivers/misc/imx8/Makefile index ee05893cbb..48fdb5b61c 100644 --- a/drivers/misc/imx8/Makefile +++ b/drivers/misc/imx8/Makefile @@ -1,3 +1,4 @@ # SPDX-License-Identifier: GPL-2.0+ obj-y += scu_api.o scu.o +obj-$(CONFIG_CMD_FUSE) += fuse.o diff --git a/drivers/misc/imx8/fuse.c b/drivers/misc/imx8/fuse.c new file mode 100644 index 0000000000..29d2256a22 --- /dev/null +++ b/drivers/misc/imx8/fuse.c @@ -0,0 +1,86 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright 2019 NXP + */ + +#include +#include +#include +#include +#include +#include + +DECLARE_GLOBAL_DATA_PTR; + +#define FSL_ECC_WORD_START_1 0x10 +#define FSL_ECC_WORD_END_1 0x10F + +#ifdef CONFIG_IMX8QXP +#define FSL_ECC_WORD_START_2 0x220 +#define FSL_ECC_WORD_END_2 0x31F + +#define FSL_QXP_FUSE_GAP_START 0x110 +#define FSL_QXP_FUSE_GAP_END 0x21F +#endif + +#define FSL_SIP_OTP_READ 0xc200000A +#define FSL_SIP_OTP_WRITE 0xc200000B + +int fuse_read(u32 bank, u32 word, u32 *val) +{ + return fuse_sense(bank, word, val); +} + +int fuse_sense(u32 bank, u32 word, u32 *val) +{ + unsigned long ret = 0, value = 0; + + if (bank != 0) { + printf("Invalid bank argument, ONLY bank 0 is supported\n"); + return -EINVAL; + } + + ret = call_imx_sip_ret2(FSL_SIP_OTP_READ, (unsigned long)word, &value, + 0, 0); + *val = (u32)value; + + return ret; +} + +int fuse_prog(u32 bank, u32 word, u32 val) +{ + if (bank != 0) { + printf("Invalid bank argument, ONLY bank 0 is supported\n"); + return -EINVAL; + } + + if (IS_ENABLED(CONFIG_IMX8QXP)) { + if (word >= FSL_QXP_FUSE_GAP_START && + word <= FSL_QXP_FUSE_GAP_END) { + printf("Invalid word argument for this SoC\n"); + return -EINVAL; + } + } + + if ((word >= FSL_ECC_WORD_START_1 && word <= FSL_ECC_WORD_END_1) || + (word >= FSL_ECC_WORD_START_2 && word <= FSL_ECC_WORD_END_2)) { + puts("Warning: Words in this index range have ECC protection\n" + "and can only be programmed once per word. Individual bit\n" + "operations will be rejected after the first one.\n" + "\n\n Really program this word? \n"); + + if (!confirm_yesno()) { + puts("Word programming aborted\n"); + return -EPERM; + } + } + + return call_imx_sip(FSL_SIP_OTP_WRITE, (unsigned long)word, + (unsigned long)val, 0); +} + +int fuse_override(u32 bank, u32 word, u32 val) +{ + printf("Override fuse to i.MX8 in u-boot is forbidden\n"); + return -EPERM; +} From patchwork Fri Apr 12 07:54:57 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084458 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="G+PjaSw9"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVZJ2Y7cz9s47 for ; Fri, 12 Apr 2019 17:55:52 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id E5A06C21DFB; Fri, 12 Apr 2019 07:55:36 +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=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 BCA8FC21E34; Fri, 12 Apr 2019 07:55:08 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 5CD3DC21E34; Fri, 12 Apr 2019 07:55:04 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70079.outbound.protection.outlook.com [40.107.7.79]) by lists.denx.de (Postfix) with ESMTPS id E9DC5C21E34 for ; Fri, 12 Apr 2019 07:54:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+6c/ZpApp/sJ/zO7ckHDMiSM4vWw/7cyWOd1YFGYZXg=; b=G+PjaSw98Kak5fejqqElM8+R+hHz3Emd5MQ2eGXjXPsqzuP439IZ2ZVFxVplibJdsreaJW1b47bORlz/lqnuEQFRQMV1AtIyLu55Q3iPU69BoeaEz+bsjX1TxqKlhQb0WmkKPSsG61tXxQA+H2FQmtLdpLwpkGPrlNwQy9nvTNc= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4609.eurprd04.prod.outlook.com (52.135.144.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.13; Fri, 12 Apr 2019 07:54:57 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:54:57 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 3/8] imx8qxp: mek: Enable CMD_FUSE Thread-Index: AQHU8QUF3N+nKcvjF0KVXoytpqcDHw== Date: Fri, 12 Apr 2019 07:54:57 +0000 Message-ID: <20190412080741.32412-3-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 22fe7e7d-453e-44a2-fac9-08d6bf1c2815 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4609; x-ms-traffictypediagnostic: AM0PR04MB4609: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(136003)(366004)(396003)(376002)(346002)(189003)(199004)(66066001)(36756003)(446003)(3846002)(386003)(106356001)(4326008)(5660300002)(97736004)(71200400001)(6506007)(4744005)(71190400001)(14454004)(53936002)(50226002)(1076003)(25786009)(256004)(105586002)(68736007)(8936002)(7736002)(44832011)(81156014)(54906003)(6116002)(11346002)(76176011)(8676002)(478600001)(6436002)(305945005)(6512007)(110136005)(26005)(2501003)(476003)(52116002)(2906002)(81166006)(2616005)(6486002)(102836004)(316002)(486006)(99286004)(86362001)(186003)(32563001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4609; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: j0fmM0fYQPYVFyTvA7TI06wFI4LFheKM0Dz5i3hCVCIuoPMOhn6jLquVsqzKmNDOzejhNyrqnxyecX/we4lpHt26rOlBwyYnWhNPE7sCYzyza+v+BGuEF+WuLmMKaPhu8dJW11P7kPd0z60EPBTB/8ZlIvaPPHSr2ndSDZgnnhuGJAWIU3PiOSnj03VfCERgxBr+OMfgQyfkvs1kjeBgNB/Ugk4OzheSjtbLDUMNEncj6YBl7HpjixVVh6831rlFiP3fuW97o7zVDQPZo3W+xBLWu3M4mxiA8Crms+n5xT1EXiOT7VkhrLv2gSQ7n53SACTG+5Z9ePRKlrmssozKwAQaFLABcZMPHcyUnqKmpDAk0WL2p1xoMx/CqgEr5jpcnZwpsZDwNj13GMBq3F+hGtQ7TXvESnpvUCWOh5M/V2s= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 22fe7e7d-453e-44a2-fac9-08d6bf1c2815 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:54:57.6795 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB4609 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 3/8] imx8qxp: mek: Enable CMD_FUSE 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" Enable CMD_FUSE for i.MX8QXP MEK Signed-off-by: Peng Fan --- configs/imx8qxp_mek_defconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig index a94998b8b5..14e9da386a 100644 --- a/configs/imx8qxp_mek_defconfig +++ b/configs/imx8qxp_mek_defconfig @@ -27,6 +27,7 @@ CONFIG_CMD_CPU=y # CONFIG_CMD_IMPORTENV is not set CONFIG_CMD_CLK=y CONFIG_CMD_DM=y +CONFIG_CMD_FUSE=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y From patchwork Fri Apr 12 07:55:00 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084459 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="OtEHZfHa"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVbC1NYFz9s47 for ; Fri, 12 Apr 2019 17:56:39 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C64EDC21E50; Fri, 12 Apr 2019 07:55:53 +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=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 34A3AC21E3E; Fri, 12 Apr 2019 07:55:16 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 47531C21E13; Fri, 12 Apr 2019 07:55:12 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70041.outbound.protection.outlook.com [40.107.7.41]) by lists.denx.de (Postfix) with ESMTPS id 25A70C21E4F for ; Fri, 12 Apr 2019 07:55:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dj77okqj2jykg3k4jniWuqp4z+QKSKciOBnHLKwz7m4=; b=OtEHZfHaCVM+a40OMMW5M04OpKOseuWZKgu3OsravYrr2LNfmrrA0bbnwqI50c6ekYNSbCgdjPDIu+G3aA+pSSW8bHgUjbSuvjbapAPR/AaU1j4watMdSrKbQNiFyOehDI2C1pJ36ZdFSDNd6e3w2rSjP+Ni8mx496JdjW54w6g= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4609.eurprd04.prod.outlook.com (52.135.144.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.13; Fri, 12 Apr 2019 07:55:00 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:55:00 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 4/8] misc: imx8: add sc_misc_get_temp Thread-Index: AQHU8QUHSlB2pKERjUGyIl06Rxr4wA== Date: Fri, 12 Apr 2019 07:55:00 +0000 Message-ID: <20190412080741.32412-4-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: b84423f6-e09e-423f-5ea3-08d6bf1c29e0 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4609; x-ms-traffictypediagnostic: AM0PR04MB4609: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(136003)(366004)(396003)(376002)(346002)(189003)(199004)(66066001)(36756003)(446003)(3846002)(386003)(106356001)(4326008)(5660300002)(97736004)(71200400001)(6506007)(71190400001)(14454004)(53936002)(50226002)(1076003)(25786009)(256004)(105586002)(68736007)(8936002)(7736002)(44832011)(81156014)(54906003)(6116002)(11346002)(76176011)(8676002)(478600001)(6436002)(305945005)(6512007)(110136005)(26005)(2501003)(476003)(52116002)(2906002)(81166006)(2616005)(6486002)(102836004)(316002)(486006)(99286004)(86362001)(186003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4609; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: 5vp6TxwXqGL515k2Wc3vE85kuuUB/pPOBK9qVhaOmjsrjEnx0jk9XujWDY8PGy+hAxsV36HU+RRO/R+XvNK3RF8u2miA0cp7Ce+BoEjGYLBM5QXmKcEaR2MkbW+UpKLrQkpzdIsFFdgk1z0Knn3ViDtmlPyvSTBHpTsxlMpR0ujoG+DuZdRVhCd9eAv9WWjuQ/LrmGuaIizVnpD4CvBoZQercMy9MWmbEGq30Pt7jxeoAJ8y9xodp9GWQzv6+UPMuMgE/+JKM/sjgXIEanBJZvNrHGu2DZMpSI0bF/5FoFZX6lCRWtcFNjTH4ukNqbEExmwjF0DCuq2D5NCIf80qaiUcBSu0VQgmO3sl8YMpFzKMGuO/hLGrrTXs4mVqchykcn9fAV3b5g7NNeBxCaAWWxOcBODZzSZefMn/nKdulLk= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: b84423f6-e09e-423f-5ea3-08d6bf1c29e0 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:55:00.4575 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB4609 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 4/8] misc: imx8: add sc_misc_get_temp 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_misc_get_temp to support get temperature Signed-off-by: Peng Fan --- arch/arm/include/asm/arch-imx8/sci/sci.h | 2 ++ arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h | 1 + drivers/misc/imx8/scu_api.c | 28 +++++++++++++++++++++++ 3 files changed, 31 insertions(+) diff --git a/arch/arm/include/asm/arch-imx8/sci/sci.h b/arch/arm/include/asm/arch-imx8/sci/sci.h index d1621669e2..ccf45d71f7 100644 --- a/arch/arm/include/asm/arch-imx8/sci/sci.h +++ b/arch/arm/include/asm/arch-imx8/sci/sci.h @@ -76,6 +76,8 @@ void sc_misc_get_boot_dev(sc_ipc_t ipc, sc_rsrc_t *boot_dev); void sc_misc_boot_status(sc_ipc_t ipc, sc_misc_boot_status_t status); void sc_misc_build_info(sc_ipc_t ipc, u32 *build, u32 *commit); int sc_misc_otp_fuse_read(sc_ipc_t ipc, u32 word, u32 *val); +int sc_misc_get_temp(sc_ipc_t ipc, sc_rsrc_t resource, sc_misc_temp_t temp, + s16 *celsius, s8 *tenths); /* RM API */ sc_bool_t sc_rm_is_memreg_owned(sc_ipc_t ipc, sc_rm_mr_t mr); diff --git a/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h b/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h index 5d17b553d7..3629eb68d7 100644 --- a/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h +++ b/arch/arm/include/asm/arch-imx8/sci/svc/misc/api.h @@ -26,5 +26,6 @@ #define SC_MISC_REL_CONTAINER 2U /* Release container */ typedef u8 sc_misc_boot_status_t; +typedef u8 sc_misc_temp_t; #endif /* SC_MISC_API_H */ diff --git a/drivers/misc/imx8/scu_api.c b/drivers/misc/imx8/scu_api.c index d9c4d5d784..031bc0048b 100644 --- a/drivers/misc/imx8/scu_api.c +++ b/drivers/misc/imx8/scu_api.c @@ -273,6 +273,34 @@ int sc_misc_otp_fuse_read(sc_ipc_t ipc, u32 word, u32 *val) return 0; } +int sc_misc_get_temp(sc_ipc_t ipc, sc_rsrc_t resource, sc_misc_temp_t temp, + s16 *celsius, s8 *tenths) +{ + struct udevice *dev = gd->arch.scu_dev; + int size = sizeof(struct sc_rpc_msg_s); + struct sc_rpc_msg_s msg; + int ret; + + RPC_VER(&msg) = SC_RPC_VERSION; + RPC_SVC(&msg) = (u8)SC_RPC_SVC_MISC; + RPC_FUNC(&msg) = (u8)MISC_FUNC_GET_TEMP; + RPC_U16(&msg, 0U) = (u16)resource; + RPC_U8(&msg, 2U) = (u8)temp; + RPC_SIZE(&msg) = 2U; + + ret = misc_call(dev, SC_FALSE, &msg, size, &msg, size); + if (ret < 0) + return ret; + + if (celsius) + *celsius = RPC_I16(&msg, 0U); + + if (tenths) + *tenths = RPC_I8(&msg, 2U); + + return 0; +} + /* RM */ sc_bool_t sc_rm_is_memreg_owned(sc_ipc_t ipc, sc_rm_mr_t mr) { From patchwork Fri Apr 12 07:55:03 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084461 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="XofGhFCf"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVbz3GxQz9s47 for ; Fri, 12 Apr 2019 17:57:19 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 19C5AC21E1A; Fri, 12 Apr 2019 07:56:09 +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=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 DBD8CC21E2B; Fri, 12 Apr 2019 07:55:37 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 33D4AC21E34; Fri, 12 Apr 2019 07:55:30 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70054.outbound.protection.outlook.com [40.107.7.54]) by lists.denx.de (Postfix) with ESMTPS id D116CC21E2C for ; Fri, 12 Apr 2019 07:55:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pJsI6uckRGsSJMdjvWr7ORK3gFv5XMBaoLlI6kNvoiA=; b=XofGhFCfLg4NOXPabYsjm9u5pB/o+MGrQmt1JKA5qx0MUEP1a0UB+VDnHuOD3kjyFgrvlZnNVTK4mtDnmHbZDkymLEGTlxJRoHv86QKH+pXsSnL9rlcUb2yqDOK10y1DXpc+tQ4eizn3y+GoYHFC4ykLuFb0kLvuT1nSP/itg/I= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4609.eurprd04.prod.outlook.com (52.135.144.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.13; Fri, 12 Apr 2019 07:55:05 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:55:05 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 5/8] thermal: add i.MX8 thermal driver Thread-Index: AQHU8QUJwNsHZmOSNUig6+8riKjJKw== Date: Fri, 12 Apr 2019 07:55:03 +0000 Message-ID: <20190412080741.32412-5-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 73c6d488-7e38-4a63-26ed-08d6bf1c2bbe x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4609; x-ms-traffictypediagnostic: AM0PR04MB4609: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(39860400002)(136003)(366004)(396003)(376002)(346002)(189003)(199004)(66066001)(36756003)(446003)(3846002)(386003)(106356001)(4326008)(5660300002)(97736004)(71200400001)(6506007)(71190400001)(14444005)(14454004)(53936002)(50226002)(1076003)(25786009)(256004)(105586002)(68736007)(8936002)(7736002)(44832011)(81156014)(54906003)(6116002)(11346002)(76176011)(8676002)(478600001)(6436002)(305945005)(6512007)(110136005)(26005)(2501003)(476003)(52116002)(2906002)(81166006)(2616005)(6486002)(102836004)(316002)(486006)(99286004)(86362001)(186003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4609; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: hhkHNthIJ5dTxTVZRVuKFSVWtfoXhW0Cbs6S+xCyFFGJb9lQFR0/gxl08sH0+iJIeHccT64ydbmPel0ygCt3vj/Qchv+b1FWjRzV3I2Nl/sIQzFTFE3e9CG3df/dzmlNVWz2IWg3UWVYdhEdXWQSwEtkbimES+fXh+Tf+bFtZu5qRlkpbkuEddLL/02Jw190x/lHKAK21XrO0fbYbfBYjkd/sEvUVL9qfMTN/7tqZUkLMzsbqnczAs9jcaoeE8+V/Hw+BpAcexIuucx4vY57PJ5aPvacJbVwhY3vBLMSJMa/dG6XK8FKNPTNSLEIsOeiIrCAX3wXuYHv7/jXY+7iP/FNH1+W+4Md0XlwcfpFc5oriTHK2KtUqEnN4qkFd2yc5gdYsWujYWW7o8kOWvLs/rOZ+otr8by9fF+LMMnC+iI= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 73c6d488-7e38-4a63-26ed-08d6bf1c2bbe X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:55:03.6057 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB4609 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 5/8] thermal: add i.MX8 thermal driver 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 i.MX8 thermal driver to support get temperature from SCU. Signed-off-by: Peng Fan --- drivers/thermal/Kconfig | 9 ++ drivers/thermal/Makefile | 1 + drivers/thermal/imx_scu_thermal.c | 203 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 213 insertions(+) create mode 100644 drivers/thermal/imx_scu_thermal.c diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig index a71b9be5fb..bdf8dc6fef 100644 --- a/drivers/thermal/Kconfig +++ b/drivers/thermal/Kconfig @@ -17,6 +17,15 @@ config IMX_THERMAL cpufreq is used as the cooling device to throttle CPUs when the passive trip is crossed. +config IMX_SCU_THERMAL + bool "Temperature sensor driver for NXP i.MX8" + depends on ARCH_IMX8 + help + Support for Temperature sensors on NXP i.MX8. + It supports one critical trip point and one passive trip point. The + boot is hold to the cool device to throttle CPUs when the passive + trip is crossed + config TI_DRA7_THERMAL bool "Temperature sensor driver for TI dra7xx SOCs" help diff --git a/drivers/thermal/Makefile b/drivers/thermal/Makefile index cc75e387e4..ef2929d180 100644 --- a/drivers/thermal/Makefile +++ b/drivers/thermal/Makefile @@ -5,4 +5,5 @@ obj-$(CONFIG_DM_THERMAL) += thermal-uclass.o obj-$(CONFIG_IMX_THERMAL) += imx_thermal.o +obj-$(CONFIG_IMX_SCU_THERMAL) += imx_scu_thermal.o obj-$(CONFIG_TI_DRA7_THERMAL) += ti-bandgap.o diff --git a/drivers/thermal/imx_scu_thermal.c b/drivers/thermal/imx_scu_thermal.c new file mode 100644 index 0000000000..7e17377b69 --- /dev/null +++ b/drivers/thermal/imx_scu_thermal.c @@ -0,0 +1,203 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright 2019 NXP + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +DECLARE_GLOBAL_DATA_PTR; + +struct imx_sc_thermal_plat { + int critical; + int alert; + int polling_delay; + int id; + bool zone_node; +}; + +static int read_temperature(struct udevice *dev, int *temp) +{ + s16 celsius; + s8 tenths; + int ret; + + sc_rsrc_t *sensor_rsrc = (sc_rsrc_t *)dev_get_driver_data(dev); + + struct imx_sc_thermal_plat *pdata = dev_get_platdata(dev); + + if (!temp) + return -EINVAL; + + ret = sc_misc_get_temp(-1, sensor_rsrc[pdata->id], SC_C_TEMP, + &celsius, &tenths); + if (ret) { + printf("Error: get temperature failed! (error = %d)\n", ret); + return ret; + } + + *temp = celsius * 1000 + tenths * 100; + + return 0; +} + +int imx_sc_thermal_get_temp(struct udevice *dev, int *temp) +{ + struct imx_sc_thermal_plat *pdata = dev_get_platdata(dev); + int cpu_temp = 0; + int ret; + + ret = read_temperature(dev, &cpu_temp); + if (ret) + return ret; + + while (cpu_temp >= pdata->alert) { + printf("CPU Temperature (%dC) has beyond alert (%dC), close to critical (%dC)", + cpu_temp, pdata->alert, pdata->critical); + puts(" waiting...\n"); + mdelay(pdata->polling_delay); + ret = read_temperature(dev, &cpu_temp); + if (ret) + return ret; + } + + *temp = cpu_temp / 1000; + + return 0; +} + +static const struct dm_thermal_ops imx_sc_thermal_ops = { + .get_temp = imx_sc_thermal_get_temp, +}; + +static int imx_sc_thermal_probe(struct udevice *dev) +{ + debug("%s dev name %s\n", __func__, dev->name); + return 0; +} + +static int imx_sc_thermal_bind(struct udevice *dev) +{ + struct imx_sc_thermal_plat *pdata = dev_get_platdata(dev); + int reg, ret; + int offset; + const char *name; + const void *prop; + + debug("%s dev name %s\n", __func__, dev->name); + + prop = fdt_getprop(gd->fdt_blob, dev_of_offset(dev), "compatible", + NULL); + if (!prop) + return 0; + + pdata->zone_node = 1; + + reg = fdtdec_get_int(gd->fdt_blob, dev_of_offset(dev), "tsens-num", 0); + if (reg == 0) { + printf("%s: no temp sensor number provided!\n", __func__); + return -EINVAL; + } + + offset = fdt_subnode_offset(gd->fdt_blob, 0, "thermal-zones"); + fdt_for_each_subnode(offset, gd->fdt_blob, offset) { + /* Bind the subnode to this driver */ + name = fdt_get_name(gd->fdt_blob, offset, NULL); + + ret = device_bind_with_driver_data(dev, dev->driver, name, + dev->driver_data, + offset_to_ofnode(offset), + NULL); + if (ret) + printf("Error binding driver '%s': %d\n", + dev->driver->name, ret); + } + return 0; +} + +static int imx_sc_thermal_ofdata_to_platdata(struct udevice *dev) +{ + struct imx_sc_thermal_plat *pdata = dev_get_platdata(dev); + struct fdtdec_phandle_args args; + const char *type; + int ret; + int trips_np; + + debug("%s dev name %s\n", __func__, dev->name); + + if (pdata->zone_node) + return 0; + + ret = fdtdec_parse_phandle_with_args(gd->fdt_blob, dev_of_offset(dev), + "thermal-sensors", + "#thermal-sensor-cells", + 0, 0, &args); + if (ret) + return ret; + + if (args.node != dev_of_offset(dev->parent)) + return -EFAULT; + + if (args.args_count >= 1) + pdata->id = args.args[0]; + else + pdata->id = 0; + + debug("args.args_count %d, id %d\n", args.args_count, pdata->id); + + pdata->polling_delay = fdtdec_get_int(gd->fdt_blob, dev_of_offset(dev), + "polling-delay", 1000); + + trips_np = fdt_subnode_offset(gd->fdt_blob, dev_of_offset(dev), + "trips"); + fdt_for_each_subnode(trips_np, gd->fdt_blob, trips_np) { + type = fdt_getprop(gd->fdt_blob, trips_np, "type", NULL); + if (type) { + if (strcmp(type, "critical") == 0) { + pdata->critical = fdtdec_get_int(gd->fdt_blob, + trips_np, + "temperature", + 85); + } else if (strcmp(type, "passive") == 0) { + pdata->alert = fdtdec_get_int(gd->fdt_blob, + trips_np, + "temperature", + 80); + } + } + } + + debug("id %d polling_delay %d, critical %d, alert %d\n", pdata->id, + pdata->polling_delay, pdata->critical, pdata->alert); + + return 0; +} + +static const sc_rsrc_t imx8qxp_sensor_rsrc[] = { + SC_R_SYSTEM, SC_R_DRC_0, SC_R_PMIC_0, + SC_R_PMIC_1, SC_R_PMIC_2, +}; + +static const struct udevice_id imx_sc_thermal_ids[] = { + { .compatible = "nxp,imx8qxp-sc-tsens", .data = + (ulong)&imx8qxp_sensor_rsrc, }, + { } +}; + +U_BOOT_DRIVER(imx_sc_thermal) = { + .name = "imx_sc_thermal", + .id = UCLASS_THERMAL, + .ops = &imx_sc_thermal_ops, + .of_match = imx_sc_thermal_ids, + .bind = imx_sc_thermal_bind, + .probe = imx_sc_thermal_probe, + .ofdata_to_platdata = imx_sc_thermal_ofdata_to_platdata, + .platdata_auto_alloc_size = sizeof(struct imx_sc_thermal_plat), + .flags = DM_FLAG_PRE_RELOC, +}; From patchwork Fri Apr 12 07:55:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084464 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="gv6gdMxG"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVdc6Wzwz9s47 for ; Fri, 12 Apr 2019 17:58:44 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 9167DC21E1E; Fri, 12 Apr 2019 07:57:01 +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=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 E1B35C21E1E; Fri, 12 Apr 2019 07:56:21 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 13B82C21E36; Fri, 12 Apr 2019 07:55:44 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70041.outbound.protection.outlook.com [40.107.7.41]) by lists.denx.de (Postfix) with ESMTPS id D1822C21C2C for ; Fri, 12 Apr 2019 07:55:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Il3RDxLVt8w6aP+faIRn4VVpubab/xWD1uQ3TdWVSyM=; b=gv6gdMxG43xcG1/4juFCb2H+Zm7TDmJkcjUQlxYu98mPh/yMcgV3TJSeIfvQ7WKBOsswEsiYlp+2tsylswLkPyKgpFvw1CytGEfZ5HFecRYu9lFDA835iXIwKC2WEuXIzxbzmXspJg+SAKUypNS23tz1yJ0yM/fdcV/VZw0OGYE= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB4609.eurprd04.prod.outlook.com (52.135.144.153) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1771.13; Fri, 12 Apr 2019 07:55:21 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:55:21 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 6/8] imx8: cpu: get temperature when print cpu desc Thread-Index: AQHU8QULW1BoUVYkFEq/BTrMelF50Q== Date: Fri, 12 Apr 2019 07:55:06 +0000 Message-ID: <20190412080741.32412-6-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 49bd3175-b023-40a4-7fec-08d6bf1c2d6f x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB4609; x-ms-traffictypediagnostic: AM0PR04MB4609: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(346002)(376002)(396003)(366004)(136003)(39860400002)(189003)(199004)(6512007)(110136005)(305945005)(26005)(6116002)(54906003)(44832011)(7736002)(81156014)(76176011)(478600001)(6436002)(8676002)(11346002)(316002)(6486002)(102836004)(99286004)(186003)(86362001)(486006)(476003)(2906002)(52116002)(2501003)(2616005)(81166006)(97736004)(71190400001)(71200400001)(6506007)(106356001)(446003)(36756003)(66066001)(386003)(3846002)(4326008)(5660300002)(8936002)(14454004)(53936002)(105586002)(256004)(25786009)(68736007)(6666004)(50226002)(1076003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB4609; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: iLVBoKrKzoKHdjW2/ORa/INO/zaFHSg14t9YxnZ6m9JY5CeOVmFOJnqXAjM+WiMqbq80atC4pQqgGWUV4RZwxSbe7ru9MkBrOfcX6bzu+Ev5W/5CGLxctaKAkzeo1zBFTT11ZfMYw7sHMcKv12P+xct/Bc4qBeERQAdCi/ostOLcVxNuygad2JK+pwqRZxYA54V8FjaydPFHrVWOHAXSfUmweXoHsI+KDisGuGlQuxEc2jFLHYam8yA4TH1vsm5nZ8DFp+I8KdYs0n1XF9JwnfV09tb3SmzXnKgJYV/tqnAKFxd2GqR50bi/P65o4ybOHC1jlTURBqRzsDmAJEZWIePJ37QGjpPILSWMTzJNpp3gcNsQQbdzsNZKCeTzON01Y8Rst2OZP5expIjVsSFbuz5G/AzSGzX09J5OpjNvdmw= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 49bd3175-b023-40a4-7fec-08d6bf1c2d6f X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:55:06.4597 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB4609 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 6/8] imx8: cpu: get temperature when print cpu desc 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" Read the temperature when print cpu inforation. Signed-off-by: Peng Fan --- arch/arm/mach-imx/imx8/cpu.c | 35 +++++++++++++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-imx/imx8/cpu.c b/arch/arm/mach-imx/imx8/cpu.c index 4bbc956f9d..25b010489b 100644 --- a/arch/arm/mach-imx/imx8/cpu.c +++ b/arch/arm/mach-imx/imx8/cpu.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -571,15 +572,45 @@ const char *get_core_name(void) return "?"; } +#if defined(CONFIG_IMX_SCU_THERMAL) +static int cpu_imx_get_temp(void) +{ + struct udevice *thermal_dev; + int cpu_tmp, ret; + + ret = uclass_get_device_by_name(UCLASS_THERMAL, "cpu-thermal0", + &thermal_dev); + + if (!ret) { + ret = thermal_get_temp(thermal_dev, &cpu_tmp); + if (ret) + return 0xdeadbeef; + } else { + return 0xdeadbeef; + } + + return cpu_tmp; +} +#endif + int cpu_imx_get_desc(struct udevice *dev, char *buf, int size) { struct cpu_imx_platdata *plat = dev_get_platdata(dev); + int ret; if (size < 100) return -ENOSPC; - snprintf(buf, size, "NXP i.MX8%s Rev%s %s at %u MHz\n", - plat->type, plat->rev, plat->name, plat->freq_mhz); + ret = snprintf(buf, size, "NXP i.MX8%s Rev%s %s at %u MHz", + plat->type, plat->rev, plat->name, plat->freq_mhz); + + if (IS_ENABLED(CONFIG_IMX_SCU_THERMAL)) { + buf = buf + ret; + size = size - ret; + ret = snprintf(buf, size, " at %dC", cpu_imx_get_temp()); + } + + snprintf(buf + ret, size - ret, "\n"); return 0; } From patchwork Fri Apr 12 07:55:09 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084463 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="VGTpdh0w"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVcp4T5Wz9s47 for ; Fri, 12 Apr 2019 17:58:02 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 42339C21CB6; Fri, 12 Apr 2019 07:56:44 +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=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 4B07AC21E2F; Fri, 12 Apr 2019 07:56:15 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id C8620C21E38; Fri, 12 Apr 2019 07:55:44 +0000 (UTC) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10062.outbound.protection.outlook.com [40.107.1.62]) by lists.denx.de (Postfix) with ESMTPS id A4F81C21DE8 for ; Fri, 12 Apr 2019 07:55:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RbrWEhNuPq4zbMSW+DsitnbH0Op9HpR3nH4MXGEDm4o=; b=VGTpdh0wS/5T7eZd55q4TM82XmN3oBtT+MYkca9oR5/cU23cGJSh0a+YNazh29GVXa0czLrHQKRINkrXZz7NHkU79rtRjTpSEpSmbqwD4uzmYKInh9Yj9icrBrnjyHCpY1rzimdE5mMRQth4aMDUPOmXImEk3QqnGhzETKW2n1o= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB6098.eurprd04.prod.outlook.com (20.179.34.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1792.18; Fri, 12 Apr 2019 07:55:37 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:55:37 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 7/8] imx: imx8dx/qxp: enable thermal Thread-Index: AQHU8QUMDtBjNI+i00y6eVTVChZNdg== Date: Fri, 12 Apr 2019 07:55:09 +0000 Message-ID: <20190412080741.32412-7-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 3d2a3e6d-7ee2-46d8-84c0-08d6bf1c2f19 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB6098; x-ms-traffictypediagnostic: AM0PR04MB6098: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(346002)(39860400002)(376002)(366004)(396003)(189003)(199004)(71190400001)(386003)(71200400001)(6506007)(44832011)(6666004)(76176011)(105586002)(36756003)(186003)(106356001)(66066001)(26005)(102836004)(5660300002)(486006)(14444005)(446003)(256004)(476003)(2616005)(11346002)(3846002)(6116002)(52116002)(50226002)(68736007)(53936002)(6512007)(6486002)(25786009)(4326008)(54906003)(110136005)(316002)(97736004)(99286004)(2906002)(8936002)(478600001)(305945005)(7736002)(14454004)(86362001)(81166006)(81156014)(8676002)(2501003)(6436002)(1076003)(32563001); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB6098; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: v4OSvqXGtT8ALPKdItTIWJhgmX15kmAV2Lut0eXUiyJjBxhyG44KBOE8WuhlX8wXfAtBAdEJJ8ny+2dXXNvPy7GHEXmstwf4QIkYUWEePFkyNV2KRr98598pzpnPFTv96bBSbyM4cJTP1mrxBkKLLlI3A34qS71d7oc0tUPAWah3Z7xfH4H7IZOVaaELYbtjkc5dl6ExBu46QOSMxRJoD3x/jhIVzPPc2y2aVKgL05bbtx4tqRbsdewrAjPZktdfDvXFzNinp5xbU/NDbxUzqek1KcpTD2PJefhAOGgA/LymJKgpB+tiIgc0U7MZl3L0+xCmy+5Nom3110MlobSPazG5phqFzeXUGHjJ7XauMaCQpZ3Wbd21sCRCj0KWyf+Kck8rQXvIRS3yWrvSo6wH7N2Wh6xdVB1/FDZF0NGcFlk= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3d2a3e6d-7ee2-46d8-84c0-08d6bf1c2f19 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:55:09.2757 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB6098 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 7/8] imx: imx8dx/qxp: enable thermal 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 thermal dts node Enable thermal in defconfig Signed-off-by: Peng Fan --- arch/arm/dts/fsl-imx8dx.dtsi | 56 +++++++++++++++++++++++++++++++++++++++++++ configs/imx8qxp_mek_defconfig | 2 ++ 2 files changed, 58 insertions(+) diff --git a/arch/arm/dts/fsl-imx8dx.dtsi b/arch/arm/dts/fsl-imx8dx.dtsi index 3b1a2a20e3..1c163afdcd 100644 --- a/arch/arm/dts/fsl-imx8dx.dtsi +++ b/arch/arm/dts/fsl-imx8dx.dtsi @@ -11,6 +11,7 @@ #include #include #include +#include / { model = "Freescale i.MX8DX"; @@ -489,6 +490,61 @@ power-domains = <&pd_conn_enet1>; status = "disabled"; }; + + tsens: thermal-sensor { + compatible = "nxp,imx8qxp-sc-tsens"; + /* number of the temp sensor on the chip */ + tsens-num = <2>; + #thermal-sensor-cells = <1>; + }; + + thermal_zones: thermal-zones { + /* cpu thermal */ + cpu-thermal0 { + polling-delay-passive = <250>; + polling-delay = <2000>; + /*the slope and offset of the temp sensor */ + thermal-sensors = <&tsens 0>; + trips { + cpu_alert0: trip0 { + temperature = <107000>; + hysteresis = <2000>; + type = "passive"; + }; + cpu_crit0: trip1 { + temperature = <127000>; + hysteresis = <2000>; + type = "critical"; + }; + }; + cooling-maps { + map0 { + trip = <&cpu_alert0>; + cooling-device = + <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; + }; + }; + }; + + drc-thermal0 { + polling-delay-passive = <250>; + polling-delay = <2000>; + thermal-sensors = <&tsens 1>; + status = "disabled"; + trips { + drc_alert0: trip0 { + temperature = <107000>; + hysteresis = <2000>; + type = "passive"; + }; + drc_crit0: trip1 { + temperature = <127000>; + hysteresis = <2000>; + type = "critical"; + }; + }; + }; + }; }; &A35_0 { diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig index 14e9da386a..f0da489645 100644 --- a/configs/imx8qxp_mek_defconfig +++ b/configs/imx8qxp_mek_defconfig @@ -73,5 +73,7 @@ CONFIG_DM_REGULATOR_GPIO=y CONFIG_SPL_DM_REGULATOR_GPIO=y CONFIG_DM_SERIAL=y CONFIG_FSL_LPUART=y +CONFIG_DM_THERMAL=y +CONFIG_IMX_SCU_THERMAL=y CONFIG_SPL_TINY_MEMSET=y # CONFIG_EFI_LOADER is not set From patchwork Fri Apr 12 07:55:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1084462 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="k0Fq3LQI"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 44gVcF3J28z9s47 for ; Fri, 12 Apr 2019 17:57:33 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id C049BC21E35; Fri, 12 Apr 2019 07:56:29 +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=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 9A739C21E4F; Fri, 12 Apr 2019 07:55:49 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 6286CC21E3A; Fri, 12 Apr 2019 07:55:44 +0000 (UTC) Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-eopbgr10062.outbound.protection.outlook.com [40.107.1.62]) by lists.denx.de (Postfix) with ESMTPS id 0B629C21E34 for ; Fri, 12 Apr 2019 07:55:39 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=As9iAr4jN3YpI1ZKJKGFrJ0b5UPORbSego0iDoGuFIo=; b=k0Fq3LQImsZkH7cBgLt6lbNYUQ9O0Yz/n5DywcfLjT/UZlC0qo+Lcq+NKk2WGmP9yWcfJJO0Dfd2ii7zA2Fj8wuGqE3b01AdV/0LD18LnH6J3SlJ8f6JS9zfCQfKGGKS3AE6CCFtFX6633QTUdZHkfSeJAB6NT7hF5VLvjufRDY= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB6098.eurprd04.prod.outlook.com (20.179.34.148) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1792.18; Fri, 12 Apr 2019 07:55:37 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::dc63:432c:eb4b:8d1b%3]) with mapi id 15.20.1792.016; Fri, 12 Apr 2019 07:55:37 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH 8/8] imx8: mek: move HUSH_PARSER to defconfig Thread-Index: AQHU8QUOHcnCSvfOHUuKn1dBj21+sw== Date: Fri, 12 Apr 2019 07:55:12 +0000 Message-ID: <20190412080741.32412-8-peng.fan@nxp.com> References: <20190412080741.32412-1-peng.fan@nxp.com> In-Reply-To: <20190412080741.32412-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: HK2PR03CA0045.apcprd03.prod.outlook.com (2603:1096:202:17::15) 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: 8f8507bc-b54d-4516-2fa7-08d6bf1c30c9 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600139)(711020)(4605104)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB6098; x-ms-traffictypediagnostic: AM0PR04MB6098: x-microsoft-antispam-prvs: x-forefront-prvs: 0005B05917 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(136003)(346002)(39860400002)(376002)(366004)(396003)(189003)(199004)(71190400001)(386003)(71200400001)(6506007)(44832011)(6666004)(76176011)(105586002)(36756003)(186003)(106356001)(66066001)(26005)(102836004)(5660300002)(486006)(14444005)(446003)(256004)(476003)(2616005)(11346002)(3846002)(6116002)(52116002)(50226002)(68736007)(53936002)(6512007)(6486002)(25786009)(4326008)(54906003)(110136005)(316002)(97736004)(99286004)(2906002)(8936002)(478600001)(305945005)(7736002)(14454004)(86362001)(81166006)(81156014)(8676002)(2501003)(6436002)(1076003); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB6098; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: V9t4nNH5TOZ2TkFrn9yMbUMREkivDvRnek8rFNtzzS5ReZn+QDHJE0aBPlukKaGR1TYggvW8YCL7x7EgrE+Uu2CaD5IY2Tx4L2kL3wOR6uMWv/39/dEXgQ9z6OJK+jgHRu1YX4fSxmxNPQAc58D5lmXffQw5JZqWeYwt1n0HBb3oW/FoimYPKD1Vd+IHo++lBE/TgjaIrUtjRIQS30IDgn4D1uU0m1bq+IKbVqgJocXr1Jn8Fs0dGGKC3/AOqh2aoO0lnqomh4QIEk+jmM3qeBpdJaLcfqaOq+rrV1diKM+RkOeQGhZBb6OwisyfmHFI+wLpYokmzYLfOlZCb2l107Fyu8EItFtVl0Ya2+hAwUHeze8JY7i2MwbC9Hhvy77h13bPyFL1EqoRP1up68O1RPBQ5ZW50O2dcx0ocUZQ5Ws= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8f8507bc-b54d-4516-2fa7-08d6bf1c30c9 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Apr 2019 07:55:12.2337 (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-Transport-CrossTenantHeadersStamped: AM0PR04MB6098 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH 8/8] imx8: mek: move HUSH_PARSER to defconfig 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" Move HUSH_PARSER to defconfig, otherwise meet " => run netboot Booting from net ... Unknown command 'if' - try 'help' Unknown command 'then' - try 'help' Unknown command 'else' - try 'help' Unknown command 'fi' - try 'help' Unknown command '0x80280000' - try 'help' Unknown command 'if' - try 'help' Unknown command 'then' - try 'help' Unknown command 'then' - try 'help' Unknown command 'else' - try 'help' Unknown command 'fi' - try 'help' Unknown command 'else' - try 'help' Unknown command 'fi' - try 'help' " Signed-off-by: Peng Fan --- configs/imx8qxp_mek_defconfig | 1 + include/configs/imx8qxp_mek.h | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig index f0da489645..38f0ff0bf3 100644 --- a/configs/imx8qxp_mek_defconfig +++ b/configs/imx8qxp_mek_defconfig @@ -23,6 +23,7 @@ CONFIG_SPL_SEPARATE_BSS=y CONFIG_SPL_POWER_SUPPORT=y CONFIG_SPL_POWER_DOMAIN=y CONFIG_SPL_WATCHDOG_SUPPORT=y +CONFIG_HUSH_PARSER=y CONFIG_CMD_CPU=y # CONFIG_CMD_IMPORTENV is not set CONFIG_CMD_CLK=y diff --git a/include/configs/imx8qxp_mek.h b/include/configs/imx8qxp_mek.h index 312e30dc6c..1cff18e05e 100644 --- a/include/configs/imx8qxp_mek.h +++ b/include/configs/imx8qxp_mek.h @@ -159,7 +159,6 @@ #define CONFIG_BAUDRATE 115200 /* Monitor Command Prompt */ -#define CONFIG_HUSH_PARSER #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " #define CONFIG_SYS_CBSIZE 2048 #define CONFIG_SYS_MAXARGS 64