From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 767CAC83012 for ; Wed, 2 Dec 2020 10:15:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 3E8CE221FA for ; Wed, 2 Dec 2020 10:15:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729365AbgLBKPA (ORCPT ); Wed, 2 Dec 2020 05:15:00 -0500 Received: from twspam01.aspeedtech.com ([211.20.114.71]:26118 "EHLO twspam01.aspeedtech.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726708AbgLBKPA (ORCPT ); Wed, 2 Dec 2020 05:15:00 -0500 Received: from mail.aspeedtech.com ([192.168.0.24]) by twspam01.aspeedtech.com with ESMTP id 0B2A9rYw086425; Wed, 2 Dec 2020 18:09:53 +0800 (GMT-8) (envelope-from troy_lee@aspeedtech.com) Received: from TroyLee-PC.localdomain (192.168.100.253) by TWMBX02.aspeed.com (192.168.0.24) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 2 Dec 2020 18:12:22 +0800 From: Troy Lee To: Stefan Schaeckeler , Rob Herring , Joel Stanley , Andrew Jeffery , "Borislav Petkov" , Mauro Carvalho Chehab , Tony Luck , James Morse , Robert Richter , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , open list , "open list:EDAC-CORE" CC: , , Subject: [PATCH v3 3/3] edac: Supporting AST2400 and AST2600 edac driver Date: Wed, 2 Dec 2020 18:12:18 +0800 Message-ID: <20201202101218.18393-3-troy_lee@aspeedtech.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201202101218.18393-1-troy_lee@aspeedtech.com> References: <20201202101218.18393-1-troy_lee@aspeedtech.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [192.168.100.253] X-ClientProxiedBy: TWMBX02.aspeed.com (192.168.0.24) To TWMBX02.aspeed.com (192.168.0.24) X-DNSRBL: X-MAIL: twspam01.aspeedtech.com 0B2A9rYw086425 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Adding AST2400 and AST2600 edac driver support. Signed-off-by: Troy Lee --- Changes since v2: - Remove cross dependencies export functions - Update Kconfig depends on ARCH_ASPEED - Patch create against latest Linux kernel mainline --- drivers/edac/Kconfig | 6 +++--- drivers/edac/aspeed_edac.c | 15 +++++---------- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig index 7a47680d6f07..c410331e8ee8 100644 --- a/drivers/edac/Kconfig +++ b/drivers/edac/Kconfig @@ -515,10 +515,10 @@ config EDAC_QCOM health, you should probably say 'Y' here. config EDAC_ASPEED - tristate "Aspeed AST 2500 SoC" - depends on MACH_ASPEED_G5 + tristate "Aspeed AST BMC SoC" + depends on ARCH_ASPEED help - Support for error detection and correction on the Aspeed AST 2500 SoC. + Support for error detection and correction on the Aspeed AST BMC SoC. First, ECC must be configured in the bootloader. Then, this driver will expose error counters via the EDAC kernel framework. diff --git a/drivers/edac/aspeed_edac.c b/drivers/edac/aspeed_edac.c index fde809efc520..c9d1d8a8fcba 100644 --- a/drivers/edac/aspeed_edac.c +++ b/drivers/edac/aspeed_edac.c @@ -239,7 +239,7 @@ static int init_csrows(struct mem_ctl_info *mci) int rc; /* retrieve info about physical memory from device tree */ - np = of_find_node_by_path("/memory"); + np = of_find_node_by_name(NULL, "memory"); if (!np) { dev_err(mci->pdev, "dt: missing /memory node\n"); return -ENODEV; @@ -282,7 +282,6 @@ static int aspeed_probe(struct platform_device *pdev) struct edac_mc_layer layers[2]; struct mem_ctl_info *mci; void __iomem *regs; - u32 reg04; int rc; regs = devm_platform_ioremap_resource(pdev, 0); @@ -294,13 +293,6 @@ static int aspeed_probe(struct platform_device *pdev) if (IS_ERR(aspeed_regmap)) return PTR_ERR(aspeed_regmap); - /* bail out if ECC mode is not configured */ - regmap_read(aspeed_regmap, ASPEED_MCR_CONF, ®04); - if (!(reg04 & ASPEED_MCR_CONF_ECC)) { - dev_err(&pdev->dev, "ECC mode is not configured in u-boot\n"); - return -EPERM; - } - edac_op_state = EDAC_OPSTATE_INT; /* allocate & init EDAC MC data structure */ @@ -375,10 +367,13 @@ static int aspeed_remove(struct platform_device *pdev) static const struct of_device_id aspeed_of_match[] = { + { .compatible = "aspeed,ast2400-sdram-edac" }, { .compatible = "aspeed,ast2500-sdram-edac" }, + { .compatible = "aspeed,ast2600-sdram-edac" }, {}, }; +MODULE_DEVICE_TABLE(of, aspeed_of_match); static struct platform_driver aspeed_driver = { .driver = { @@ -392,5 +387,5 @@ module_platform_driver(aspeed_driver); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Stefan Schaeckeler "); -MODULE_DESCRIPTION("Aspeed AST2500 EDAC driver"); +MODULE_DESCRIPTION("Aspeed BMC SoC EDAC driver"); MODULE_VERSION("1.0"); -- 2.17.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-18.2 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8F344C64E8A for ; Wed, 2 Dec 2020 10:53:13 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 18F66221FB for ; Wed, 2 Dec 2020 10:53:13 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 18F66221FB Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=aspeedtech.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:Message-ID:Date: Subject:To:From:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=9c/DfavfYR4bu1qJs9D0zb1byB4wZG6KqujAyzl2Brg=; b=QmHp6a9rdUi9FNZJ/QvLsZFBj 6MTBssOuM10lDpbfww2QxFFb8vMd9KAdum7L/h++gi6AILxVs6m8q3egE99VZDbvdAEVy7X8LNryi NFcsMpXT30+bFqsmFk+xwf8Th7G/KYJRgOTb3dHdzokOBF3XdYjF30WlFTuyBCcrGD+T8Ui0LQDXU H9c32nPg1TkOskIEwerXLWQGg/Of7CJssLaHv2+ZychwFEYTb1RisytCrGBeq6P1spxJmOvpZxX1Q TTE2l287THPEkTM2yD8nYdCuR107Ynvt06LSjgg53fT9IlkY4fFoqEBBkgaPNN7YyPZJrcYGvfgK4 id78sw/Mg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kkPjq-00089o-KR; Wed, 02 Dec 2020 10:51:58 +0000 Received: from casper.infradead.org ([2001:8b0:10b:1236::1]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kkPjg-00086m-9Z for linux-arm-kernel@merlin.infradead.org; Wed, 02 Dec 2020 10:51:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=Content-Type:MIME-Version:References: In-Reply-To:Message-ID:Date:Subject:CC:To:From:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=i0SoBiMdrTYv8GgyUG9lLvFdEa/R/5XJ9AEths2+5Mo=; b=msRS1PjINO8WQyxIS4iMiwbibD etSWjI0FBUdKTtopEw6UZQu6Ayam1V9pHlhULRpfZdBaMxUOLtQLfcuivwkwC1TPIncHqIhcjMceK jKecUwduXuQwi0PYbET9LIMqQ/jkASGQDbi0bTbCmtoNQKGJlhVHjUm3nIdlNiTFc6qJh9qqZohSY CbbbXXPPzM1O6qhAhDpenx1Dl3nBIg1toQvYRKQaOUqhwZVh3N8o6yehhnZf/gx+uYoG2XZ7Q05I8 6nY2C+AvBE3W/+GsLYQUfi3Tc1Aw77fAScE8UyOKpdRXh3Tx7/R4ytFrcvfS1SoEMCEGinejPApuq RY0jAiiQ==; Received: from twspam01.aspeedtech.com ([211.20.114.71]) by casper.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kkP94-0004xO-Go for linux-arm-kernel@lists.infradead.org; Wed, 02 Dec 2020 10:14:03 +0000 Received: from mail.aspeedtech.com ([192.168.0.24]) by twspam01.aspeedtech.com with ESMTP id 0B2A9rYw086425; Wed, 2 Dec 2020 18:09:53 +0800 (GMT-8) (envelope-from troy_lee@aspeedtech.com) Received: from TroyLee-PC.localdomain (192.168.100.253) by TWMBX02.aspeed.com (192.168.0.24) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 2 Dec 2020 18:12:22 +0800 From: Troy Lee To: Stefan Schaeckeler , Rob Herring , Joel Stanley , Andrew Jeffery , "Borislav Petkov" , Mauro Carvalho Chehab , Tony Luck , James Morse , Robert Richter , "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , "moderated list:ARM/ASPEED MACHINE SUPPORT" , open list , "open list:EDAC-CORE" Subject: [PATCH v3 3/3] edac: Supporting AST2400 and AST2600 edac driver Date: Wed, 2 Dec 2020 18:12:18 +0800 Message-ID: <20201202101218.18393-3-troy_lee@aspeedtech.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20201202101218.18393-1-troy_lee@aspeedtech.com> References: <20201202101218.18393-1-troy_lee@aspeedtech.com> MIME-Version: 1.0 X-Originating-IP: [192.168.100.253] X-ClientProxiedBy: TWMBX02.aspeed.com (192.168.0.24) To TWMBX02.aspeed.com (192.168.0.24) X-DNSRBL: X-MAIL: twspam01.aspeedtech.com 0B2A9rYw086425 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201202_101359_659425_6AF9C03E X-CRM114-Status: GOOD ( 15.64 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: leetroy@gmail.com, troy_lee@aspeedtech.com, ryan_chen@aspeedtech.com Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Adding AST2400 and AST2600 edac driver support. Signed-off-by: Troy Lee --- Changes since v2: - Remove cross dependencies export functions - Update Kconfig depends on ARCH_ASPEED - Patch create against latest Linux kernel mainline --- drivers/edac/Kconfig | 6 +++--- drivers/edac/aspeed_edac.c | 15 +++++---------- 2 files changed, 8 insertions(+), 13 deletions(-) diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig index 7a47680d6f07..c410331e8ee8 100644 --- a/drivers/edac/Kconfig +++ b/drivers/edac/Kconfig @@ -515,10 +515,10 @@ config EDAC_QCOM health, you should probably say 'Y' here. config EDAC_ASPEED - tristate "Aspeed AST 2500 SoC" - depends on MACH_ASPEED_G5 + tristate "Aspeed AST BMC SoC" + depends on ARCH_ASPEED help - Support for error detection and correction on the Aspeed AST 2500 SoC. + Support for error detection and correction on the Aspeed AST BMC SoC. First, ECC must be configured in the bootloader. Then, this driver will expose error counters via the EDAC kernel framework. diff --git a/drivers/edac/aspeed_edac.c b/drivers/edac/aspeed_edac.c index fde809efc520..c9d1d8a8fcba 100644 --- a/drivers/edac/aspeed_edac.c +++ b/drivers/edac/aspeed_edac.c @@ -239,7 +239,7 @@ static int init_csrows(struct mem_ctl_info *mci) int rc; /* retrieve info about physical memory from device tree */ - np = of_find_node_by_path("/memory"); + np = of_find_node_by_name(NULL, "memory"); if (!np) { dev_err(mci->pdev, "dt: missing /memory node\n"); return -ENODEV; @@ -282,7 +282,6 @@ static int aspeed_probe(struct platform_device *pdev) struct edac_mc_layer layers[2]; struct mem_ctl_info *mci; void __iomem *regs; - u32 reg04; int rc; regs = devm_platform_ioremap_resource(pdev, 0); @@ -294,13 +293,6 @@ static int aspeed_probe(struct platform_device *pdev) if (IS_ERR(aspeed_regmap)) return PTR_ERR(aspeed_regmap); - /* bail out if ECC mode is not configured */ - regmap_read(aspeed_regmap, ASPEED_MCR_CONF, ®04); - if (!(reg04 & ASPEED_MCR_CONF_ECC)) { - dev_err(&pdev->dev, "ECC mode is not configured in u-boot\n"); - return -EPERM; - } - edac_op_state = EDAC_OPSTATE_INT; /* allocate & init EDAC MC data structure */ @@ -375,10 +367,13 @@ static int aspeed_remove(struct platform_device *pdev) static const struct of_device_id aspeed_of_match[] = { + { .compatible = "aspeed,ast2400-sdram-edac" }, { .compatible = "aspeed,ast2500-sdram-edac" }, + { .compatible = "aspeed,ast2600-sdram-edac" }, {}, }; +MODULE_DEVICE_TABLE(of, aspeed_of_match); static struct platform_driver aspeed_driver = { .driver = { @@ -392,5 +387,5 @@ module_platform_driver(aspeed_driver); MODULE_LICENSE("GPL"); MODULE_AUTHOR("Stefan Schaeckeler "); -MODULE_DESCRIPTION("Aspeed AST2500 EDAC driver"); +MODULE_DESCRIPTION("Aspeed BMC SoC EDAC driver"); MODULE_VERSION("1.0"); -- 2.17.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel