From patchwork Thu Jun 30 08:36:38 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vladimir Murzin X-Patchwork-Id: 12901418 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 586BFC433EF for ; Thu, 30 Jun 2022 08:38:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=HTbY7qiIw4RHTp8C9iqK2Mrufckf2dhubEngjqffjpk=; b=Op5XN8T8NYJHYq TafETm+HEe1YiClXvxguHtYFzrNNu9MeLSEj9Ffr9hfyJ6EklsIzVU56InZSfoTsIQNLsWJGWLtP1 Cmt0HikJASryD/+2q/PmESIvRb+/8qagAjUGUTV5dfHZvl5Y9r7pUE3qwMU/CJVLiyKBSYIsvswxr Jmh5nJgYbAPKgxnv2oBZzmvCAD+GLtJnsSycpB1HOlZuG9tdNDlnM49gMheIduJzOlK8UjyIxdYCJ YdgvvY0BtCQPo5IS6GYUfAuA2CYEpRvuWClTcvSj96KqoyLd+EwzuCyZ3mn+U66H6T+AF7YfyAdCy y4J0IsPgk3jHexSZ27dA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o6pfm-00G3Us-7E; Thu, 30 Jun 2022 08:37:14 +0000 Received: from foss.arm.com ([217.140.110.172]) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1o6pfc-00G3Qg-5U for linux-arm-kernel@lists.infradead.org; Thu, 30 Jun 2022 08:37:05 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id BC8221BCA; Thu, 30 Jun 2022 01:36:59 -0700 (PDT) Received: from login2.euhpc.arm.com (login2.euhpc.arm.com [10.6.27.34]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id D765B3F66F; Thu, 30 Jun 2022 01:36:58 -0700 (PDT) From: Vladimir Murzin To: linux-arm-kernel@lists.infradead.org Cc: arnd@arndb.de, ayan.kumar.halder@xilinx.com, stefanos@xilinx.com Subject: [RFC PATCH 0/3] ARM: Support Cortex-R platform(s) Date: Thu, 30 Jun 2022 09:36:38 +0100 Message-Id: <20220630083641.21835-1-vladimir.murzin@arm.com> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220630_013704_296625_E64CE84D X-CRM114-Status: UNSURE ( 6.91 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, I've been running Linux on Cortex-R cores with downstream patches for several years already. There are few reasons why we have not got any real platform supporting Cortex-R cores so far: 1) lack of interest 2) lack of easily available platforms 3) missing Kconfig bits During these years I've been receiving questions (mostly in private) about running Linux with Cortex-R cores. Use cases vary, but mostly fall under "we know Linux and do not want yet another RTOS", also people not always care about real-time features of R-class cores and see it as an upgrade from M-class cores. Sometime ago MPS3 platform got support for FPGA image [1] with Cortex-R52 cores where Linux can live comfortably. This patchset addresses #3 and brings support for MPS3 platform featuring Cortex-R52 [1] https://developer.arm.com/downloads/-/download-fpga-images Vladimir Murzin (3): ARM: Introduce ARM_SINGLE_ARMV7R for ARMv7-R platforms ARM: mps2: Split into ARCH/MACH options ARM: Introduce MPS3 AN536 arch/arm/Kconfig | 31 ++++--- arch/arm/Kconfig.debug | 6 +- arch/arm/Makefile | 2 + arch/arm/boot/dts/Makefile | 3 +- arch/arm/boot/dts/mps3-an536.dts | 135 +++++++++++++++++++++++++++++ arch/arm/kernel/devtree.c | 3 +- arch/arm/mach-versatile/Kconfig | 47 ++++++++++ arch/arm/mach-versatile/v2m-mps2.c | 3 +- 8 files changed, 212 insertions(+), 18 deletions(-) create mode 100644 arch/arm/boot/dts/mps3-an536.dts