From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1EFC742C8A; Sun, 11 Jun 2023 15:19:22 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 99A5940A79; Sun, 11 Jun 2023 15:19:21 +0200 (CEST) Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2112.outbound.protection.outlook.com [40.107.94.112]) by mails.dpdk.org (Postfix) with ESMTP id 257F6400D5 for ; Sun, 11 Jun 2023 07:10:38 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JmGsD/fAT5+waGLrj7KLw4kD2ck5iXPlEonS9Rab0Y5c7JTHQZqo960L5F892IfHgLaErH9oW3GU6GMkLfth9euDke+UNqQjAxXEqsz2Bd+vm5pKarkrNZhLMZR/MoLuFFuKqcFpEjtCuptozZsQZ7NPP3nWn7Evo5DRV4uPSa/NgPUkS5upGVKUz1R6p9tiasrjTYQMXcpiikovYzb1laWUB/FRE6EnI7qKHsiU93VwWm6CvVH/lfodBZauWcwqlKkZkELXRZjgTwX8EG4kH3OQu0TcqPRE0s5kqwburJPfo5JTK0ioTmFq7129NI3nHF9W/qVUiVKnGDP6Rp52xQ== 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=HUP4ddTHNGJheetcG/bILx1JfO3sMP2h5jJprRGA4Vg=; b=aCTToDLKyo3pDFKKq1sOAChH5w9KETVaj7EBgJwlzpTS+CPMqSWPlghxhDVpgEYTaiS3TrvEdazF2Mczj8+zvRpbFArSCBcZQCoXN5FX9GWIWJYdaXW2fDPNex22Cis3W1OBUM6UXkUbSUEXcYI3kL2Xf2eHEFeps25Uews0rcCV8ceUb3hA/cq03DrTa792NTTDuqrt7Rc7njO9dXmEyMxx2pI4zvaX/QbgmBpYkPxCjhF6FMnTlQjDHlLQm+lCWrMpRdKMByO9wUDp4KPhW/6b0HaGQprFtccQzhrSHbN0k6HeWS5a92WNZBD71ai5Sg/tsmNheWkDV0w6xVUeDw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=os.amperecomputing.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HUP4ddTHNGJheetcG/bILx1JfO3sMP2h5jJprRGA4Vg=; b=m8xRGqyvzGBEdnzZLtyckOit0KCK3RPQUVWPT3E7KRFjomI7AkFva4SRldHl4j2jcrjDYUs+mD4JCsf7/nzJKWum83uImRzEyDrqRNe3MXzMoKGhDy9FD7rb3O3dz7jR9VcvNhIYJh/rpPckiMOsMEtULzUQIK292Zvh6KU5kX4= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=os.amperecomputing.com; Received: from SN6PR01MB4752.prod.exchangelabs.com (2603:10b6:805:d8::26) by SA1PR01MB6798.prod.exchangelabs.com (2603:10b6:806:186::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.29; Sun, 11 Jun 2023 05:10:33 +0000 Received: from SN6PR01MB4752.prod.exchangelabs.com ([fe80::b55:7b7e:1d5:419d]) by SN6PR01MB4752.prod.exchangelabs.com ([fe80::b55:7b7e:1d5:419d%3]) with mapi id 15.20.6455.039; Sun, 11 Jun 2023 05:10:33 +0000 From: Yutang Jiang To: dev@dpdk.org Cc: patches@amperecomputing.com, yutang.jiang@amperecomputing.com, jiangyutang@os.amperecomputing.com Subject: [PATCH] config/arm: add Ampere Altra/AltraMax/AmpereOne platform Date: Sun, 11 Jun 2023 13:03:10 +0800 Message-Id: <20230611050310.22195-1-jiangyutang@os.amperecomputing.com> X-Mailer: git-send-email 2.40.1 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: CH0PR08CA0005.namprd08.prod.outlook.com (2603:10b6:610:33::10) To SN6PR01MB4752.prod.exchangelabs.com (2603:10b6:805:d8::26) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN6PR01MB4752:EE_|SA1PR01MB6798:EE_ X-MS-Office365-Filtering-Correlation-Id: 15297e97-0287-46f1-9fca-08db6a3a2ecc X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: uGvz2KdqOVhcK5nFND1PYAw9PW1xDph9HQdaesPUH9cfRm8AIkzfgN7dcGQCRfkoe/Lpw+5dmYS+ktegXjwkzBN9SdB4Ppjkhe5Og2Fo9pLR/yutjgexNhDS844jmjBrnePulW4fZ5aY9ziaEOm1+10k6/Zj4mfPQeJUjC19RcBIhAvum8BKDno8fui78IHeYDevgKH8OL2NxpLq0VekqOJW3t0q/A1V84+WeA6/BmtYol+yWyk1JcvSl1QfW4fqXTYI9URd2dZNQugaj8Q2BVBTniSyafVEPS1ECshHsfKLjJ0VM6BjImD2GyuQLqRsIRFtbLyOskYXA8oSvH+L8K6xXIocxuDtRkIYQ0R1UZTu+/74jibaeSqU6n1tA9esapAlwD386g1xaolwBOe2ROez+Fz3p5BhvSJGcqMnts5DVi51B6Yu57KWSXjjOWCul8qUbSdY/UKE2BvXL3gX2orAZvd1DYCMaEjf3NNJJNklAyePySU3/VGhs+3vzAw1P107yejKy5DvLEsZBHt+4KDaRFGZVkMaNiKmZKPLsHB+KtG2wvXnyQzG7LGHbMxu4xBeQWJiGNmGRruXJTEpuNN69Beg3HtWcaVeeGAbpGUp8VU8jvAzrvfMEMOJqSpg X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SN6PR01MB4752.prod.exchangelabs.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(39850400004)(396003)(346002)(376002)(136003)(366004)(451199021)(316002)(6486002)(41300700001)(52116002)(83380400001)(86362001)(2616005)(6506007)(1076003)(26005)(186003)(107886003)(2906002)(6512007)(38100700002)(38350700002)(8676002)(5660300002)(8936002)(66556008)(66476007)(66946007)(478600001)(6666004)(4326008)(6916009); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?sqic8tqhExV/E5lmGKmKSQ3ZTZJxt8u1f0jofRD00S825tOGEKIzaXCO/zAh?= =?us-ascii?Q?bTLyw/knf7180qbdb3vHOatU6uw9/JMRX9ja5VEi8Ab4u/36dKGDmmqyjn7c?= =?us-ascii?Q?IgMRj3nUj6cnROLkeICiTVUfGLTNCVdjP6ozt8c/M00yrNT/cWIlSsDVUAiN?= =?us-ascii?Q?3+cfe89lvyfNtv1eDHFwjtkG9a4kYUkR2iFkrQ/2ui0W2pG4sVXtzilusjtw?= =?us-ascii?Q?h8LY4qZPraHzRLlvHE31FajNf33DdpphNb6YJ4PCPnZUG32JuHFJU75vlEFi?= =?us-ascii?Q?FYDzQihxGdFWIut8rI0nP0cjrxSirlitTqcziD9sHJh9lZa3bcl8rdA92d6v?= =?us-ascii?Q?e4bUUyLHWrpGncdRolPng/voNQXFl4N/jYsL8Rl9ct+jomoI0HrFlIxqf/pN?= =?us-ascii?Q?9WmvL/fT4d5hEvib5xNQdCoawMk2NLwde6490vGKIuGjznlBukgMYxdmPzuv?= =?us-ascii?Q?g8TVLNlQOQvh9r5s86A/NVfzXj9k7hotj0pltLQv34B2pNuEQjGKpAkQhCVi?= =?us-ascii?Q?OiOCW0SWU2V7LZUFIp/POAHBQVtOHqI2OrRRLpYuDZYYK+Pf8KFubEEyYdY8?= =?us-ascii?Q?Xt22pBdvQXNYHWVXMp3sGG8ev9Mbgj4K35SydCrH+Kzo87rIM3Rmv1T3KwIS?= =?us-ascii?Q?2fiGnghhQUKO8no5fX7CcRUiu9f+VZO5qf2WxgIWTJnC/CrMpiLvb5tLi++o?= =?us-ascii?Q?Go2HBIIJXTiwl4M1YVVcMkrvMzJSgva3wG9PfeNNmQySE2QiTTm3U3izR8LH?= =?us-ascii?Q?6l3XnBmZuulbcaRpe34UM70AfAkpUChkAnbF5xubMS2Giz5lsPHQ/BP35xCV?= =?us-ascii?Q?VJ89ewNVdghTA4yZ0lVNGDv6Qc425Cwu+rWmqvfWLiS2hQATD2/56lEC3Yf9?= =?us-ascii?Q?+HjR9eHXBvKiHE+G+KYxgwPQFtZBVo5VB9Ews1+ydt6CZKqLueK/pAoEhwjd?= =?us-ascii?Q?g92EUJF8mg3QO8VlH3d6os6b3KMvsVRlz3eiWZRpFA/McYb5cbrmOHd3Ri5B?= =?us-ascii?Q?/G5tjb7Nq598pOM92c7vU0b8aO9i7qADIeI1C6r4a++zKjDCxUYXaqFB1KWm?= =?us-ascii?Q?eTURQ76Ye2rAiSpneHgCogFhxrSHXl8NiMRKhy6oPCR6OUuf517cIHCg9fbJ?= =?us-ascii?Q?z1HRuQiHegApZB2VtH1U/FXM3CK8XUQEjQgMK9s6y5tHAiFBQiASBRlyOj4w?= =?us-ascii?Q?6qK5Jkic1+tF8evjfHm4ibsrwcGfcfBqJtVIx+qo5ZwNhOc+j9ogZtmMJNAI?= =?us-ascii?Q?sERpR+HnhSZ5xKewBPSlwx4RzrxhTc0i3iCajWEF8U3ARNigh0cQD2IBDuHD?= =?us-ascii?Q?huhtfK94awBuP5erkV+oU+ejx+QeyQ1LHzmaG8nR4zbwlbdtYG86O0sntx+j?= =?us-ascii?Q?ILGRVqvYLKAmm2w2TYDG3v+w6IAkLisbwnPHHTBICEe14vyGQyuRvELrWsKo?= =?us-ascii?Q?1ZyTp15euZexvAm1Rk39q8xB4dGanDuNDrYpQJvh/cbwSdMD/dmuAnWvuOy8?= =?us-ascii?Q?zuzzUlShyHXCwzO4gctCpTKghD3t56DHw8RqlAsJY9aJFgAQ+hxIOQTn92lW?= =?us-ascii?Q?BMQYyTUoyL+5G5ocHdrdqbRexm72+RP3UsvKhTDtEACnoQgjvLbxL+RniCSQ?= =?us-ascii?Q?IUmgQamEJlXePM/oqQ3UWa0SN7T0AFsVKyJIkjKFllm0?= X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: 15297e97-0287-46f1-9fca-08db6a3a2ecc X-MS-Exchange-CrossTenant-AuthSource: SN6PR01MB4752.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jun 2023 05:10:33.5657 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: /dj+mxlTNKqyZ6TnkNc4seC+bZDxEMkLPptIEl72gHCtzwHzxSLIx4FKLEbDQL2W0qcZ2aTsu6Ql64F+VsyG3SbZDJSvIDktyC1ZfXjKXKL95qN6Pb9fumtyTV+4ndb+ X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR01MB6798 X-Mailman-Approved-At: Sun, 11 Jun 2023 15:19:21 +0200 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org This patch add Ampere series platform support for DPDK: 1. Merging the eMAG and AmpereOne to the one struct implementer_ampere. 2. The microarchitecture of Altra/AltraMax is N1, which implementer/part_number is defined in arm, so the definition of RTE_MAX_LCORE/RTE_MAX_NUMA_NODES refers to the quadrant sub-numa definition in AltraMax 2P system. 3. Added basic definition of AmpereOne. Signed-off-by: Yutang Jiang Signed-off-by: Yutang Jiang --- config/arm/arm64_altra_linux_gcc | 16 +++++++++ config/arm/arm64_ampereone_linux_gcc | 16 +++++++++ config/arm/meson.build | 52 ++++++++++++++++++++++++---- 3 files changed, 78 insertions(+), 6 deletions(-) create mode 100644 config/arm/arm64_altra_linux_gcc create mode 100644 config/arm/arm64_ampereone_linux_gcc diff --git a/config/arm/arm64_altra_linux_gcc b/config/arm/arm64_altra_linux_gcc new file mode 100644 index 0000000000..ce0667ebe2 --- /dev/null +++ b/config/arm/arm64_altra_linux_gcc @@ -0,0 +1,16 @@ +[binaries] +c = ['ccache', 'aarch64-linux-gnu-gcc'] +cpp = ['ccache', 'aarch64-linux-gnu-g++'] +ar = 'aarch64-linux-gnu-gcc-ar' +strip = 'aarch64-linux-gnu-strip' +pkgconfig = 'aarch64-linux-gnu-pkg-config' +pcap-config = '' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'armv8.2-a' +endian = 'little' + +[properties] +platform = 'altra' diff --git a/config/arm/arm64_ampereone_linux_gcc b/config/arm/arm64_ampereone_linux_gcc new file mode 100644 index 0000000000..8964432a74 --- /dev/null +++ b/config/arm/arm64_ampereone_linux_gcc @@ -0,0 +1,16 @@ +[binaries] +c = ['ccache', 'aarch64-linux-gnu-gcc'] +cpp = ['ccache', 'aarch64-linux-gnu-g++'] +ar = 'aarch64-linux-gnu-gcc-ar' +strip = 'aarch64-linux-gnu-strip' +pkgconfig = 'aarch64-linux-gnu-pkg-config' +pcap-config = '' + +[host_machine] +system = 'linux' +cpu_family = 'aarch64' +cpu = 'armv8.6-a' +endian = 'little' + +[properties] +platform = 'ampereone' diff --git a/config/arm/meson.build b/config/arm/meson.build index 43f6a551a2..57424b88dc 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -71,8 +71,8 @@ part_number_config_arm = { ['RTE_MACHINE', '"neoverse-n1"'], ['RTE_ARM_FEATURE_ATOMICS', true], ['RTE_MAX_MEM_MB', 1048576], - ['RTE_MAX_LCORE', 160], - ['RTE_MAX_NUMA_NODES', 2] + ['RTE_MAX_LCORE', 256], + ['RTE_MAX_NUMA_NODES', 8] ] }, '0xd40': { @@ -166,16 +166,29 @@ implementer_cavium = { implementer_ampere = { 'description': 'Ampere Computing', 'flags': [ - ['RTE_MACHINE', '"emag"'], ['RTE_CACHE_LINE_SIZE', 64], - ['RTE_MAX_LCORE', 32], - ['RTE_MAX_NUMA_NODES', 1] + ['RTE_MAX_LCORE', 1024], + ['RTE_MAX_NUMA_NODES', 8] ], 'part_number_config': { '0x0': { 'march': 'armv8-a', 'march_features': ['crc', 'crypto'], - 'compiler_options': ['-mtune=emag'] + 'compiler_options': ['-mtune=emag'], + 'flags': [ + ['RTE_MACHINE', '"eMAG"'], + ['RTE_MAX_LCORE', 32], + ['RTE_MAX_NUMA_NODES', 1] + ] + }, + '0xac3': { + 'march': 'armv8.6-a', + 'march_features': ['crc', 'crypto'], + 'compiler_options': ['-mcpu=ampere1'], + 'flags': [ + ['RTE_MACHINE', '"AmpereOne"'], + ['RTE_MAX_LCORE', 320] + ] } } } @@ -266,6 +279,7 @@ implementers = { '0x43': implementer_cavium, '0x48': implementer_hisilicon, '0x50': implementer_ampere, + '0xc0': implementer_ampere, '0x51': implementer_qualcomm, '0x70': implementer_phytium, } @@ -347,6 +361,28 @@ soc_emag = { 'part_number': '0x0' } +soc_altra = { + 'description': 'Ampere Altra/AltraMax', + 'implementer': '0x41', + 'part_number': '0xd0c', + 'flags': [ + ['RTE_MAX_LCORE', 256], + ['RTE_MAX_NUMA_NODES', 8] + ], + 'numa': true +} + +soc_ampereone = { + 'description': 'Ampere AmpereOne', + 'implementer': '0xc0', + 'part_number': '0xac3', + 'flags': [ + ['RTE_MAX_LCORE', 320], + ['RTE_MAX_NUMA_NODES', 8] + ], + 'numa': true +} + soc_ft2000plus = { 'description': 'Phytium FT-2000+', 'implementer': '0x70', @@ -469,6 +505,8 @@ cn9k: Marvell OCTEON 9 cn10k: Marvell OCTEON 10 dpaa: NXP DPAA emag: Ampere eMAG +altra: Ampere Altra/AltraMax +ampereone: Ampere AmpereOne ft2000plus: Phytium FT-2000+ tys2500: Phytium TengYun S2500 graviton2: AWS Graviton2 @@ -496,6 +534,8 @@ socs = { 'cn10k' : soc_cn10k, 'dpaa': soc_dpaa, 'emag': soc_emag, + 'altra': soc_altra, + 'ampereone': soc_ampereone, 'ft2000plus': soc_ft2000plus, 'tys2500': soc_tys2500, 'graviton2': soc_graviton2, -- 2.40.0