From patchwork Tue Jun 4 05:39:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Evgeniy Didin X-Patchwork-Id: 1109622 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=busybox.net (client-ip=140.211.166.137; helo=fraxinus.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=synopsys.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=synopsys.com header.i=@synopsys.com header.b="L2pp00G0"; dkim-atps=neutral Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45J19c1Kkxz9s3Z for ; Tue, 4 Jun 2019 15:45:37 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id 7186D8793A; Tue, 4 Jun 2019 05:45:32 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id OVL-e_vm0cup; Tue, 4 Jun 2019 05:45:30 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by fraxinus.osuosl.org (Postfix) with ESMTP id 06B3A8771E; Tue, 4 Jun 2019 05:45:30 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id D5CE21BF2BD for ; Tue, 4 Jun 2019 05:45:28 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id D13E188975 for ; Tue, 4 Jun 2019 05:45:28 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id o+PRc+QfVbxS for ; Tue, 4 Jun 2019 05:45:27 +0000 (UTC) X-Greylist: delayed 00:05:50 by SQLgrey-1.7.6 Received: from smtprelay-out1.synopsys.com (dc2-smtprelay2.synopsys.com [198.182.61.142]) by whitealder.osuosl.org (Postfix) with ESMTPS id 5D6FE88959 for ; Tue, 4 Jun 2019 05:45:27 +0000 (UTC) Received: from mailhost.synopsys.com (unknown [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 AF858C2602; Tue, 4 Jun 2019 05:39:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=synopsys.com; s=mail; t=1559626757; bh=B3ne0Tf8Cec/B+VpZfq750biiv64a36AOM2/3/k5zpE=; h=From:To:Cc:Subject:Date:From; b=L2pp00G0pANUZx1J3EqAftmfGpIjDP/UkYgH+zXzc5sVF0PFwCCGJ+fCM8h/eSdSV xO7+HS4VvlEF6tOeueJXC0GFJSmZPksRhw3U4jlDIu/ul0lcm9MAGnaKy92oga4tGW 9wVvt3XCHfSxPiLbbbURPXTtnFGUxGjLsjdevCLevkxdYZfh/nHOJQwc5gpIgsxayz D6EQMM9ILGX241XwQMvHrLuormPcJ8WRev+u7WR5qJ4Wxa+Py9/00aTTPgOy7WEyIO UE6peAWQu3oKo7Z1RuNi0hxfuCwPBfj4W+VJVi5F/rC834SKHe/XHGZ1MiwimB1K2d KHai+HLAJ3dDA== Received: from ru20arcgnu1.internal.synopsys.com (ru20arcgnu1.internal.synopsys.com [10.121.9.48]) by mailhost.synopsys.com (Postfix) with ESMTP id 359E6A022E; Tue, 4 Jun 2019 05:39:33 +0000 (UTC) From: Evgeniy Didin To: buildroot@busybox.net Date: Tue, 4 Jun 2019 08:39:27 +0300 Message-Id: <20190604053927.29319-1-Evgeniy.Didin@synopsys.com> X-Mailer: git-send-email 2.16.2 Subject: [Buildroot] [PATCH] ARC: Add support for ARC HS48 v3.1 processor X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Evgeniy Didin , arc-buildroot@synopsys.com, Thomas Petazzoni MIME-Version: 1.0 Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" This patch introduces recently released significant update to ARC HS family: ARC HS48. One of the major ARC HS48 features is dual-issue pipeline which requires a little bit modified instruction scheduling compared to single-issue cores (HS38), thus new "-mcpu/--with-cpu=hs4x". Also to address some peculiarities of early designs based on HS48 we introduced yet another "-mcpu/--with-cpu=hs4x_rel1" which we're going to use as well on some of our development boards. Note, there is a prerequisite patch: https://patchwork.ozlabs.org/patch/995220/ Signed-off-by: Evgeniy Didin Cc: Thomas Petazzoni Cc: arc-buildroot@synopsys.com --- arch/Config.in.arc | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/arch/Config.in.arc b/arch/Config.in.arc index 69bb1504a9..8e9cd96dd2 100644 --- a/arch/Config.in.arc +++ b/arch/Config.in.arc @@ -30,12 +30,21 @@ config BR2_archs38_full It corresponds to "hs38_slc_full" ARC HS template in ARChitect. + +config BR2_archs4x_rel31 + bool "ARC HS48 rel 31" + help + Latest release of HS48 processor + - Dual- and quad multiply and MC oprations + - Double-precision FPU + + endchoice # Choice of atomic instructions presence config BR2_ARC_ATOMIC_EXT bool "Atomic extension (LLOCK/SCOND instructions)" - default y if BR2_arc770d || BR2_archs38 || BR2_archs38_full + default y if BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 config BR2_ARCH default "arc" if BR2_arcle @@ -54,10 +63,11 @@ config BR2_GCC_TARGET_CPU default "arc700" if BR2_arc770d default "archs" if BR2_archs38 default "hs38_linux" if BR2_archs38_full + default "hs4x_rel31" if BR2_archs4x_rel31 config BR2_READELF_ARCH_NAME default "ARCompact" if BR2_arc750d || BR2_arc770d - default "ARCv2" if BR2_archs38 || BR2_archs38_full + default "ARCv2" if BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 choice prompt "MMU Page Size" @@ -77,7 +87,7 @@ choice config BR2_ARC_PAGE_SIZE_4K bool "4KB" - depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full + depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 config BR2_ARC_PAGE_SIZE_8K bool "8KB" @@ -87,7 +97,7 @@ config BR2_ARC_PAGE_SIZE_8K config BR2_ARC_PAGE_SIZE_16K bool "16KB" - depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full + depends on BR2_arc770d || BR2_archs38 || BR2_archs38_full || BR2_archs4x_rel31 endchoice