Cover Letter Detail
Show a cover letter.
GET /api/1.1/covers/2227940/?format=api
{ "id": 2227940, "url": "http://patchwork.ozlabs.org/api/1.1/covers/2227940/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/cover/20260424-add-mcu-fan-khadas-vim4-v5-0-afcfa7157b23@aliel.fr/", "project": { "id": 35, "url": "http://patchwork.ozlabs.org/api/1.1/projects/35/?format=api", "name": "Linux I2C development", "link_name": "linux-i2c", "list_id": "linux-i2c.vger.kernel.org", "list_email": "linux-i2c@vger.kernel.org", "web_url": "", "scm_url": "", "webscm_url": "" }, "msgid": "<20260424-add-mcu-fan-khadas-vim4-v5-0-afcfa7157b23@aliel.fr>", "date": "2026-04-24T14:17:31", "name": "[v5,0/8] Add VIM4 MCU/FAN support", "submitter": { "id": 93204, "url": "http://patchwork.ozlabs.org/api/1.1/people/93204/?format=api", "name": "Ronald Claveau via B4 Relay", "email": "devnull+linux-kernel-dev.aliel.fr@kernel.org" }, "mbox": "http://patchwork.ozlabs.org/project/linux-i2c/cover/20260424-add-mcu-fan-khadas-vim4-v5-0-afcfa7157b23@aliel.fr/mbox/", "series": [ { "id": 501376, "url": "http://patchwork.ozlabs.org/api/1.1/series/501376/?format=api", "web_url": "http://patchwork.ozlabs.org/project/linux-i2c/list/?series=501376", "date": "2026-04-24T14:17:34", "name": "Add VIM4 MCU/FAN support", "version": 5, "mbox": "http://patchwork.ozlabs.org/series/501376/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/2227940/comments/", "headers": { "Return-Path": "\n <linux-i2c+bounces-17168-incoming=patchwork.ozlabs.org@vger.kernel.org>", "X-Original-To": [ "incoming@patchwork.ozlabs.org", "linux-i2c@vger.kernel.org" ], "Delivered-To": "patchwork-incoming@legolas.ozlabs.org", "Authentication-Results": [ "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256\n header.s=k20201202 header.b=S2+CWeWn;\n\tdkim-atps=neutral", "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=172.234.253.10; helo=sea.lore.kernel.org;\n envelope-from=linux-i2c+bounces-17168-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)", "smtp.subspace.kernel.org;\n\tdkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=\"S2+CWeWn\"", "smtp.subspace.kernel.org;\n arc=none smtp.client-ip=10.30.226.201" ], "Received": [ "from sea.lore.kernel.org (sea.lore.kernel.org [172.234.253.10])\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 4g2FYz00zCz1yD5\n\tfor <incoming@patchwork.ozlabs.org>; Sat, 25 Apr 2026 00:23:34 +1000 (AEST)", "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby sea.lore.kernel.org (Postfix) with ESMTP id 13EA83063D79\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 24 Apr 2026 14:20:16 +0000 (UTC)", "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id ACD413DC4AD;\n\tFri, 24 Apr 2026 14:20:10 +0000 (UTC)", "from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org\n [10.30.226.201])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 3F5E3377EAC;\n\tFri, 24 Apr 2026 14:20:10 +0000 (UTC)", "by smtp.kernel.org (Postfix) with ESMTPS id CF745C19425;\n\tFri, 24 Apr 2026 14:20:09 +0000 (UTC)", "from aws-us-west-2-korg-lkml-1.web.codeaurora.org\n (localhost.localdomain [127.0.0.1])\n\tby smtp.lore.kernel.org (Postfix) with ESMTP id BE335FED3D1;\n\tFri, 24 Apr 2026 14:20:09 +0000 (UTC)" ], "ARC-Seal": "i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1777040410; cv=none;\n b=BgjH2xvYsDGTRLs9RGiSw0EQjX3NC3WsSF6r78KdIZ06MMNS1uwl7x5ow5shDBdKK/FTAsLlx4AVLGqY+HaKEYjnJrKT4fFkp9BKHiBB0RRulWyrSYnsH9OblhzCAOw06jWXJU9DoWT0PoZUPs8oWqiP0/PXxnp4tvNVSQ+j1ws=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1777040410; c=relaxed/simple;\n\tbh=tjPcTbHATZZVk2EWmuWBPpmcu6B3OW4hKOS1rdd7OQ4=;\n\th=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc;\n b=ohk6dWPWfPEA/wx55ghoBgYnnqIEPVXTzDEB8YtrIyBLms535ncXif8xO4GkvjH/YAfu6N5NgYsZxyNN956nSrpco9wWCinyo0KpSyMtSRa9SmMxR51mxQ8XpJUCfxyAtNdfLWFZq0tyxbC7j228DKE7ZIcfKeHomUtnA3uE3/A=", "ARC-Authentication-Results": "i=1; smtp.subspace.kernel.org;\n dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org\n header.b=S2+CWeWn; arc=none smtp.client-ip=10.30.226.201", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org;\n\ts=k20201202; t=1777040409;\n\tbh=tjPcTbHATZZVk2EWmuWBPpmcu6B3OW4hKOS1rdd7OQ4=;\n\th=From:Subject:Date:To:Cc:Reply-To:From;\n\tb=S2+CWeWnTJJ0nEZUr3ni0iiCC+HZ+O24SAHDPwR6NnvOSm/dHBEp79PBtwKT9D2xf\n\t O4aF9L5gwEy2k9dBj08qYFVctLwotgBYU3VeV2iDSErpTVJuxzuGc6ERPLbDdpZBvo\n\t IjZdI/cPz8HaIUJqnNZbzvusA7lbH9cTWWV8D+THHLkoI6dd1z2/FDaYnV63XnYqz8\n\t lr2uOIfiaEIAiepE5LgVdm7HFPCl4SVA6voRUSIlPFnDtAfYWGQspynWXP+guM8JPs\n\t xMfFns9KKCAmP+our4idATQf8LNfbLXyveLjfJoJdcGKCDYLTVNJJqNPLR8cW6lbXu\n\t XlmpZrcRo1rXQ==", "From": "Ronald Claveau via B4 Relay\n <devnull+linux-kernel-dev.aliel.fr@kernel.org>", "Subject": "[PATCH v5 0/8] Add VIM4 MCU/FAN support", "Date": "Fri, 24 Apr 2026 16:17:31 +0200", "Message-Id": "<20260424-add-mcu-fan-khadas-vim4-v5-0-afcfa7157b23@aliel.fr>", "Precedence": "bulk", "X-Mailing-List": "linux-i2c@vger.kernel.org", "List-Id": "<linux-i2c.vger.kernel.org>", "List-Subscribe": "<mailto:linux-i2c+subscribe@vger.kernel.org>", "List-Unsubscribe": "<mailto:linux-i2c+unsubscribe@vger.kernel.org>", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=\"utf-8\"", "Content-Transfer-Encoding": "8bit", "X-B4-Tracking": "v=1; b=H4sIAAAAAAAC/4WS3W7bMAyFXyXw9RToX3YwDH2PYRekSDXabCezn\n aBFkXcf4+Yi6VbskhLOd8hDvjUzT5XnZrd5ayY+17keRinCl02T9zA+s6okdWO1jdprq4BIDfm\n kCozq1x4IZnWug1eQTUYOweUOG1EfJy71ZSV///FeT/z7JAbL+2ODMLPKh2Goy24z8suiVhNn0\n 1U/8DzDar/bfL19RN3Z6MPW6CCFUUb9rDBu96cnGPrDc81bwX1b3WHJ+1UbAwRKsRRC6cwBoHN\n tQIwho7ZJa5+d5sSPKuuSjV2rTWsjkQNKBU1k9JQokmfAoL1N7aMqJO5Qt9DFFphK8I4caQoxF\n 5PBE1qNFkxs7tMVs9t0a7aYB+9SsNdkhFyxZ8UyNfiSuuRgd7aPppicLoG9RTbUdmQ6x9GBMIP\n vQiYsNidK+E9Tp5VsSdXxDH0ldZwOR56WV4WySk+dcyWZm+PfWrNqJXq1JDWe+l5NPLOsEaNuG\n UtH4Hdn01zXv6/zcphe1zuTp+v+/3tSZ6O0wIyV3CEn1E/SJPfbMq1IaesO4z7HWMEkOZmI1nr\n XwQeMu8OY9DnGCQYipBKSRmPwA8bfYaz5HOMF430yxoNti6U7zOVy+QPGXp2IkQMAAA==", "X-Change-ID": "20260402-add-mcu-fan-khadas-vim4-ac1cbe553c9b", "To": "Neil Armstrong <neil.armstrong@linaro.org>, Lee Jones <lee@kernel.org>,\n Rob Herring <robh@kernel.org>, Krzysztof Kozlowski <krzk+dt@kernel.org>,\n Conor Dooley <conor+dt@kernel.org>, Andi Shyti <andi.shyti@kernel.org>,\n Kevin Hilman <khilman@baylibre.com>, Jerome Brunet <jbrunet@baylibre.com>,\n Martin Blumenstingl <martin.blumenstingl@googlemail.com>,\n Beniamino Galvani <b.galvani@gmail.com>,\n \"Rafael J. Wysocki\" <rafael@kernel.org>,\n Daniel Lezcano <daniel.lezcano@kernel.org>, Zhang Rui <rui.zhang@intel.com>,\n Lukasz Luba <lukasz.luba@arm.com>, Liam Girdwood <lgirdwood@gmail.com>,\n Mark Brown <broonie@kernel.org>", "Cc": "linux-amlogic@lists.infradead.org, devicetree@vger.kernel.org,\n linux-kernel@vger.kernel.org, linux-i2c@vger.kernel.org,\n linux-arm-kernel@lists.infradead.org, linux-pm@vger.kernel.org,\n Ronald Claveau <linux-kernel-dev@aliel.fr>,\n Conor Dooley <conor.dooley@microchip.com>", "X-Mailer": "b4 0.14.3", "X-Developer-Signature": "v=1; a=openpgp-sha256; l=4844;\n i=linux-kernel-dev@aliel.fr; h=from:subject:message-id;\n bh=tjPcTbHATZZVk2EWmuWBPpmcu6B3OW4hKOS1rdd7OQ4=;\n b=owGbwMvMwCWm1SvKXP3cUInxtFoSQ+br6vdvC7yMozQOCZkcCvBfyNhQULs4oGzCUdvSGYbCr\n zbte5jWUcrCIMbFICumyNI/1/LEu8tHz3zdo54CM4eVCWQIAxenAExkiQPD/7qkGapKioK/J368\n r37r2Z6GzlnJTz3Oxss8U6g42HC05jnD/4hze/Py951zTNjMcXPRX2ZuxaMHPS6e3/Ng0mbF/50\n T+XkB", "X-Developer-Key": "i=linux-kernel-dev@aliel.fr; a=openpgp;\n fpr=DFD863F61375BF917F0012173953305EF1D0EC3E", "X-Endpoint-Received": "by B4 Relay for linux-kernel-dev@aliel.fr/default with\n auth_id=744", "X-Original-From": "Ronald Claveau <linux-kernel-dev@aliel.fr>", "Reply-To": "linux-kernel-dev@aliel.fr" }, "content": "The Khadas VIM4 board features a different MCU variant compared to\nprevious VIM boards.\nWhile it shares the same I2C-based communication model,\nit differs in some ways:\n\n - A distinct register map with its own volatile/writeable register set\n - A fan control with 0–100 levels instead of the 0–3 levels previously\n - A fan power supply gated through a regulator\n\nThis series adds support for this new variant by:\n\n 1. Refactoring the khadas-mcu MFD driver to use per-variant data\n structures (regmap config, cells, fan platform data),\n and adding the khadas,vim4-mcu compatible string.\n\n 2. Extending the fan thermal driver to retrieve the fan register\n and maximum level from platform_data,\n and to optionally manage a power regulator for the fan supply.\n\n 3. Adding the corresponding DTS node for the VIM4, wiring the MCU to\n the I2C AO_A bus and exposing it as a thermal cooling device.\n\nSigned-off-by: Ronald Claveau <linux-kernel-dev@aliel.fr>\n---\nChanges in v5:\n- PATCH 5: Replace devm_regulator_get_optional() with devm_regulator_get()\n to simplify error handling and remove NULL checks, also\n ordering as reverse christmas according to Neil's feedback.\n- Link to v4: https://lore.kernel.org/r/20260421-add-mcu-fan-khadas-vim4-v4-0-447114a28f2d@aliel.fr\n\nChanges in v4:\n- PATCH 1: limit fan-supply property by compatible according to Conor's feedback.\n- Link to v3: https://lore.kernel.org/r/20260417-add-mcu-fan-khadas-vim4-v3-0-a6a7f570b11b@aliel.fr\n\nChanges in v3:\n- PATCH 1: adding comment on vim4 compatible saying it is not discoverable,\n thanks to Rob's and Neil's feedback.\n- Link to v2: https://lore.kernel.org/r/20260403-add-mcu-fan-khadas-vim4-v2-0-70536b22439a@aliel.fr\n\nChanges in v2:\n- PATCH 5: Add regulator_disable on suspend thanks to Neil's feedback.\n- Link to v1: https://lore.kernel.org/r/20260402-add-mcu-fan-khadas-vim4-v1-0-2b12eb4ac7b0@aliel.fr\n\n---\nRonald Claveau (8):\n dt-bindings: mfd: khadas: Add new compatible for Khadas VIM4 MCU\n dt-bindings: i2c: amlogic: Add compatible for T7 SOC\n mfd: khadas-mcu: Add per-variant configuration infrastructure and VIM4 support\n mfd: khadas-mcu: Add support for VIM4 MCU variant\n thermal: khadas-mcu-fan: Add fan config from platform data Add regulator support\n arm64: dts: amlogic: t7: Add i2c pinctrl node\n arm64: dts: amlogic: t7: Add i2c controller node\n arm64: dts: amlogic: t7: khadas-vim4: Add i2c MCU fan node\n\n .../bindings/i2c/amlogic,meson6-i2c.yaml | 13 ++-\n .../devicetree/bindings/mfd/khadas,mcu.yaml | 18 ++++\n .../dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts | 13 +++\n arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi | 20 ++++\n drivers/mfd/khadas-mcu.c | 106 ++++++++++++++++++---\n drivers/thermal/khadas_mcu_fan.c | 37 +++++--\n include/linux/mfd/khadas-mcu.h | 39 +++++++-\n 7 files changed, 222 insertions(+), 24 deletions(-)\n---\nbase-commit: f7b64ed948718290209074a50bb0df17e5944873\nchange-id: 20260402-add-mcu-fan-khadas-vim4-ac1cbe553c9b\nprerequisite-message-id: <20260326092645.1053261-1-jian.hu@amlogic.com>\nprerequisite-patch-id: f03a086b4137158412b2d47b3de793b858de8dde\nprerequisite-patch-id: 123970c9b29c2090440f2fd71c85d3c6fd8e36de\nprerequisite-patch-id: 3e2e56b0926ba327b520f935df4ced5089bbe503\nprerequisite-patch-id: 65a5d76ffdbc9b3aab3385bb65cb027004c30e7e\nprerequisite-patch-id: 237269801826dd3ad7fb16eb4d7d6d4eab504278\nprerequisite-patch-id: 57e9b08a968aedf543d3d0d56cf1ca4db20b2a16\nprerequisite-change-id: 20260326-add-bcm43752-compatible-e264a4f7973a:v2\nprerequisite-patch-id: cd98b74fa56af72af2553f391c400981d83cd4f4\nprerequisite-patch-id: b730f5e42be1d89d193e63a0265495cdbf2c7d7b\nprerequisite-change-id: 20260330-fix-invalid-property-bbe54d933f71:v2\nprerequisite-patch-id: 8d675e7a239985c762843515b241f0a2f45f9c92\nprerequisite-change-id: 20260331-fix-aml-t7-null-reset-2b608ebf9da4:v1\nprerequisite-patch-id: 5b5de77af11747ce964404fb827d2ee2bff47ea5\nprerequisite-patch-id: 1e37fc75fed1e533adee0f3e7e6ead1f8ff3c55c\nprerequisite-patch-id: 65a5d76ffdbc9b3aab3385bb65cb027004c30e7e\nprerequisite-patch-id: 2daf583fb5e7449a02bd217d8aca330171b598aa\nprerequisite-patch-id: 237269801826dd3ad7fb16eb4d7d6d4eab504278\nprerequisite-patch-id: d1ddf9b7710e91f8062de83bd7ba55afb2c4c112\nprerequisite-patch-id: 57e9b08a968aedf543d3d0d56cf1ca4db20b2a16\nprerequisite-patch-id: cd98b74fa56af72af2553f391c400981d83cd4f4\nprerequisite-patch-id: b730f5e42be1d89d193e63a0265495cdbf2c7d7b\nprerequisite-patch-id: 9debd88fa60febed9cd7208f86603b4c2d270520\nprerequisite-patch-id: 314ef9ff0c4d1d15dab1dea9d92aa065f1eac3e9\n\nBest regards," }