Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp144690pxb; Wed, 18 Nov 2020 00:09:59 -0800 (PST) X-Google-Smtp-Source: ABdhPJxgxzqwrXopFaZENKCx+5Qs/N21nlv/U2C/UU1L+XznNWwVcsdl7fUEp5vFHI4Zs0Djtgbz X-Received: by 2002:a17:906:2a09:: with SMTP id j9mr22243531eje.355.1605686999723; Wed, 18 Nov 2020 00:09:59 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1605686999; cv=pass; d=google.com; s=arc-20160816; b=DEwkAHE5J9mGchqKvAX7jShZ7UK1C5eXF4DqIV81Pz/5ufb9+xkUmyEP03EGii/+0s p+NnN1rb1dsmcT/4NWatBx4A5zd85s+ZaEy47NSkfLwHZa27D56GFtRwOimwbuOumtf7 oZg3n1APOxlKqRLZZ7t3UZ/OA0qmr5ziABOV7A8IqXW7A7fp7t98wLG9/z6p1CbdDGSd UusXRu2UdbU7lPQwlMklWVYMSWrIjliSSldxfGqJy0+xmegrXbaefgHty0VTxO5lA4RU zkcdN5ah5eP/IHU5cwf4kDFCrt8LudOonZ/vBT+nCQLtqIDCpcDlD2Wb7cFZZAo6ZJF0 vf0Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:in-reply-to:message-id :date:subject:cc:to:from:envelope-to:dkim-signature; bh=BUPuJo5XWSfgBhKGuXALykKjX10O+b+opGKDMEzds/k=; b=0qn4uNn6BaiEGUDSkv6S4hKWjD7SyMgSV7M1/R1oRXC3u3a/YRWT+todjxDaqAXKxW P3eJ2FJGoOUHha9YWtmAhYvFB8aPK0+H7otgWhXYsjFO4uT1x2BPgD9PJpFcSiqNiWVX 26vVfBI/FAppoO7D8t8AFymlxsXPIXqZk1nzFRh89KdEG8QkdRg230TTYlChcTtu/ctx hqOgWXkNcYFYb9DwFlZ/9DgPU3KksZqkkdZTBXPgF4fx0t1JyZZ4r1K2AkrqYfSHgD8C I6Tdp83BeuFKp8Tfrk03GIUy6WdVW9yDXKHGwrYRf6thc4ynY8AkzkXWIwc+NhAYvWi9 22oA== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@xilinx.onmicrosoft.com header.s=selector2-xilinx-onmicrosoft-com header.b=r3QnKOKF; arc=pass (i=1 spf=pass spfdomain=xilinx.com); 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o10si15891701edf.226.2020.11.18.00.09.36; Wed, 18 Nov 2020 00:09:59 -0800 (PST) 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=@xilinx.onmicrosoft.com header.s=selector2-xilinx-onmicrosoft-com header.b=r3QnKOKF; arc=pass (i=1 spf=pass spfdomain=xilinx.com); 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727179AbgKRIGu (ORCPT + 99 others); Wed, 18 Nov 2020 03:06:50 -0500 Received: from mail-bn8nam08on2088.outbound.protection.outlook.com ([40.107.100.88]:18394 "EHLO NAM04-BN8-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726935AbgKRIGt (ORCPT ); Wed, 18 Nov 2020 03:06:49 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VX/CytrE2lgOZn9aRqvzSYSMxqRcmORPjBsIvxsJJaCC/wD/iL6Dti5h2VGCWUBq1kcAjgVSX6hJ3lbsgekm8gmK5wdxyhpwQI14b1ihNWmbACN6qH5ZGyKAmd1wR6Hn1buJ9nVFEQ/qw8yCI05LHMxMV8b2ashRTsxqo9A58KWV90sgZ1XqcoiOcHrxfEQM4sGvKJkwLlZfTyOojqQWgffBe4IN2/DvKzAZs0RfgEDq2C577e6s+GrOID6VoNsFPv0jNA7IC2lWbURockUUsV/LwAnUnQKHsKojb4GuPnDhz+kjXqxSvUC+NzOmX+RX1s/l2BIvnGp4qwEFMTbP1A== 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-SenderADCheck; bh=BUPuJo5XWSfgBhKGuXALykKjX10O+b+opGKDMEzds/k=; b=kuXO2h2Mb9oqCwJ/QfqQqF76GcheUwWXT3vrju0RNi/ucbdPv2t8QQOsscZod0NcBRLbYxcUFsBioUwrdY7jHHfhrVId13URUp6gNwaUuIahw1trM4EZzlL3G6AkTarImqMAfOdzYpkscucK5p8U6lqASvD1q/IPuXmgVOc9q2M0dFFmg/6pGe9w3AJyqmjLfkQ6P1vLkI38uw5DoH6NpQlM5tHwmfsTUvYgzTThqpLcksYdWb1uCy7G3xyCzFgVFqoRdLPMxXdSRFrMVyhCBFMWTx4qY6buUGCFShTxOUs1vnd7TLi5ZX5UxlhDcO1hvdVxCJ0Rg4in9dGxgpYS+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 149.199.62.198) smtp.rcpttodomain=kernel.org smtp.mailfrom=xilinx.com; dmarc=bestguesspass action=none header.from=xilinx.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector2-xilinx-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BUPuJo5XWSfgBhKGuXALykKjX10O+b+opGKDMEzds/k=; b=r3QnKOKFy1rCaQU3IFEokaDISpHNnjjlk/bZopGEhsvCjNSr6X0Xef3pyzTvMQzlFXK19hWBir6uHsSJeUCRRLLLj/PYAEb9pEjBtxvzAiOiwbxmDjhHThAk24B0tle6rEfem7moZ0OCtVhOcTKhB4qozPRxHo07lFXbQ0In1cg= Received: from CY4PR22CA0067.namprd22.prod.outlook.com (2603:10b6:903:ae::29) by BN7PR02MB4098.namprd02.prod.outlook.com (2603:10b6:406:fd::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3499.28; Wed, 18 Nov 2020 08:06:44 +0000 Received: from CY1NAM02FT033.eop-nam02.prod.protection.outlook.com (2603:10b6:903:ae:cafe::bb) by CY4PR22CA0067.outlook.office365.com (2603:10b6:903:ae::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.20 via Frontend Transport; Wed, 18 Nov 2020 08:06:44 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 149.199.62.198) smtp.mailfrom=xilinx.com; kernel.org; dkim=none (message not signed) header.d=none;kernel.org; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.62.198 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.62.198; helo=xsj-pvapexch02.xlnx.xilinx.com; Received: from xsj-pvapexch02.xlnx.xilinx.com (149.199.62.198) by CY1NAM02FT033.mail.protection.outlook.com (10.152.75.179) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.3564.22 via Frontend Transport; Wed, 18 Nov 2020 08:06:44 +0000 Received: from xsj-pvapexch02.xlnx.xilinx.com (172.19.86.41) by xsj-pvapexch02.xlnx.xilinx.com (172.19.86.41) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Wed, 18 Nov 2020 00:06:33 -0800 Received: from smtp.xilinx.com (172.19.127.95) by xsj-pvapexch02.xlnx.xilinx.com (172.19.86.41) with Microsoft SMTP Server id 15.1.1913.5 via Frontend Transport; Wed, 18 Nov 2020 00:06:33 -0800 Envelope-to: michal.simek@xilinx.com, derek.kiernan@xilinx.com, dragan.cvetic@xilinx.com, rajan.vaja@xilinx.com, tejas.patel@xilinx.com, manish.narani@xilinx.com, ravi.patel@xilinx.com, wendy.liang@xilinx.com, robh+dt@kernel.org, arnd@arndb.de, gregkh@linuxfoundation.org, sumit.semwal@linaro.org, christian.koenig@amd.com, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linaro-mm-sig@lists.linaro.org Received: from [172.19.2.167] (port=35936 helo=xsjjliang50.xilinx.com) by smtp.xilinx.com with esmtp (Exim 4.90) (envelope-from ) id 1kfIU5-0000Nk-HN; Wed, 18 Nov 2020 00:06:33 -0800 From: Wendy Liang To: , , , , , , , , , , , CC: , , , , , , "Wendy Liang" Subject: [PATCH 1/9] dt-binding: soc: xilinx: ai-engine: Add AI engine binding Date: Wed, 18 Nov 2020 00:06:12 -0800 Message-ID: <1605686780-17886-2-git-send-email-wendy.liang@xilinx.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1605686780-17886-1-git-send-email-wendy.liang@xilinx.com> References: <1605686780-17886-1-git-send-email-wendy.liang@xilinx.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: ee8aebb6-bd4e-42cc-5318-08d88b98e3ac X-MS-TrafficTypeDiagnostic: BN7PR02MB4098: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:8273; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: szaCN751K3IWGxY8AkuBALWaulmtXbObtY1Vwh7xuhdUoeRnE4GaDNa8G0rmXA9p5ag6VhUJXq+evNVjIvNlCM7BW1dK2KHtnxcHq6ckhmro8VD3frHX3HDx1Sa5784oZiTUT8zmp9BpX7WK4YIKt1HdyMzXVJMlARX8MM+yZiJnoJW6R5sDxwYj8+62+cVhZ6rw0kgCG5BRZrAEmSl3XjST3ze11tjk17YXFvcS/au4eWARgQetvco69BDUIyi3HwRF7y7WGQzhPxzW79dbDrxAf2bu/sUJmDonSofcI6RTroVZEPrOjb1cvbvsH7Gr6wkOveFmOQD7lQCaEbSE2EYzNQgnaY3rgIyJI80FqUlRX2USReiUKjAqZQjn5AchCworWfDZjHOVNVQA2500PlFsi1nR4oCKvzauHfDYtMqR5gu7EMkaQ4V38Gm8C4Cx2GDADHsKgjB5tJDwJRBnhvwimeKgK8eaxwTHZuQM4li7DORWeVkEvdFa/GowyD4iCFyr0Vn+712/FqWuypvUXA== X-Forefront-Antispam-Report: CIP:149.199.62.198;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:xsj-pvapexch02.xlnx.xilinx.com;PTR:unknown-62-198.xilinx.com;CAT:NONE;SFS:(4636009)(396003)(39850400004)(136003)(376002)(346002)(46966005)(44832011)(9786002)(6636002)(5660300002)(36756003)(478600001)(6666004)(2616005)(426003)(356005)(47076004)(336012)(7696005)(70586007)(82740400003)(921005)(26005)(70206006)(7636003)(4326008)(36906005)(8936002)(110136005)(316002)(83380400001)(186003)(7416002)(107886003)(54906003)(2906002)(966005)(8676002)(82310400003)(102446001);DIR:OUT;SFP:1101; X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Nov 2020 08:06:44.3306 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ee8aebb6-bd4e-42cc-5318-08d88b98e3ac X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c;Ip=[149.199.62.198];Helo=[xsj-pvapexch02.xlnx.xilinx.com] X-MS-Exchange-CrossTenant-AuthSource: CY1NAM02FT033.eop-nam02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN7PR02MB4098 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Xilinx AI engine array can be partitioned statically for different applications. In the device tree, there will be device node for the AI engine device, and device nodes for the statically configured AI engine partitions. Each of the statically configured partition has a partition ID in the system. Signed-off-by: Wendy Liang --- .../bindings/soc/xilinx/xlnx,ai-engine.yaml | 119 +++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/xilinx/xlnx,ai-engine.yaml diff --git a/Documentation/devicetree/bindings/soc/xilinx/xlnx,ai-engine.yaml b/Documentation/devicetree/bindings/soc/xilinx/xlnx,ai-engine.yaml new file mode 100644 index 0000000..67e64f5 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/xilinx/xlnx,ai-engine.yaml @@ -0,0 +1,119 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/xilinx/xlnx,ai-engine.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Xilinx AI Engine + +maintainers: + - Wendy Liang + +description: |+ + The Xilinx AI Engine is a tile processor with many cores (up to 400) that + can run in parallel. The data routing between cores is configured through + internal switches, and shim tiles interface with external interconnect, such + as memory or PL. + +properties: + compatible: + const: xlnx,ai-engine-v1.0 + + reg: + description: | + Physical base address and length of the device registers. + The AI engine address space assigned to Linux is defined by Xilinx + platform design tool. + + '#address-cells': + enum: [2] + description: | + size of cell to describe AI engine range of tiles address. + It is the location of the starting tile of the range. + As the AI engine tiles are 2D array, the location of a tile + is presented as (column, row), the address cell is 2. + + '#size-cells': + enum: [2] + description: | + size of cell to describe AI engine range of tiles size. + As the AI engine tiles are 2D array, the size cell is 2. + + interrupts: + maxItems: 3 + + interrupt-names: + description: | + Should be "interrupt1", "interrupt2" or "interrupt3". + +required: + - compatible + - reg + - '#address-cells' + - '#size-cells' + - power-domains + - interrupt-parent + - interrupts + - interrupt-names + +patternProperties: + "^partition[0-9]@[0-9]+$": + type: object + description: | + AI engine partition which is a group of column based tiles of the AI + engine device. Each AI engine partition is isolated from the other + AI engine partitions. An AI engine partition is defined by Xilinx + platform design tools. Each partition has a SHIM row and core tiles rows. + A SHIM row contains SHIM tiles which are the interface to external + components. AXI master can access AI engine registers, push data to and + fetch data from AI engine through the SHIM tiles. Core tiles are the + compute tiles. + + properties: + reg: + description: | + It describes the group of tiles of the AI engine partition. It needs + to include the SHIM row. The format is defined by the parent AI engine + device node's '#address-cells' and '#size-cells' properties. e.g. a v1 + AI engine device has 2D tiles array, the first row is SHIM row. A + partition which has 50 columns and 8 rows of core tiles and 1 row of + SHIM tiles will be presented as <0 0 50 9>. + + label: + maxItems: 1 + + xlnx,partition-id: + $ref: /schemas/types.yaml#/definitions/uint32 + description: | + AI engine partition ID, which is defined by Xilinx platform design + tool to identify the AI engine partition in the system. + + required: + - reg + - xlnx,partition-id + +examples: + - | + bus { + #address-cells = <2>; + #size-cells = <2>; + + ai_engine: ai-engine@20000000000 { + compatible = "xlnx,ai-engine-v1.0"; + reg = <0x200 0x0 0x1 0x0>; + #address-cells = <2>; + #size-cells = <2>; + power-domains = <&versal_firmware 0x18224072>; + interrupt-parent = <&gic>; + interrupts = <0x0 0x94 0x4>, + <0x0 0x95 0x4>, + <0x0 0x96 0x4>; + interrupt-names = "interrupt1", "interrupt2", "interrupt3"; + + aie_partition0: aie-partition@0 { + /* 50 columns and 8 core tile rows + 1 SHIM row */ + reg = <0 0 50 9>; + xlnx,partition-id = <1>; + }; + }; + }; -- 2.7.4