From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from TWMBX01.aspeed.com (mail.aspeedtech.com [211.20.114.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A762F38E5D7; Wed, 25 Feb 2026 09:24:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=211.20.114.72 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772011496; cv=none; b=SKIc8VH4Md7cskl4jNzSs+Tw/r9VQK6bJ5/Yqh316ZecrztW8ZFJGKEcckaO4gYDCpecGgq8rtDRHm2UN4h8cZ0DjnU05izLhr88oQEqd3iYZr2R1y7LV9BbcIcSlyfEV3n6ZcIBxwilfz5vvWJRO2OTdz31R0G4dpW8Lm6OUfE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772011496; c=relaxed/simple; bh=oX37qsTcUQZ/XyFfLT9VnkE5sPvidHdjowEh6vs+5BE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=APpjFl0NFNkHUwLfFs3YifGvDIs7i0UAMhurX/Pe8iGDHP0tA2Ql9njn3qaVMLix2/QxUnPeFNBNpCx0nKzQU9RsQFRuUxVuq0AJiqvxAe6jJdXB8jAFJrHiocc+z4VjPPJKHWunQpAIYNws7k43Yw9fOVQwGc6jp9wGnbij+MQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com; spf=pass smtp.mailfrom=aspeedtech.com; arc=none smtp.client-ip=211.20.114.72 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aspeedtech.com Received: from TWMBX01.aspeed.com (192.168.0.62) by TWMBX01.aspeed.com (192.168.0.62) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.10; Wed, 25 Feb 2026 17:19:41 +0800 Received: from [127.0.1.1] (192.168.10.13) by TWMBX01.aspeed.com (192.168.0.62) with Microsoft SMTP Server id 15.2.1748.10 via Frontend Transport; Wed, 25 Feb 2026 17:19:41 +0800 From: Ryan Chen Date: Wed, 25 Feb 2026 17:19:39 +0800 Subject: [PATCH v25 2/4] dt-bindings: i2c: ast2600-i2c.yaml: Add global-regs and transfer-mode properties Precedence: bulk X-Mailing-List: linux-i2c@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-ID: <20260225-upstream_i2c-v25-2-9f4bdd954f3f@aspeedtech.com> References: <20260225-upstream_i2c-v25-0-9f4bdd954f3f@aspeedtech.com> In-Reply-To: <20260225-upstream_i2c-v25-0-9f4bdd954f3f@aspeedtech.com> To: , , Andi Shyti , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Joel Stanley , Andrew Jeffery , "Benjamin Herrenschmidt" , Rayn Chen , Philipp Zabel CC: , , , , , , Ryan Chen X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1772011180; l=2721; i=ryan_chen@aspeedtech.com; s=20251126; h=from:subject:message-id; bh=oX37qsTcUQZ/XyFfLT9VnkE5sPvidHdjowEh6vs+5BE=; b=QqlvBQCChB3mqPzpYxnPzXFaa4Be4013ejFg7dEOh7fjspFug+AfMSLos4WUMeDHySrX0r48S mrEb9/haromC8gX4n8AtgegaCnyD1KHHhlsUjsaHtaF/bSOUTRPgVcQ X-Developer-Key: i=ryan_chen@aspeedtech.com; a=ed25519; pk=Xe73xY6tcnkuRjjbVAB/oU30KdB3FvG4nuJuILj7ZVc= The AST2600 I2C controller supports three transfer modes (byte, buffer, DMA). Add "aspeed,transfer-mode" so DT can select the preferred transfer method per controller instance. Also add the "aspeed,global-regs" phandle to reference the AST2600 global registers syscon/regmap used by the controller. These properties apply only to the AST2600 binding and are not part of the legacy binding, which uses a mixed controller/target register layout and does not have the split register blocks or these new configuration registers. Legacy DTs remain unchanged. Signed-off-by: Ryan Chen --- .../bindings/i2c/aspeed,ast2600-i2c.yaml | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml b/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml index 077be85137c9..c45c8ceaf897 100644 --- a/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml +++ b/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml @@ -37,6 +37,33 @@ properties: resets: maxItems: 1 + aspeed,transfer-mode: + description: | + ASPEED ast2600 platform equipped with 16 I2C controllers each i2c controller + have 1 byte transfer buffer(byte mode), 32 bytes buffer(buffer mode), and + share a DMA engine. + Select I2C transfer mode for this controller. Supported values are: + - "byte": Use 1 byte for i2c transmit (1-byte buffer). + - "buffer": Use buffer (32-byte buffer) for i2c transmit. (default) + Better performance then byte mode. + - "dma": Each controller DMA mode is shared DMA engine. The AST2600 SoC + provides a single DMA engine shared for 16 I2C controllers, + so only a limited number of controllers can use DMA simultaneously. + Therefore, the DTS must explicitly assign which controllers are + configured to use DMA. + On AST2600, each controller supports all three modes. + If not specified, buffer mode is used by default. + enum: + - byte + - buffer + - dma + + aspeed,global-regs: + $ref: /schemas/types.yaml#/definitions/phandle + description: + Phandle reference to the i2c global syscon node, containing the + SoC-common i2c register set. + required: - reg - compatible @@ -59,4 +86,6 @@ examples: resets = <&syscon ASPEED_RESET_I2C>; clock-frequency = <100000>; interrupts = ; + aspeed,global-regs = <&i2c_global>; + aspeed,transfer-mode = "buffer"; }; -- 2.34.1