From patchwork Mon Jun 6 11:24:00 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Peng Fan (OSS)" X-Patchwork-Id: 1639244 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: bilbo.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.a=rsa-sha256 header.s=selector2-NXP1-onmicrosoft-com header.b=j2JzlBSZ; dkim-atps=neutral Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by bilbo.ozlabs.org (Postfix) with ESMTPS id 4LGr2p6qZhz9sGC for ; Mon, 6 Jun 2022 20:54:10 +1000 (AEST) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id BA48E8438F; Mon, 6 Jun 2022 12:53:26 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=oss.nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=NXP1.onmicrosoft.com header.i=@NXP1.onmicrosoft.com header.b="j2JzlBSZ"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 9E20984384; Mon, 6 Jun 2022 12:53:24 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FORGED_SPF_HELO,SPF_HELO_PASS,T_SCC_BODY_TEXT_LINE, T_SPF_PERMERROR autolearn=unavailable autolearn_force=no version=3.4.2 Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-am5eur03on061f.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe08::61f]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id BF0FF843CA for ; Mon, 6 Jun 2022 12:42:55 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=oss.nxp.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=peng.fan@oss.nxp.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BNYIKpee8odQQUvy06zF8kuDCYQehMDuVR98X6P4GodADZGJkEB0w/kG+yM7C8Tzc3onlgEDqwC5yY9M69vOFcFA6VpJt+1LgSQpUr9AyhyuGZvfxIdeDspceSMXf+DNxHwM/0dzAkbPKhvRh1e2/CkyBs05bgIAgj2EB0PavjWH8zjwTjO5kA4wFGdrfgbCXf78YhmGpOhofzVHcVDF+lPNXReA0gXqJs1DSn4PwOXr+Hn3jWLGr88tKIlUuSrW1NWzwZ2emdUtoTZGtdZjxuckXA656Oc4vA3kXlNe4esph8wW9NABYZ7y/FStgjGc37YEtP1yh0rho/B/XgxchQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=2cxpqL37ahJBZq28obfve9oDC5z42lajz2iTUuj8ReQ=; b=ntb51XmwtfsVf9NpgCAnlWNttdwBPwN9Ib+aq5S5YKkrazi2k+W9An4CHNjnD3uNj5Muh/ef0D0b1bgvEdxJy1mO+y0Kjivtm49SyPB6OJ45N4biS1Of9I0z5YaB9P7zIAGVLaiX8MKaZh7WjqJ7nygP5IYssmYrmPZ0h0w7vIzophyg+I4Cw9LH/jxKXiuihae/yVEhu3DZLLkYhGVaXV7ErKEYP+/ctalcUJ4Ea+gPsGUCc4GpIpLBvYl3rFbIn9jwzI1hfqPsqXq/L/S08mW3aiomUQgwfbCARMByGqWudtbC5j6chAPWGEFT9ewDaWrSBBy33bVaCVvXoPvEnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oss.nxp.com; dmarc=pass action=none header.from=oss.nxp.com; dkim=pass header.d=oss.nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=NXP1.onmicrosoft.com; s=selector2-NXP1-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2cxpqL37ahJBZq28obfve9oDC5z42lajz2iTUuj8ReQ=; b=j2JzlBSZGdB8R2l0s6JqOCcjNIb4W1Y65NTh/OajVJAHtoBNw5EtLyP1jJSfoo689CnHbyDdfwI3vIuiO9gpfBISooHTnFW1uWAc0utgJ856jwwFslXiLDZRS30viP5yz64VQlYMKd8OsMzYwBE9uzR1oULrJygpgTqU9Z+Dn+w= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=oss.nxp.com; Received: from DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) by AS8PR04MB8312.eurprd04.prod.outlook.com (2603:10a6:20b:3f1::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5314.19; Mon, 6 Jun 2022 10:42:54 +0000 Received: from DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5]) by DU0PR04MB9417.eurprd04.prod.outlook.com ([fe80::a892:e4a9:4769:13a5%9]) with mapi id 15.20.5314.019; Mon, 6 Jun 2022 10:42:54 +0000 From: "Peng Fan (OSS)" To: sbabic@denx.de, festevam@gmail.com Cc: u-boot@lists.denx.de, Alice Guo , Peng Fan Subject: [PATCH 28/49] misc: fuse: support to access fuse on i.MX93 Date: Mon, 6 Jun 2022 19:24:00 +0800 Message-Id: <20220606112421.31711-29-peng.fan@oss.nxp.com> X-Mailer: git-send-email 2.36.0 In-Reply-To: <20220606112421.31711-1-peng.fan@oss.nxp.com> References: <20220606112421.31711-1-peng.fan@oss.nxp.com> X-ClientProxiedBy: SI2PR01CA0025.apcprd01.prod.exchangelabs.com (2603:1096:4:192::10) To DU0PR04MB9417.eurprd04.prod.outlook.com (2603:10a6:10:358::11) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: d2064850-b3b2-423a-8a8d-08da47a94fcc X-MS-TrafficTypeDiagnostic: AS8PR04MB8312:EE_ X-MS-Exchange-SharedMailbox-RoutingAgent-Processed: True X-Microsoft-Antispam-PRVS: X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IG6kvSfLVS5VAbwfZUiTRk99wr9mTbdwVW3NWxElPrsjMdgoK3ichEG+zAqNl0WgQvGtkzhF9Vu4wuH1S7cxnOp9OM2voUMz4WIjrxoOk1KWlSVe4CK837OFsn2nqDVS4OeCfM2zLywiO3RUp102VnGQU/Ji4vOvfe5NtM0uj+IKngIx9pbi/tUD1SBoAaW897xb3bjYSIGpereXj2dIUaaLdTUmvqlXkFiUdeQP3SwHC9GBq5FlYqirqkOSct0ZsGH40aZfJKpry0hI46oX7QldT41j6eu5Xr/315F4bk9byilU+4yZhKJSbrzw632hNM3GQ+WYZMBAYMdN9r40YiU9UeptWMNrvAGXMolwO+L1U/meEIn+MCIvbkyzBXtFze/th4kP5P1fRNnXLd1MtndSuPNo9czW8A6o9sQRdCLp5mL+ZoRKa2dhyGpIqG9qMc1Pb6O42K7AhI+wqv+2vtq+1U6FLCIBgV5buw1PGjOP48A0u5XgHtOf5OLG1QyTUcvgciELlGRmqLFaT6rQFJWn81tBlPlBm3j6bSrc0xuF2sXvuVBFcqjXTazv9Ti4NzX8vmnt13mc21GiUQoDFYX5oW0cXZfJY/ynuBF/euWacPCZnA4OmioYtvK5hSSZ3fy0ltpM2z+F2xfAbwoJMmFVzNdgWj9/U2HC4+9be8vkasxNBPGAGEyieodQpUeAR40fkwrHeSpByIpwO2KYSw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DU0PR04MB9417.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230001)(4636009)(366004)(8936002)(8676002)(38350700002)(66476007)(38100700002)(5660300002)(508600001)(6486002)(66946007)(4326008)(86362001)(2616005)(6666004)(83380400001)(2906002)(66556008)(52116002)(6506007)(186003)(6512007)(26005)(54906003)(316002)(1076003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: QcElFyYHqblBdnCmkYTaPg/UM1bcmRVOD9FYgYamiyKDOA2F44WOzqSrShLzwyMHB7jMQYiGzDQEe8UoymZP+6MRuxG/J7ejIpQKLnkIn+3UayKwvE/bylvkXr6XLKF+XUJWucFzvyJpyEDYlYxkFocZWh2qDya5kVnL3Nba2lQ1ZaEHeUWrhHsk15TevV2nRGvk3/UcGmTQu3gmzPMIEYJJ9pFgCbHOT+DkEMu2gt463wCHwin2RrWsjQe8jilwCplVruMb/tqJqRanaS44liNM6vwGOEoeEFOomrVNGSScqvkfww5pnZkEue4WbHFJ25pyIJsnBmhs/XQHm9EGyT1wIDNa6IjCBVh1qwjsj6oWG3b6SpOtuh+l0l9/TLgnwAkMaaqu4AksTx4G8Q9i4WPD52/38ntThe1IoW9vZ1H+ssLfMxmC3KtS+cY82kCO46vN7rru3iL7mDIOoRS5lvNsLZdkhbftfv/YoaAoDLYwC9xtqKWRwAwh0E8ktKdZ3FTmPrmt44N6LIBrS9z+Bi/ZaybwLUi25exBMwZzd9E8762ekwPc3v/fk+LIXGV9ac3h/7hddCtxEvQWsbR9mmw5/cPgZN5Ax2XQi8+qASjhXo7bfNQn1TpHZRflosGQaRsB/By5/2ArlDwUhN+Hf54B09x6Xm8Ww2/m7RbfQZTREisFGe7tZZ+w1+StivViLeai7vPwHRyOsUlk7Hg9Zb4FhWAH26R0Z9REcxfO6n/dEzcafY3wQ7W0VspVmWzFqdKO7m+vYBjL8A1lqggTPYEBbTccxF+nRgy7O1zgfWITj+h9Dmk/havwdZhpVUpiE4pQYutHgw/9mczi5tj8iBh2Dt2s5w7o9YZaYyqSQ1Ux6ZGqBbo32jPzgZ/2apKPW+PkMmHxMl5K0sUQ51dJ5uGVNEQEAJNOywRfi+RBMmSs4CpL1bMO+jDxmt72qyo5Dq4AEcLN/FMiFn9xIO/XkdURGU/vh88eCtthowjBeFj6y/2DUBFiXvLNqilfhlThbjrh8eiAH8fmCmMjobTI/IzoOljuTDPFhFAD9XLjcBFDYGyBG2o+42CBwE+9FXOkZjl4Ylx9l32f7dI6yjhCRJquQCAQYiy42pM6a5LNbQQrvaZ/XlZiPKFRxYFn5oSVgEvvHcY8+9bL6EMo/Dg4EB3g48QQTtjOOsphuIkpZeDSfo6hkyLXip8kF3FhR2eCcV7Ogph+Smy54qNv5eGmaVI5qNyVjVyEN+pr861xsiMDgr3w1QJ/1dN5Baholx9x9x6i7f/20XA/7zp6HIRl5+9qJ4RXYCforBNfwwn6AAWD235Z0xSrGG0H5bpU6yzpxGGYG01iND0jR4usLx+Du7qgdHxHP0XtuWIzeW6A7HDoOf+VkvLmO4MeSA57umgVHdrBKwy4cX12aGfAZ+g0+wJIDEFvZsaphduTXqFouRrAfl+iZ3pkAKVcM7cd9lyJmQKSNwczRO6m/hHohC4jBsSOtiaEj1qJvgjfY7YsynhlKeKI5rbVUaV8rWLkw9A6R3FcSBErjP08rZGLoWQpVWLUcafSXEQviJDW3vcfvw8vYk7Hz0e9Y1nvDxWaDC26FhF3v2ltFSxpQ5P4tjEJnZFi7vjs0Ycaq4B5Fqpy6pJ8Es1fsVcOLC9vky3fUKHLZfT5/DkfvmJL4iAsL9CQM7bEJQZ43TMYgOUQXYTGpWAbZjHgpMQdJl4PNiHiywulzFG82eEismQjc3C+zJm+8g== X-OriginatorOrg: oss.nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: d2064850-b3b2-423a-8a8d-08da47a94fcc X-MS-Exchange-CrossTenant-AuthSource: DU0PR04MB9417.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2022 10:42:54.2539 (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: okZNBS23dG4WiDLKRdLxAV/KE+jTVNMjDdtwXIsPA/ugo0uitWwgrEl6jf1nm7Pl+Y/HJLIVs+SUHYBhPUFCjQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR04MB8312 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 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" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean From: Alice Guo i.MX93 fuse can be accessed through FSB and s400-api. Add mapping tables for i.MX93. The offset address of FSB accessing OTP shadow registers is different between i.MX8ULP and i.MX93, so use macro to define the offset address instead of hardcode. Signed-off-by: Alice Guo Signed-off-by: Peng Fan --- arch/arm/include/asm/arch-imx9/imx-regs.h | 2 ++ drivers/misc/sentinel/fuse.c | 30 ++++++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/arch/arm/include/asm/arch-imx9/imx-regs.h b/arch/arm/include/asm/arch-imx9/imx-regs.h index e4babed40fc..dcdbcb324b1 100644 --- a/arch/arm/include/asm/arch-imx9/imx-regs.h +++ b/arch/arm/include/asm/arch-imx9/imx-regs.h @@ -19,4 +19,6 @@ #define WDG4_BASE_ADDR 0x424a0000UL #define WDG5_BASE_ADDR 0x424b0000UL +#define FSB_BASE_ADDR 0x47510000UL + #endif diff --git a/drivers/misc/sentinel/fuse.c b/drivers/misc/sentinel/fuse.c index 83d2c25731f..abb4c072f9b 100644 --- a/drivers/misc/sentinel/fuse.c +++ b/drivers/misc/sentinel/fuse.c @@ -31,6 +31,9 @@ struct s400_map_entry { u32 s400_index; }; +#if defined(CONFIG_IMX8ULP) +#define FSB_OTP_SHADOW 0x800 + struct fsb_map_entry fsb_mapping_table[] = { { 3, 8 }, { 4, 8 }, @@ -65,6 +68,31 @@ struct s400_map_entry s400_api_mapping_table[] = { { 23, 1, 4, 2 }, /* OTFAD */ { 25, 8 }, /* Test config2 */ }; +#elif defined(CONFIG_ARCH_IMX9) +#define FSB_OTP_SHADOW 0x8000 + +struct fsb_map_entry fsb_mapping_table[] = { + { 0, 8 }, + { 1, 8 }, + { 2, 8 }, + { -1, 8 }, + { 4, 8 }, + { 5, 8 }, + { 6, 8 }, /* UID */ + { -1, 8 }, + { 8, 8 }, + { 9, 8 }, + { 10, 8 }, +}; + +struct s400_map_entry s400_api_mapping_table[] = { + { 3, 11 }, /* 24 .. 34 */ + { 7, 8 }, + { 16, 11 }, /* 128 .. 143 */ + { 22, 8 }, + { 23, 8 }, +}; +#endif static s32 map_fsb_fuse_index(u32 bank, u32 word, bool *redundancy) { @@ -128,7 +156,7 @@ int fuse_sense(u32 bank, u32 word, u32 *val) word_index = map_fsb_fuse_index(bank, word, &redundancy); if (word_index >= 0) { - *val = readl((ulong)FSB_BASE_ADDR + 0x800 + (word_index << 2)); + *val = readl((ulong)FSB_BASE_ADDR + FSB_OTP_SHADOW + (word_index << 2)); if (redundancy) *val = (*val >> ((word % 2) * 16)) & 0xFFFF;