{"id":2223336,"url":"http://patchwork.ozlabs.org/api/1.2/covers/2223336/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-aspeed/cover/20260415-upstream_i2c-v29-0-317c1a905ae1@aspeedtech.com/","project":{"id":57,"url":"http://patchwork.ozlabs.org/api/1.2/projects/57/?format=json","name":"Linux ASPEED SoC development","link_name":"linux-aspeed","list_id":"linux-aspeed.lists.ozlabs.org","list_email":"linux-aspeed@lists.ozlabs.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20260415-upstream_i2c-v29-0-317c1a905ae1@aspeedtech.com>","list_archive_url":null,"date":"2026-04-15T05:14:01","name":"[v29,0/4] Add ASPEED AST2600 I2C controller driver","submitter":{"id":71489,"url":"http://patchwork.ozlabs.org/api/1.2/people/71489/?format=json","name":"Ryan Chen","email":"ryan_chen@aspeedtech.com"},"mbox":"http://patchwork.ozlabs.org/project/linux-aspeed/cover/20260415-upstream_i2c-v29-0-317c1a905ae1@aspeedtech.com/mbox/","series":[{"id":499920,"url":"http://patchwork.ozlabs.org/api/1.2/series/499920/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-aspeed/list/?series=499920","date":"2026-04-15T05:14:01","name":"Add ASPEED AST2600 I2C controller driver","version":29,"mbox":"http://patchwork.ozlabs.org/series/499920/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/covers/2223336/comments/","headers":{"Return-Path":"\n <linux-aspeed+bounces-3899-incoming=patchwork.ozlabs.org@lists.ozlabs.org>","X-Original-To":["incoming@patchwork.ozlabs.org","linux-aspeed@lists.ozlabs.org"],"Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=112.213.38.117; helo=lists.ozlabs.org;\n envelope-from=linux-aspeed+bounces-3899-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)","lists.ozlabs.org;\n arc=none smtp.remote-ip=211.20.114.72","lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com","lists.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=aspeedtech.com\n (client-ip=211.20.114.72; helo=twmbx01.aspeed.com;\n envelope-from=ryan_chen@aspeedtech.com; receiver=lists.ozlabs.org)"],"Received":["from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fwTpY0Gsvz1yHd\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 15 Apr 2026 15:14:29 +1000 (AEST)","from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fwTpT4Rbfz2yvZ;\n\tWed, 15 Apr 2026 15:14:25 +1000 (AEST)","from TWMBX01.aspeed.com (mail.aspeedtech.com [211.20.114.72])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fwTpM6dRCz2yvW;\n\tWed, 15 Apr 2026 15:14:19 +1000 (AEST)","from TWMBX01.aspeed.com (192.168.0.62) by TWMBX01.aspeed.com\n (192.168.0.62) with Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1748.10; Wed, 15 Apr\n 2026 13:14:02 +0800","from [127.0.1.1] (192.168.10.13) by TWMBX01.aspeed.com\n (192.168.0.62) with Microsoft SMTP Server id 15.2.1748.10 via Frontend\n Transport; Wed, 15 Apr 2026 13:14:02 +0800"],"ARC-Seal":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1776230065;\n\tcv=none;\n b=CUSZVPno2YJtkZF1VvoHM7uRQOmWVFut55IdSfgcz/eeUzq1QDw0OkwZTIgUhQ8fOHs8+5OgWq8Tjq0qfJrDaevnqDbaGYe98draWgwAyY2Uz9XlLVRDf76LY0hv+8jgCPA/1Lt/38TNdw5LQjZ6giq8P24q12P+X69+De8Wt9zSl++g/S057LYgjhsvHUMBjf6Qt36Z4uREYouX4IXUv1hoocRq13v+mAqnxBeoPqqVZwSwcPrKV25p9q2szjSJT8O5Rirl3jH6rr63WB+FrB4oJxWlsX6On5lLH/ua+pj7ZGUKOI9GtMqBAgngNzfXIJbpaS8ZMmgzca6NTgLqqA==","ARC-Message-Signature":"i=1; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1776230065; c=relaxed/relaxed;\n\tbh=9tscC4fABhqzy3I2ZsFm1SKcg9OLj/52lZacF489VnQ=;\n\th=From:Subject:Date:Message-ID:MIME-Version:Content-Type:To:CC;\n b=Caw29xI3Zmk+4q5Hakeo60/bROnhSAhS+3Rxa9HLeQ1EXethFQAFYbRw8IMMO63y+p0bM4FUN8zDZMg3RdOHSGQV+2PgAp2Th0DSMZmhMJXVpmis/LZda9E3H3aCquImgMzInaN6tgagl819w+KWr3Gey6ONhPlli2EFksDkr2oaUh9f9dsbs63EymPpxrx4d865LOEQcEc8RNL9x/sU6Er1H1E6DM+JFCK7uq3epb7S7fOtymGYzHn0KgH6p3x3Q6kDR958pC6199UsRIGWp+yqGbycEfPXiXLtj4MF9kOBT7yGAIJ3Pgil2phg/vrvw76GiImW9d37Z2J6CxJWZg==","ARC-Authentication-Results":"i=1; lists.ozlabs.org;\n dmarc=pass (p=quarantine dis=none) header.from=aspeedtech.com;\n spf=pass (client-ip=211.20.114.72; helo=twmbx01.aspeed.com;\n envelope-from=ryan_chen@aspeedtech.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=aspeedtech.com","From":"Ryan Chen <ryan_chen@aspeedtech.com>","Subject":"[PATCH v29 0/4] Add ASPEED AST2600 I2C controller driver","Date":"Wed, 15 Apr 2026 13:14:01 +0800","Message-ID":"<20260415-upstream_i2c-v29-0-317c1a905ae1@aspeedtech.com>","X-Mailing-List":"linux-aspeed@lists.ozlabs.org","List-Id":"<linux-aspeed.lists.ozlabs.org>","List-Help":"<mailto:linux-aspeed+help@lists.ozlabs.org>","List-Owner":"<mailto:linux-aspeed+owner@lists.ozlabs.org>","List-Post":"<mailto:linux-aspeed@lists.ozlabs.org>","List-Archive":"<https://lore.kernel.org/linux-aspeed/>,\n  <https://lists.ozlabs.org/pipermail/linux-aspeed/>","List-Subscribe":"<mailto:linux-aspeed+subscribe@lists.ozlabs.org>,\n  <mailto:linux-aspeed+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linux-aspeed+subscribe-nomail@lists.ozlabs.org>","List-Unsubscribe":"<mailto:linux-aspeed+unsubscribe@lists.ozlabs.org>","Precedence":"list","MIME-Version":"1.0","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"8bit","X-B4-Tracking":"v=1; b=H4sIAJke32kC/3XQQU7DMBAF0KtUXuPKGcexzYp7VAjF9gzxok1kp\n xGoyt2ZVkItAZb/j/5bzEVULBmreN5dRMEl1zyeOIB/2ok49Kd3lDlxIUBBpwC0PE91Ltgf3zJ\n EiSEpS85b7aPgyVSQ8sfNO7xyHnKdx/J54xcw1/pbMj8lvkolPbUhJW9a0vTS1wkxzRiHfRyP4\n uot0N0NrfzW6NgwhCkSOSJ0fxv2wYB2a1g2qPHBNE10Ef4x3IOh1dZwbDQ2pB75MSaGX8a6rl+\n ttUydfAEAAA==","X-Change-ID":"20260223-upstream_i2c-ebd07f89739c","To":"<jk@codeconstruct.com.au>, <andriy.shevchenko@linux.intel.com>, Andi Shyti\n\t<andi.shyti@kernel.org>, Rob Herring <robh@kernel.org>, Krzysztof Kozlowski\n\t<krzk+dt@kernel.org>, Conor Dooley <conor+dt@kernel.org>, Joel Stanley\n\t<joel@jms.id.au>, Andrew Jeffery <andrew@codeconstruct.com.au>, \"Benjamin\n Herrenschmidt\" <benh@kernel.crashing.org>, Rayn Chen\n\t<rayn_chen@aspeedtech.com>, Philipp Zabel <p.zabel@pengutronix.de>","CC":"<linux-i2c@vger.kernel.org>, <devicetree@vger.kernel.org>,\n\t<linux-arm-kernel@lists.infradead.org>, <linux-aspeed@lists.ozlabs.org>,\n\t<linux-kernel@vger.kernel.org>, <openbmc@lists.ozlabs.org>, Ryan Chen\n\t<ryan_chen@aspeedtech.com>","X-Mailer":"b4 0.14.3","X-Developer-Signature":"v=1; a=ed25519-sha256; t=1776230042; l=14961;\n i=ryan_chen@aspeedtech.com; s=20251126; h=from:subject:message-id;\n bh=ZmuLLZ+x/0Tay35OfOdTmE8jn4WWrRMZmoxNm6d9eks=;\n b=/ETCay2tk9ii9Ha6PMWHgyU0ES4aoGZYrb4el1JQHUWifmpYt1Ikaa58ikJ0PzTO9di11rhjp\n yQDGMU3JxaHCMo5onsR+J9KF4YPOkZ/IDGNK7/fgtxrGDo4JxP6Hywu","X-Developer-Key":"i=ryan_chen@aspeedtech.com; a=ed25519;\n pk=Xe73xY6tcnkuRjjbVAB/oU30KdB3FvG4nuJuILj7ZVc=","X-Spam-Status":"No, score=0.0 required=5.0 tests=SPF_HELO_FAIL,SPF_PASS\n\tautolearn=disabled version=4.0.1","X-Spam-Checker-Version":"SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"},"content":"This series adds support for the AST2600 I2C controller “new register\nset” implementation.\n\nThe AST2600 I2C controller introduces a revised register layout which\nseparates controller and target functionality into distinct register\nblocks, and extends clock divider configuration and packet-based\ntransfer support compared to the legacy mixed register layout used on\nearlier ASPEED SoCs.\n\nThe current driver implementation for the AST2600 I2C peripheral is\nthrough the hardware's \"compatibility mode\", which exposes a register\nset that matches the previous generation hardware (AST2500 and earlier).\n\nInstead, add a driver that works in new-register-set mode, to allow the\nnew features, and will provide support for future hardware that will\nnot implement compatibility mode.\n\nIn order to support the new mode, we need a DT binding change to\nreflect the reference to the global register set. Since the binding\nstill represents the same (AST2600 SoC) physical hardware, we continue\nto use the existing compatible string of \"aspeed,ast2600-i2c-bus\".\n\nHowever: since we're changing semantics for an existing binding, we\nallow backwards compatibility by selecting on presence/absence of the\nnewly-added properties, and fall back to the old driver (ie., in\ncompatibility mode) when we detect a DT using the old binding spec.\n\nSpecifically:\n\n- ast2600-i2c-bus nodes that provide the `aspeed,global-regs` property\n  (present in the new binding and absent in the legacy binding) will be\n  successfully probed by the new driver\n\n- ast2600-i2c-bus nodes without `aspeed,global-regs` continue to use the\n  existing driver (in legacy register mode), ensuring that platforms\n  with the current DTBs remain functional\n\nSigned-off-by: Ryan Chen <ryan_chen@aspeedtech.com>\n---\nChanges in v29:\n- 2/4: remove aspeed,enable-dma properties.\n- 3/4: update commit message remove transfer mode selection.\n- 3/4: remove sysfs file.\n- 3/4: remove define I2C_TARGET_MSG_BUF_SIZE and AST2600_I2C_DMA_SIZE.\n- 3/4: remove buf_index in struct ast2600_i2c_bus.\n- 3/4, 4/4: remove dma/byte mode, use buffer mode only.\n- 4/4: fix race between unreg_target and IRQ handler.\n- 4/4: move i2cs ier enable from ast2600_i2c_init to probe after master ier enable.\n- Link to v28: https://lore.kernel.org/r/20260330-upstream_i2c-v28-0-17bdae39c5cb@aspeedtech.com\n\nChanges in v28:\n- 2/4: update commit message correspond with aspeed,enable-dma.\n- 2/4: remove aspeed,transfer-mode and add aspeed,enable-dma property\n  and description.\n- 2/4: Fix aspeed,enable-dma description to reflect hardware capability\n  rather than software behavior.\n- 3/4: Separate xfer_mode_store into distinct parse and availability-check\n  steps by introducing ast2600_i2c_xfer_mode_check().\n- 3/4: fix tx dma memcpy source point address.\n- 3/4: Use a temporary variable for devm_platform_get_and_ioremap_resource()\n  to avoid storing an ERR_PTR in i2c_bus->buf_base; drop the redundant\n  NULL assignment in the error path since i2c_bus is kzalloc()ed.\n- 3/4: Add ABI documentation file\n  Documentation/ABI/testing/sysfs-driver-ast2600-i2c.\n- 4/4: fix typo condication -> condition.\n- 4/4: fix compile error, when disable CONFIG_I2C_SLAVE.\n- Link to v27: https://lore.kernel.org/r/20260324-upstream_i2c-v27-0-f19b511c8c28@aspeedtech.com\n\nChanges in v27:\n- 1/4 use aspeed,enable-dma instead aspeed,transfer-mode.\n- 2/4 remove aspeed,transfer-mode selection instad aspeed,transfer-mode\n- 2/4 add sysfs for xfer mode.\n- Link to v26: https://lore.kernel.org/r/20260309-upstream_i2c-v26-0-5fedcff8ffe8@aspeedtech.com\n\nChanges in v26:\n- 1/4: binding reworks based on review feedback\n- Link to v25: https://lore.kernel.org/r/20260225-upstream_i2c-v25-0-9f4bdd954f3f@aspeedtech.com\n\nChanges in v25:\n- Use b4 to send series.\n- Rebase on v7.0-rc1.\n- Clarify cover letter and commit logs based on review feedback.\n- Remove the i2c-aspeed-core multiplexer infrastructure and\n  implement driver selection via conditional -ENODEV handling\n  in individual probe() functions.\n- 3/4: incorporate review feedback and refactor new driver\n- Link to v24: https://lore.kernel.org/r/20251118014034.820988-1-ryan_chen@aspeedtech.com\n\nChanges in v24:\n- aspeed,ast2600-i2c.yaml\n - fix make dt_binding_check blank warning.\n- Link to v23: https://lore.kernel.org/all/20251117025040.3622984-1-ryan_chen@aspeedtech.com/\n\nChanges in v23:\n- update typo patch (1/4) commit message.\n- aspeed,ast2600-i2c.yaml\n - update reg and description.\n- i2c-ast2600.c controller\n - replace ast2600_select_i2c_clock to ast2600_i2c_ac_timing_config.\n- i2c-ast2600.c target\n - I2C_TARGET_MSG_BUF_SIZE 256 to 4096\n - remove blank line.\n - refine Master comment description to controller\n- Link to v22: https://lore.kernel.org/all/20251112085649.1903631-1-ryan_chen@aspeedtech.com/\n\nChanges in v22:\n- update patch (1/4) commit message add dts example reason.\n- aspeed,ast2600-i2c.yaml @patch (1/4)\n - rename ast2600-i2c.yaml to aspeed,ast2600-i2c.yaml.\n - update reg, clock-frequency description.\n- aspeed,ast2600-i2c.yaml @patch (2/4)\n - aspeed,transfer-mode, aspeed,transfer-mode add for ast2600.\n- i2c-aspeed-core.c,h @patch (3/4)\n - add i2c-aspeed-core allow both old and new device trees using the\n   same compatible string \"aspeed,ast2600-i2c-bus\".\n- Link to v21: https://lore.kernel.org/all/20251027061240.3427875-1-ryan_chen@aspeedtech.com/\n\nChanges in v21:\n- update patch (1/4) commit message\n- i2c-ast2600.c\n - move rst to local variable in ast2600_i2c_probe().\n- Link to v20: https://lore.kernel.org/all/20251021013548.2375190-1-ryan_chen@aspeedtech.com/\n\nChanges in v20:\n- ast2600-i2c.yaml\n - fix warning at make dt_binding_check.\n- Link to v19: https://lore.kernel.org/all/20251020013200.1858325-1-ryan_chen@aspeedtech.com/\n\nChanges in v19:\n- Split AST2600 binding into its own YAML file\n - Removed `aspeed,ast2600-i2c-bus` from `aspeed,i2c.yaml`\n - Added `aspeed,global-regs` and `aspeed,transfer-mode` to AST2600 binding\n- Link to v18: https://lore.kernel.org/all/20250820051832.3605405-1-ryan_chen@aspeedtech.com/\n\nChanges in v18:\n- refine patch (1/3) commit message (reason for commit not list.)\n- i2c-ast2600.c\n - remove redundant reset_control_deassert in driver probe.\n - remove reset_control_assert(i2c_bus->rst) in driver remove.\n- Link to v17: https://lore.kernel.org/all/20250814084156.1650432-1-ryan_chen@aspeedtech.com/\n\nChanges in v17:\n- move i2c new mode register and feature into driver commit message.\n- aspeed,i2c.yaml\n - remove multi-master properties.\n - use aspeed,transfer-mode properties for aspeed,enable-byte/enable-dma.\n-i2c-ast2600.c\n - rename dma_safe_buf to controller_dma_safe_buf.\n - fix ast2600_i2c_recover_bus return overflow warnings.\n - add ast2600_i2c_target_packet_buff_irq unhandle case.\n - add parameter \"cmd\" in ast2600_i2c_setup_dma_rx,\n   ast2600_i2c_setup_buff_rx, ast2600_i2c_setup_byte_rx\n - use reset_control_deassert replace\n   devm_reset_control_get_shared_deasserted.\n - useaspeed,transfer-mode properties for transfer mode setting.\n - change compatible = \"aspeed,ast2600-i2cv2\" to \"aspeed,ast2600-i2c-bus\".\n- Link to v16: https://lore.kernel.org/all/20250224055936.1804279-1-ryan_chen@aspeedtech.com/\n\nChanges in v16:\n- aspeed,i2c.yaml: add aspeed,enable-byte properties for force byte mode.\n- i2c-ast2600.c\n - change include asm/unaligned.h to linux/unaligned.h.\n - add reset timeout councter when slave active timeout.\n - modify issue i2c_recovery_bus before slave re-enable.\n - add aspeed,enable-byte properties.\n- Link to v15: https://lore.kernel.org/all/20241007035235.2254138-1-ryan_chen@aspeedtech.com/\n\nChanges in v15:\n- i2c-ast2600.c\n - add include unaligned.h\n - rename all master -> controller, slave -> target.\n - keep multi-master to align property.\n - remove no used element in ast2600_i2c_bus.\n- Link to v14: https://lore.kernel.org/all/20241002070213.1165263-1-ryan_chen@aspeedtech.com/\n\nChanges in v14:\n- aspeed,i2c.yaml\n - v13 change people reviewed-by tag, v14 fixed to original people tag,\n   modify to Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>\n - struct ast2600_i2c_bus layout optimal.\n - ast2600_select_i2c_clock refine.\n - ast2600_i2c_recover_bus overridden fix.\n - dma_mapping_error() returned error code shadowed modify.\n - buffer register in a 4-byte aligned simplified\n - remove smbus alert\n- Link to v13: https://lore.kernel.org/all/20240819092850.1590758-1-ryan_chen@aspeedtech.com/\n\nChanges in v13:\n - separate i2c master and slave driver to be two patchs.\n - modify include header list, add bits.h include. remove of*.h\n - modify (((x) >> 24) & GENMASK(5, 0)) to (((x) & GENMASK(29, 24)) >> 24)\n - modify ast2600_select_i2c_clock function implement.\n - modify ast2600_i2c_recover_bus function u32 claim to\n   u32 state = readl(i2c_bus->reg_base + AST2600_I2CC_STS_AND_BUFF);\n- Link to v12: https://lore.kernel.org/all/20230714074522.23827-1-ryan_chen@aspeedtech.com/\n\nChanges in v12:\n- aspeed,i2c.yaml\n - add Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>\n- i2c-ast2600.c\n - update include by alphabetical order\n - make just a one TAB and put the last two lines on the single one\n - remove no used timing_table structre\n - remove enum explicit assinment\n - rewritten to avoid this and using loop in ast2600_select_i2c_clock\n - use GENMASK for most 0xffff\n - remove too many parentheses\n - use str_read_write replace read write string\n - remove redundant blank line after ast2600_i2c_bus_of_table\n - fix wrong multi-line style of the comment\n - use macro for i2c standard speeds\n - remove useless noise dev_info\n- Link to v11: https://lore.kernel.org/all/20230430041712.3247998-1-ryan_chen@aspeedtech.com/\n\nChanges in v11:\n- aspeed,i2c.yaml\n - no change, the same with v10.\n- i2c-ast2600.c\n - modify alert_enable from int -> boolean.\n - modify dbg string recovery -> recover.\n - remove no need to init 0.\n - remove new line after break.\n - remove unneeded empty line.\n - modify dma_alloc_coherent to dmam_alloc_coherent\n - modify probe nomem return dev_err_probe\n - modify i2c_add_adapter to devm_i2c_adapter\n - modify checkpatch: Alignment should match open parenthesis\n - modify checkpatch: braces {} should be used on all arms of this statement\n - modify checkpatch: Unbalanced braces around else statement\n- Link to v10: https://lore.kernel.org/all/20230415012848.1777768-1-ryan_chen@aspeedtech.com/\n\nChanges in v10:\n- aspeed,i2c.yaml\n - move unevaluatedProperties after allOf.\n - remove extra one blank line.\n- i2c-ast2600.c\n - no change, the same with v8.\n- Link to v9: https://lore.kernel.org/all/20230405022825.333246-1-ryan_chen@aspeedtech.com/\n\nChanges in v9:\n- aspeed,i2c.yaml\n - backoff to v7.\n  - no fix typo in maintainer's name and email. this would be another patch.\n  - no remove address-cells, size-cells, this would be another patch.\n - use aspeed,enable-dma property instead of aspeed,xfer-mode selection.\n - fix allOf and else false properties for aspeed,ast2600-i2cv2.\n- i2c-ast2600.c\n - no change, the same with v8\n- Link to v8: https://lore.kernel.org/all/20230330073259.485606-1-ryan_chen@aspeedtech.com/\n\nChanges in v8:\n- aspeed,i2c.yaml\n - modify commit message.\n - Fix typo in maintainer's name and email.\n - remove address-cells, size-cells.\n- i2c-ast2600.c\n - move \"i2c timeout counter\" comment description before property_read.\n - remove redundant code \"return ret\" in probe end.\n- Link to v7: https://lore.kernel.org/all/20230327092524.3916389-1-ryan_chen@aspeedtech.com/\n\nChanges in v7:\n- aspeed,i2c.yaml\n - Update ASPEED I2C maintainers email.\n - use aspeed,enable-dma property instead of aspeed,xfer-mode selection.\n - fix allOf and else false properties for aspeed,ast2600-i2cv2.\n- i2c-ast2600.c\n - remove aspeed,xfer-mode instead of aspeed,enable-dma mode. buffer mode\n   is default.\n - remove aspeed,timeout instead of i2c-scl-clk-low-timeout-us for\n   timeout setting.\n- Link to v6: https://lore.kernel.org/all/20230226031321.3126756-1-ryan_chen@aspeedtech.com/\n\nChanges in v6:\n- remove aspeed,i2cv2.yaml, merge to aspeed,i2c.yaml -add support for\n  i2cv2 properites.\n- i2c-ast2600.c\n - fix ast2600_i2c_remove ordering.\n - remove ast2600_i2c_probe goto labels, and add dev_err_probe -remove\n   redundant deb_dbg debug message.\n - rename gr_regmap -> global_regs\n- Link to v5: https://lore.kernel.org/all/20230220061745.1973981-1-ryan_chen@aspeedtech.com/\n\nChanges in v5:\n- remove ast2600-i2c-global.yaml, i2c-ast2600-global.c.\n- i2c-ast2600.c\n - remove legacy clock divide, all go for new clock divide.\n - remove duplicated read isr.\n - remove no used driver match\n - fix probe return for each labels return.\n - global use mfd driver, driver use phandle to regmap read/write.\n- rename aspeed,i2c-ast2600.yaml to aspeed,i2cv2.yaml -remove bus-frequency.\n- add required aspeed,gr\n- add timeout, byte-mode, buff-mode properites.\n- Link to v4: https://lore.kernel.org/all/20230201103359.1742140-1-ryan_chen@aspeedtech.com/\n\nChanges in v4:\n- fix i2c-ast2600.c driver buffer mode use single buffer conflit in\n  master slave mode both enable.\n- fix kmemleak issue when use dma mode.\n- fix typo aspeed,i2c-ast2600.yaml compatible is \"aspeed,ast2600-i2c\"\n- fix typo aspeed,i2c-ast2600.ymal to aspeed,i2c-ast2600.yaml\n- Link to v3: https://lore.kernel.org/all/20220516064900.30517-1-ryan_chen@aspeedtech.com/\n\nChanges in v3:\n- fix i2c global clock divide default value.\n- remove i2c slave no used dev_dbg info.\n- Link to v2: https://lore.kernel.org/all/20220413101735.27678-1-ryan_chen@aspeedtech.com/\n\nChanges in v2:\n- add i2c global ymal file commit.\n- rename file name from new to ast2600.\n  aspeed-i2c-new-global.c -> i2c-ast2600-global.c\n  aspeed-i2c-new-global.h -> i2c-ast2600-global.h\n  i2c-new-aspeed.c -> i2c-ast2600.c\n- rename all driver function name to ast2600.\n- Link to v1: https://lore.kernel.org/all/20220323004009.943298-1-ryan_chen@aspeedtech.com/\n\n---\nRyan Chen (4):\n      dt-bindings: i2c: Split AST2600 binding into a new YAML\n      dt-bindings: i2c: ast2600-i2c.yaml: Add global-regs properties\n      i2c: ast2600: Add controller driver for AST2600 new register set\n      i2c: ast2600: Add target mode support\n\n .../bindings/i2c/aspeed,ast2600-i2c.yaml           |   69 ++\n .../devicetree/bindings/i2c/aspeed,i2c.yaml        |    3 +-\n drivers/i2c/busses/Makefile                        |    2 +-\n drivers/i2c/busses/i2c-aspeed.c                    |    5 +\n drivers/i2c/busses/i2c-ast2600.c                   | 1148 ++++++++++++++++++++\n 5 files changed, 1224 insertions(+), 3 deletions(-)\n---\nbase-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f\nchange-id: 20260223-upstream_i2c-ebd07f89739c\n\nBest regards,"}