Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp1643691ybg; Thu, 4 Jun 2020 15:23:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyMfBX9bDwS2Cm++8eZkbkF6cl2vgV5+cnlMyyXlFTrAzMUd5h0Y8P5aYL+ORPaawgXp5Cy X-Received: by 2002:a50:8465:: with SMTP id 92mr6134363edp.388.1591309413158; Thu, 04 Jun 2020 15:23:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591309413; cv=none; d=google.com; s=arc-20160816; b=vo8PD1byiyyb5NMKwa+WQqlH0YNEtod0LJMADKv00mtDC5OmWest59rCwhKJVzl65n DFd1MgBjq3aryoYhqgmRWBZHwoy8avS41kgXFgcjOHVEhj3InM7IHRxbZPbPnzA70BLC MgFskt5yJ89RMBSqQmkOa4/jJOAOFyxs5rY4ZCBNPCXrBAPyVfxIyYPu1LPDtbO0S3m+ UesltUMHygJROdq8qrKpJY2kSrTz159UZNP5aqd8r/BMN2stiYj5U9vshIbCUYYDJR4I vXoZaDl6h5NjI35d09qa0Vlu4iLy1r6sm+1juy1aTs1z7nlJDkaPS/YkOAlOBrSf5T9a Fz6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=3A54mFIIuZPzrtKjcyhflMWkG4n4tbetBqwaw7zXSWA=; b=krn9iYdALpQ+eMtK+nEdUGSzpwogI+RLK5ivGztZt5DjhPKXRnSLN+3AyUIkNoIjVs Y01BnykDHROkVP4tukrcfUtJyTFKxin9OD47YnNYUoza55+ABV4SXnyCab5dCiKUE0ha YMjetjwvyjDRrSDgZR3zInnD+JG6OEyiNgsJ4PGi9BOYo9YaRaoabQ/U08uYHJrbfSdM beeab4oAlJ+8jJtWm9lS1+klre1w4CK7qjABniMWpZpfYggMGZC42ewJAvuz/TAIDwx/ OovNuWXalDdP4co2SpKL5jD/zZHe8AXh0ZbDsMgFYL/tKPVlqi88iEyti9xKKe6Ne7W3 D0QA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=lanO2LIa; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ay24si2485486edb.310.2020.06.04.15.23.10; Thu, 04 Jun 2020 15:23:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@synopsys.com header.s=mail header.b=lanO2LIa; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=synopsys.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730200AbgFDRjx (ORCPT + 99 others); Thu, 4 Jun 2020 13:39:53 -0400 Received: from smtprelay-out1.synopsys.com ([149.117.73.133]:39618 "EHLO smtprelay-out1.synopsys.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730126AbgFDRjv (ORCPT ); Thu, 4 Jun 2020 13:39:51 -0400 Received: from mailhost.synopsys.com (mdc-mailhost2.synopsys.com [10.225.0.210]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtprelay-out1.synopsys.com (Postfix) with ESMTPS id 16D8840069; Thu, 4 Jun 2020 17:39:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1591292391; bh=GEMxpmOCdzLjPq0Pu+A1Lsu+3IzlfoVaSV6+HhV9xEA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=lanO2LIaJj9fZ9baFWMj4FjGPLnEFw0QMEJ8gSD/WRt2WwIF9axegMwTfQr4lS9Hj Rf5udWoYKt+flNHJmvitoudFUmh0KNYkj4QHvF2ptSpNiDSs59/wvCykRPqEXtqadY dxe9iVfXfnJTWD5XWutz5WYkj0ifH53luE14hoXOCY28HKD6RvWY0QZvGLJAzcNDIJ SB0yR+ObEx397JoqcoF4ZYImjkQPnNUKBqid/SpWspdZdyqGiwHoouiMQIiEervWg2 55P5x6xBZBXEq+RouImRx8/WI80uy7X9ASkLXj3hR6kvpChB2xCsuUM9V8MnZ0FlXI UYcj+YpcyOdXw== Received: from paltsev-e7480.internal.synopsys.com (ru20-e7250.internal.synopsys.com [10.225.49.234]) by mailhost.synopsys.com (Postfix) with ESMTP id 947CBA0065; Thu, 4 Jun 2020 17:39:49 +0000 (UTC) X-SNPS-Relay: synopsys.com From: Eugeniy Paltsev To: linux-snps-arc@lists.infradead.org, Vineet Gupta Cc: linux-kernel@vger.kernel.org, Alexey Brodkin , Eugeniy Paltsev Subject: [PATCH v2 2/4] ARC: ARCv2: support loop buffer (LPB) disabling Date: Thu, 4 Jun 2020 20:39:25 +0300 Message-Id: <20200604173927.23127-3-Eugeniy.Paltsev@synopsys.com> X-Mailer: git-send-email 2.21.3 In-Reply-To: <20200604173927.23127-1-Eugeniy.Paltsev@synopsys.com> References: <20200604173927.23127-1-Eugeniy.Paltsev@synopsys.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On HS cores, loop buffer (LPB) is programmable in runtime and can be optionally disabled. Signed-off-by: Eugeniy Paltsev --- arch/arc/Kconfig | 6 ++++++ arch/arc/kernel/head.S | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig index 7034c217708f..2dc142c8e1f5 100644 --- a/arch/arc/Kconfig +++ b/arch/arc/Kconfig @@ -473,6 +473,12 @@ config ARC_IRQ_NO_AUTOSAVE This is programmable and can be optionally disabled in which case software INTERRUPT_PROLOGUE/EPILGUE do the needed work +config ARC_LPB_DISABLE + bool "Disable loop buffer (LPB)" + help + On HS cores, loop buffer (LPB) is programmable in runtime and can + be optionally disabled. + endif # ISA_ARCV2 endmenu # "ARC CPU Configuration" diff --git a/arch/arc/kernel/head.S b/arch/arc/kernel/head.S index 6eb23f1545ee..17fd1ed700cc 100644 --- a/arch/arc/kernel/head.S +++ b/arch/arc/kernel/head.S @@ -59,6 +59,14 @@ bclr r5, r5, STATUS_AD_BIT #endif kflag r5 + +#ifdef CONFIG_ARC_LPB_DISABLE + lr r5, [ARC_REG_LPB_BUILD] + breq r5, 0, 1f ; LPB doesn't exist + mov r5, 1 + sr r5, [ARC_REG_LPB_CTRL] +1: +#endif /* CONFIG_ARC_LPB_DISABLE */ #endif ; Config DSP_CTRL properly, so kernel may use integer multiply, ; multiply-accumulate, and divide operations -- 2.21.3