From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5CB3835BDCA for ; Sun, 26 Apr 2026 11:54:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204492; cv=none; b=gBgbZGuAvo4JZul3qaZFf7cbulzyFblX6LTDAo7e2zvcu9bfXpDCC4mss1a55TuQBSzhbQnQvXLyLxXkZYXe/Ca5RnuepxTJgNuM3Crb0mtgEXZEX0eEmjlYrwYTtbG9/VCg0EMEtazfCGNl7HZKn8L2lTEIFJ3ygjWbZzGlqIY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204492; c=relaxed/simple; bh=bXEAu8dm/Md2Hoo00nr0sADiZPaa3JrZAFzkbiCSNFY=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Xg+35vEjEl9u0aiZtZSFPAfz9WwWAC/fSwus7pvwn/QJuTjL5HfbgCK6UB2sB6+cU0m3gfV7Ob78oxr93XyR/pscLXa5TSIfuf4aAZy6mDC2Lq/krV+qzWC417dJf7+HePY2E+BLOC0Jw32l3DoUeLx5iUPLzB6X9d96NSf9leI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=IEaUvsk4; arc=none smtp.client-ip=209.85.221.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="IEaUvsk4" Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-43cfde3c3f3so9427188f8f.3 for ; Sun, 26 Apr 2026 04:54:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204489; x=1777809289; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=aFRtYnMfqIjWbEB7Nm5EvqwrTpEBb8Zy5pR0tbdz/Oc=; b=IEaUvsk4N4gSFGGOeQNFGcAFcindjpIpEHeosXEryJgxIhMgKIEFJsjLxzJw/CpbQW OBZtSMNnxfLQfqZQSFs91cyZNBysIsR0V8UnCJ0HbxDCqxHj/hkJ5p0joGEiIzeJchFA L5A9GSTI8eTxKKRb/78NtDNQeFarbj4AqFC+scZxh5/ccWbtE1qQQeXGztvFvpA3wnFO OOQbg0K/6nrj631toc6XYragFfQKoxeFfNrGQS8Q4zqBfbo09yUGA8gVzPHsyB+je31Y ZL83OUlYHfaXarJC0dO28WD8fNkP72U1IK74LuUahzTArZDlQPsczhlGupt+z52/Ax4K rRiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204489; x=1777809289; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=aFRtYnMfqIjWbEB7Nm5EvqwrTpEBb8Zy5pR0tbdz/Oc=; b=EZ3V+NdJlMxFV42qsWB2Z+4g34q0AzJx1g2UQr+/zTzEvpg80XU0u7Fj7S0j8rn87L XepCuXh2s9+/t2oJjTdK0gun7vp3Plw/bV4gMCvKCUHd/yTTZoDWs3G/FYeXYvroA3hN MFRwHAcbV6ZSAqXDKzxrO/sM8YX96taowsMfFZPp2Gw0lpP35HvHNvKw2Z/YRDjUxeup kZNSBxfnP+87nXXpeNAeT5b8kC9Q2NcNXxh2tj3Bw0++RPxU8CJHi02bMUHLrmnDPNsO kV55Ngpp/Zf4q3jdMq7OavoV221XgJFNs6ZXtAmW4vUbx05tBlhPUPyIEPGwvH7JcM23 fJ6A== X-Forwarded-Encrypted: i=1; AFNElJ8LOxbFSFoRtHNESQI5TO72vr8A5nI1wZsfW5bSJsg6wPoH8OCFSWTvM8xq0JTExbvmNcaZOj+I4kbH4Ks=@vger.kernel.org X-Gm-Message-State: AOJu0Yyd25jsSLY8mRF1pBh0Iv3ad/afFU3RCvmBRP4j+DV52jitTdFx uSBBP1opDjf4pfo5DEKV0ICIZICKVO8/Xmw4ks5pfslMBmX2s6N2c0mc X-Gm-Gg: AeBDieshQ6JAY4/R8tkbzWjn5jH/yEiIntjCyswQzngBNl3zirEQiMnyJJjjWNc7tR3 cKcTFdLkOlMsa02m5rC66UwwNB3S4V1lMbaQ1ykhBGBSxgoHcI/GWtWG0CkUbWurruN0jxbX2a8 /GY4rxQ2V7p4sBFISocPHUn7eozfE6ksCdvo/DVFW3XKBA8Jfy2YARbk8HFiZ2xuTHQCyj34pOx owygRxx73AtWBsCF2Rdlk313fz7OoCOwbAN4sCn/wSKZTwuywvfdldHegadpcAhmP9cb0LnUCdc c97R9UAPhco6aQMKnUDWJg8iJe3JzUHBsZvXx4amNTC7nKJjC79YAmt0BTax7DWE8KkLfnmgepF 5I0Onhl68GPwbz8GYMwBQuM+szKvUphJMQ85ZlIz4+4QP+wb6hcBKyXO0pwE7/2ws/xaqla8etM HL9JcPD3l/toZKRbWFMdnYRgNJmfC+SkAuF8EMxsmV1IVjPNmtYZQ= X-Received: by 2002:a05:600c:5295:b0:485:30d4:6b9e with SMTP id 5b1f17b1804b1-488fb77facemr543233015e9.21.1777204488689; Sun, 26 Apr 2026 04:54:48 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.54.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:54:48 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:14 +0300 Subject: [PATCH v6 1/6] dt-bindings: arm: zte: Add D-Link DWR932M board based on zx297520v3 SoC Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-1-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2142; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=bXEAu8dm/Md2Hoo00nr0sADiZPaa3JrZAFzkbiCSNFY=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+L8bHJ3v3mQmorkdJFu/1k1Q1rxfqFwIAj RcmfDEnmGyJAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiLSCRAAkC+A/ax7hQyrpCuXnczMhBdavq5k6nz 1/7GrMB9U2uGk0Uh7bfp2ryxtObfOnxC1ru8NJYgmIGzvvOAZHwLxugoladVsQ9V6PeZK0y6MfY KlFVoq0xjVECtaycoCLPkbPG8HZ5V4uAy57OARxd9M3r2+uqGamoYfcD2K7QiSv728ioT5CKmhZ lewVdrF8Yek6FpDtgyLHxRpHs3PqgrhhobbTQNs+SG2uawCvPOr+gKdA0MoWHcccb7N9Bn5uAAs 1KqSciDeXRZ2kuPoiWz4PapElCh9ghowPPZrOnb/iHXlZsPuW5+9RM0tut4GluqeRDv7o7BSQiK +EacECiBMZK3EtelUqe2zT6z+25iieUVP20mcY9QvcoDWyWw9uDgthKQQbJiJfXRXq62InRtRpf lZYQmIrCeqrmz5P36pttfbGJqT6v86264RCJbfVi5l3VWNqW5LIQ+Hq0qef6sb78Ajdm3+2D9yu FnQvDmEacrLwa+oc3wvHRUcBkkTIVOXqRHoJBfI7S0nY8yuzurgzbeqSbMg6snGblGDIslMXg4d 7k9DhlZc+O/DNXSp7SoEhFWwQNcpCgPwpJaeTOZYrIvQYlmRXx7m0NUFvG9TPXwJfB0/vWFFsVw pbDWd0/wwhkB/KMUJv3mkDG1s5usMAJNDOdSRAjIERTcz1Dvb1mU= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This adds a new binding file for ZTE, containing their zx297520v3 SoC and one board (D-Link DWR-932M) based on it. Signed-off-by: Stefan D=C3=B6singer Reviewed-by: Krzysztof Kozlowski --- Changelog: v6: Removed extra boards, I'll add them when submitting their individual DTS files. Rephrase the subject to add "zte" and remove the redundant use of "binding". Moved the devicetree bindings patch ahead of the implementation patches. Moved the MAINTAINERS section from "ZX29" to "ARM/ZTE". --- Documentation/devicetree/bindings/arm/zte.yaml | 26 ++++++++++++++++++++++= ++++ MAINTAINERS | 4 ++++ 2 files changed, 30 insertions(+) diff --git a/Documentation/devicetree/bindings/arm/zte.yaml b/Documentation= /devicetree/bindings/arm/zte.yaml new file mode 100644 index 000000000000..f028d2cec7ab --- /dev/null +++ b/Documentation/devicetree/bindings/arm/zte.yaml @@ -0,0 +1,26 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/arm/zte.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ZTE zx platforms + +maintainers: + - Stefan D=C3=B6singer + +description: | + ARM platforms using SoCs designed by ZTE. Currently this supports devices + based on the zx297520v3 SoC which is found in LTE routers. + +properties: + $nodename: + const: "/" + compatible: + oneOf: + - items: + - enum: + - dlink,dwr932m + - const: zte,zx297520v3 + +additionalProperties: true diff --git a/MAINTAINERS b/MAINTAINERS index d1cc0e12fe1f..b768b9da37a4 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3772,6 +3772,10 @@ F: drivers/video/fbdev/vt8500lcdfb.* F: drivers/video/fbdev/wm8505fb* F: drivers/video/fbdev/wmt_ge_rops.* =20 +ARM/ZTE ZX29 SOC SUPPORT +M: Stefan D=C3=B6singer +F: Documentation/devicetree/bindings/arm/zte.yaml + ARM/ZYNQ ARCHITECTURE M: Michal Simek L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers) --=20 2.53.0 From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A599F35BDD5 for ; Sun, 26 Apr 2026 11:54:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.54 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204498; cv=none; b=DfQsKEuwD0hMeh7Yey+2vItLgfbYpT6BdshpHGJWxHCvQPu2szTd+9EuFuHZUIFcjdJ9pCFmC5nuIBHTCdbcSpU2B9teujMDrQW88MDrZvUjW6IdjgdtmHaBmY4lKMb7JlYfOmDHJJebmo943F6vJKNz3rvD1ojiOFo0UfRL7tY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204498; c=relaxed/simple; bh=ME0gwHw/Kxyb6HlTRgui0vBk9ztmkUUdS59QuMFbKKk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=QoET+lvNetePin4k4yB2FIv0vamf7jelfHKnbpXTqiZKJHd9D0MR8HSmZBd2DI5uQ/I3EKdsb0ym9xBDVRAsyhxVlIveZYQiWGl4OuUiyKaHEOg+II03+/VFIXeeQBYEXZZbD6vC6S1eDPPfV4SlOMQ6D5Ch/76MKLshfZg1VfE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=MqWU0ZSf; arc=none smtp.client-ip=209.85.128.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="MqWU0ZSf" Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-4891d7164ddso44854185e9.3 for ; Sun, 26 Apr 2026 04:54:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204494; x=1777809294; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MvzfilwosZg+Y6Y5D0mnaXMiTMzbnTm7xoCYs/xtKvU=; b=MqWU0ZSf5QYOogxzEOZr+RmMQPv4TFk0Cz21HT/S6/Z1oTViH8irG5mU9KUJ37fUmo EqTrW6WoZrTtICt4Aly61pZ1WkHrPs2uVO8JvDrXNS/V9er+z3mProiQDwe4L2vzI7oB +Sn8yJ+iCvvMQYUimWTxpbB+tTcW9EOqu89eFkjrb3a198DAtWUw6f1p3FjmKLe4bvRg oRSVIWtT2iqQLaz5GPOK2AStM4XQbUJDfJn+NZrwj/nY17/AFWf+OhaLXcXEoGkXrPkO /ut5cMUumU0RPuA1s5bPZgvicXMWYJ9e5/HCCVNQafRmrhyHKRVrmFYrJ8+yt3UjdaFS E+kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204494; x=1777809294; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=MvzfilwosZg+Y6Y5D0mnaXMiTMzbnTm7xoCYs/xtKvU=; b=TI1AgpuEoTK49CT75otqHGRBhFjLPJUvuR1nSKV1L+c+RO3msb4ss2ZFHCL9qZtqpX KC7qEk7iYg619hH6h85TOQRXLgmSODsXomIbojW0LzEbcW5ixhI2YWeMUY/Wl1tY2CXL Rg9BNHHc9TxWmtdZ51pl8ZZ0+KacYf/aBRCvmyHCne2j3EnOJO8yUy/tzZHjPtw+zhVy aYKgLLAGDjzgIcrOnAEwQVDV6Ti04bQZRzxyiSOOKe4cnnn19fJxKwSXX+fkW4N/7MkV 8/xrHkEc9nFJzs2QgaOP5NOPAGFgn+39QXI1uas5Ome6r5DQ/cJs4AI7aqIaw3Py1DUw s5RQ== X-Forwarded-Encrypted: i=1; AFNElJ80ISmlQPfojt5QmyLm6BaBDQ2ewt/mttfRmPABp13OxdC6MVgZYlhscsbDga2BO0b6Gm1PJath67mB1C0=@vger.kernel.org X-Gm-Message-State: AOJu0Yy38UPSFSdr98Le58ibocK/kHZhC9O3TJ8ODvIBk07RGt5JrPw7 vemCACyBAttiYiUkRIqL4R6pb2nomXH/pq4lwE3f/8PWucJPxMR4z033 X-Gm-Gg: AeBDieuAH14jp0T0DgL23libuXt/XgtmEDD1hpVW6oVkbO2p5hYT7qy/mZNIPg7zC52 hen5lX0GaGJrs23ttTsPEAqCEayRiZsA5BBa88ntfPf/FvI/SZygDhFDIfb62D67vgHdoz7Ng9r vRj/aF1Cn1YESOq+FrEYv6SA9g66jeu+VufAL3tUemr917MgQc7IpiczROeXJuzQlMmz0Vqor+i 0mjLM7MknmL53kTsQnsQoccCZTJmI7+5bJuUSzMejgZDKZ+dOsvxNEhLxW8+4SYUz67TFmIqvvP T+104xHKI6y6QaSHcpS/ywmL124ONnFHjYcBlztee8DheuBuIHBEwrwlDMVWIs7FvL9FaZJ/tHT 42C+ZC8iHSURSt3A9whg6BLiUT0/dmQ3/She+FDK+o3HVpQ9IUkdLQys0i16Rkjf+t3+rSoMxkP nazbM1jo12nyGFwc5kwJlH/Vd/KtiClx4dDXREn4ed X-Received: by 2002:a05:600c:3e1a:b0:489:1ca2:eafd with SMTP id 5b1f17b1804b1-4891ca2ee65mr413222665e9.11.1777204493975; Sun, 26 Apr 2026 04:54:53 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.54.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:54:53 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:15 +0300 Subject: [PATCH v6 2/6] ARM: zte: Add zx297520v3 platform support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-2-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=10898; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=ME0gwHw/Kxyb6HlTRgui0vBk9ztmkUUdS59QuMFbKKk=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+5rqb7/wOY73SzfwAKT3EoBc4iJMYIq1p0 Nxs0iSmlXyJAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiL4Uw//bc4lSWYVeJwYU0FBPtKfzHG/AurjEY3 jJ7Lg2hjt70n9MFelIrbL625dU73rhdpkT/0FMiikyrw6GpYwbosBQExJzcbPs+pqzY3NwGTfM2 daeiQflzsigDNtGCY0IB73gEg7xXBopqPVAYtEa2U3DyuRi7hqbHU3231LFggDyNuRKSdmraubj xTwQFs9gMc1mF9wO7MF3ziE48j47/ATOqDSL5liNXRq2KbVkk49TFVy0cN2wLK6CO6hQhU1Uucp wiMi3jzDwXnXilBO7G7hljDsglYL2oqeI4h4p+G4v1iyPwAC3Ylp+X8O7sfUjk2+a+NCNvfHwa2 rXSO2L0HeB8HimXbwgyUG9iCNcZ32ZUCzn/a+z/M9CxDlfk4TgWsPKs/uXjCsLtrnfjoWdo4Oog +lJbra3zpfdhFxTuIZdUrOwX7AeJVHCHGKCevf3J/tiUGEZWtaO+HDGr2IpreZSU0QUsXufy17K EBFvd+ZmaUy8tZBlwcrp7QnJ0hhfBnzQYvheNuP59R+96b5EH9L+O+ekx1p1+1ru9BkjPHxnoPG m6XTZG8cvhzgxW0kMYJ2s4fAbPZ5n1Ah4nkgbpOwoiKPhTFZ40K90ykBwdflX1JbtNKuzMzgaBS qvrU1oF2fcJ5Ybv8SoRm8bZecb5Ca/iJOTK+HNAGDDrGIDwQq2V4= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This SoC is used in low end LTE-to-WiFi routers, for example some D-Link DWR 932 revisions, ZTE K10, ZLT S10 4G, but also models that are branded and sold by ISPs themselves. They are widespread in Africa, China, Russia and Eastern Europe. This SoC is a relative of the zx296702 and zx296718 that had some upstream support until commit 89d4f98ae90d ("ARM: remove zte zx platform"). My eventual goal is to enable OpenWRT to run on these devices. Reviewed-by: Linus Walleij Signed-off-by: Stefan D=C3=B6singer Reviewed-by: Krzysztof Kozlowski --- Documentation/arch/arm/zte/zx297520v3.rst | 158 ++++++++++++++++++++++++++= ++++ MAINTAINERS | 1 + arch/arm/Kconfig | 2 + arch/arm/Makefile | 1 + arch/arm/mach-zte/Kconfig | 26 +++++ arch/arm/mach-zte/Makefile | 2 + arch/arm/mach-zte/zx297520v3.c | 19 ++++ 7 files changed, 209 insertions(+) diff --git a/Documentation/arch/arm/zte/zx297520v3.rst b/Documentation/arch= /arm/zte/zx297520v3.rst new file mode 100644 index 000000000000..6621ea72769f --- /dev/null +++ b/Documentation/arch/arm/zte/zx297520v3.rst @@ -0,0 +1,158 @@ +.. SPDX-License-Identifier: GPL-2.0-only + +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D +Booting Linux on ZTE zx297520v3 SoCs +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D + +..........................................................................= ..... + +Author: Stefan D=C3=B6singer + +Date : 27 Jan 2026 + +1. Hardware description +--------------------------- +Zx297520v3 SoCs use a 64 bit capable Cortex-A53 CPU and GICv3, although th= ey +run in arm32 mode only. The CPU has support EL3, but no hypervisor (EL2) a= nd +it seems to lack VFP and NEON. + +The SoC is used in a number of cheap LTE to WiFi routers, both battery pow= ered +MiFis and stationary CPEs. In addition to the CPU these devices usually ha= ve +64 MB Ram (although some is shared with the LTE chip), 128 MB NAND flash, = an +SDIO connected RTL8192-type Wifi chip limited to 2.4 ghz operation, USB 2, +and buttons. Devices with as low as 32 MB or as high as 128 MB ram exist, = as +do devices with 8 or 16 MB of NOR flash. + +Some devices, especially the stationary ones, have 100 mbit Ethernet and an +Ethernet switch. + +Usually the devices have LEDs for status indication, although some have SP= I or +I2C connected displays + +Some have an SD card slot. If it exists, it is a better choice for the root +file system because it easily outperforms the built-in NAND. + +The LTE interface runs on a separate DSP called ZSP880. It is probably der= ived +from LSI ZSPs and has an undocumented instruction set. The ZSP communicates +with the main CPU via SRAM and DRAM and a mailbox hardware that can genera= te +IRQs on either ends. + +There is also a Cortex M0 CPU, which is responsible for early HW initializ= ation +and starting the Cortex A53 CPU. It does not have any essential purpose on= ce +U-Boot is started. A SRAM-Based handover protocol exists to run custom cod= e on +this CPU. + +2. Booting via USB +--------------------------- + +The Boot ROM has support for booting custom code via USB. This mode can be +entered by connecting a Boot PIN to GND or by modifying the third byte on = NAND +(set it to anything other than 0x5A aka 'Z'). A free software tool to start +custom U-Boot and kernels can be found here: + +https://github.com/zx297520v3-mainline/zx297520v3-loader + +If USB download mode is entered but no boot commands are sent through USB,= the +device will proceed to boot normally after a few seconds. It is therefore +possible to enable USB boot permanently and still leave the default boot f= iles +in place. + +3. Building for built-in U-Boot +--------------------------- +The devices come with an ancient U-Boot that loads legacy uImages from NAN= D and +boots them without a chance for the user to interrupt. The images are stor= ed in +files ap_cpuap.bin and ap_recovery.bin on a jffs2 partition named imagefs, +usually mtd4. A file named "fotaflag" switches between the two modes. + +In addition to the uImage header, those files have a 384 byte signature he= ader, +which is used for authenticating the images on some devices. Most devices = have +this authentication disabled and it is enough to pad the uImage files with= 384 +zero bytes. + +Builtin U-Boot also poorly sets up the CPU. Read the next section for deta= ils +on this. It has no support for loading DTBs, so CONFIG_ARM_APPENDED_DTB is +needed. + +So to build an image that boots from NAND the following steps are necessar= y: + +1) Patch the assembly code from section 3 into arch/arm/kernel/head.S. +2) make zx29_defconfig +3) make [-j x] +4) cat arch/arm/boot/zImage arch/arm/boot/dts/zte/[device].dtb > kernel+dtb +5) mkimage -A arm -O linux -T kernel -C none -a 0x20008000 -d kernel+dtb u= img +6) dd if=3D/dev/zero bs=3D1 count=3D384 of=3Dap_recovery.bin +7) cat uimg >> ap_recovery.bin +8) Place this file onto imagefs on the device. Delete ap_cpuap.bin if the +free space is not enough. +9) Create the file fotaflag: echo -n FOTA-RECOVERY > fotaflag + +For development, booting ap_recovery.bin is recommended because the normal= boot +mode arms the watchdog before starting the kernel. + +4. CPU and GIC Setup +--------------------------- + +Generally CPU and GICv3 need to be set up according to the requirements sp= elled +out in Documentation/arch/arm64/booting.rst. For zx297520v3 this means: + +1. GICD_CTLR.DS=3D1 to disable GIC security +2. Enable access to ICC_SRE +3. Disable trapping IRQs into monitor mode +4. Configure EL2 and below to run in insecure mode. +5. Configure timer PPIs to active-low. + +The kernel sources provided by ZTE do not boot either (interrupts do not w= ork +at all). They are incomplete in other aspects too, so it is assumed that t= here +is some workaround similar to the one described in this document somewhere= in +the binary blobs. + +The assembly code below is given as an example of how to achieve this: + +``` +#include +#include +#include + +@ This allows EL1 to handle ints hat are normally handled by EL2/3. +ldr r3, =3D0xf2000000 +ldr r4, =3D(GICD_CTLR_ARE_NS | GICD_CTLR_DS) +str r4, [r3] + +cps #MON_MODE + +@ Work in non-secure physical address space: SCR_EL3.NS =3D 1. At least th= e UART +@ seems to respond only to non-secure addresses. I have taken insipiration= from +@ Raspberry pi's armstub7.S here. +@ +@ ARM docs say modify this bit in monitor mode only... +mov r3, #0x131 @ non-secure, Make F, A bits in CPSR writeable + @ Allow hypervisor call. +mcr p15, 0, r3, c1, c1, 0 + +@ AP_PPI_MODE_REG: Configure timer PPIs (10, 11, 13, 14) to active-low. +ldr r3, =3D0xF22020a8 +ldr r4, =3D0x50 +str r4, [r3] +ldr r3, =3D0xF22020ac +ldr r4, =3D0x14 +str r4, [r3] + +@ Enable EL2 access to ICC_SRE (bit 3, ICC_SRE_EL3.Enable). Enable system = reg +@ access to GICv3 registers (bit 0, ICC_SRE_EL3.SRE) for EL1 and EL3. +mrc p15, 6, r3, c12, c12, 5 @ ICC_SRE_EL3 +orr r3, #0x9 @ FIXME: No defines for SRE_EL3 va= lues? +mcr p15, 6, r3, c12, c12, 5 +mrc p15, 0, r3, c12, c12, 5 @ ICC_SRE_EL1 +orr r3, #(ICC_SRE_EL1_SRE) +mcr p15, 0, r3, c12, c12, 5 + +@ Like ICC_SRE_EL3, enable EL1 access to ICC_SRE and system register access +@ for EL2. +mrc p15, 4, r3, c12, c9, 5 @ ICC_SRE_EL2 aka ICC_HSRE +orr r3, r3, #(ICC_SRE_EL2_ENABLE | ICC_SRE_EL2_SRE) +mcr p15, 4, r3, c12, c9, 5 +isb + +@ Back to SVC mode. TODO: Doesn't safe_svcmode_maskall do this for us anyw= ay? +cps #SVC_MODE +``` diff --git a/MAINTAINERS b/MAINTAINERS index b768b9da37a4..e707176c2114 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3775,6 +3775,7 @@ F: drivers/video/fbdev/wmt_ge_rops.* ARM/ZTE ZX29 SOC SUPPORT M: Stefan D=C3=B6singer F: Documentation/devicetree/bindings/arm/zte.yaml +F: arch/arm/mach-zte/ =20 ARM/ZYNQ ARCHITECTURE M: Michal Simek diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index ec33376f8e2b..4217ed704e48 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -464,6 +464,8 @@ source "arch/arm/mach-versatile/Kconfig" =20 source "arch/arm/mach-vt8500/Kconfig" =20 +source "arch/arm/mach-zte/Kconfig" + source "arch/arm/mach-zynq/Kconfig" =20 # ARMv7-M architecture diff --git a/arch/arm/Makefile b/arch/arm/Makefile index b7de4b6b284c..573813ef5e77 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -223,6 +223,7 @@ machine-$(CONFIG_ARCH_SUNXI) +=3D sunxi machine-$(CONFIG_ARCH_TEGRA) +=3D tegra machine-$(CONFIG_ARCH_U8500) +=3D ux500 machine-$(CONFIG_ARCH_VT8500) +=3D vt8500 +machine-$(CONFIG_ARCH_ZTE) +=3D zte machine-$(CONFIG_ARCH_ZYNQ) +=3D zynq machine-$(CONFIG_PLAT_VERSATILE) +=3D versatile machine-$(CONFIG_PLAT_SPEAR) +=3D spear diff --git a/arch/arm/mach-zte/Kconfig b/arch/arm/mach-zte/Kconfig new file mode 100644 index 000000000000..2e3abee94994 --- /dev/null +++ b/arch/arm/mach-zte/Kconfig @@ -0,0 +1,26 @@ +# SPDX-License-Identifier: GPL-2.0-only +menuconfig ARCH_ZTE + bool "ZTE zx family" + depends on ARCH_MULTI_V7 + help + Support for ZTE zx-based family of processors. + +if ARCH_ZTE + +config SOC_ZX297520V3 + default y if ARCH_ZTE + bool "zx297520v3" + select ARM_GIC_V3 + select ARM_AMBA + select HAVE_ARM_ARCH_TIMER + select PM_GENERIC_DOMAINS if PM + help + Support for ZTE zx297520v3 SoC. It is a single core SoC used in cheap + LTE to WiFi routers. These devices can be identified by the occurrence + of the string "zx297520v3" in the boot output and /proc/cpuinfo of + their stock firmware. + + Please read Documentation/arch/arm/zte/zx297520v3.rst on how to boot + the kernel. + +endif diff --git a/arch/arm/mach-zte/Makefile b/arch/arm/mach-zte/Makefile new file mode 100644 index 000000000000..1bfe4fddd6af --- /dev/null +++ b/arch/arm/mach-zte/Makefile @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-$(CONFIG_SOC_ZX297520V3) +=3D zx297520v3.o diff --git a/arch/arm/mach-zte/zx297520v3.c b/arch/arm/mach-zte/zx297520v3.c new file mode 100644 index 000000000000..c11c7e836f91 --- /dev/null +++ b/arch/arm/mach-zte/zx297520v3.c @@ -0,0 +1,19 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright 2026 Stefan D=C3=B6singer + */ + +#include +#include + +#include +#include + +static const char *const zx297520v3_dt_compat[] __initconst =3D { + "zte,zx297520v3", + NULL, +}; + +DT_MACHINE_START(ZX, "ZTE zx297520v3 (Device Tree)") + .dt_compat =3D zx297520v3_dt_compat, +MACHINE_END --=20 2.53.0 From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wm1-f42.google.com (mail-wm1-f42.google.com [209.85.128.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CC812359A91 for ; Sun, 26 Apr 2026 11:55:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204503; cv=none; b=BI8GmnQROMx0xYd62q04hH/9m6b5Y2LWrYCNqLYl6ebe4llrTK/ETCo4qeEbsI+q25IAW90NP+UJsHuLwg7lRHpsLqAfp8M6mVS8K/ZtJWIpxbmF+2gjE7vXdH3vWBmSSU0UlFsdqLUImovBJj/Yp6bY3BOWUHAcECo70V+zxMs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204503; c=relaxed/simple; bh=M2o/Qr31tdSVgMGK7MGptHsdQ8CYwaC7nU5G71DmAdM=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ppRqoyQvxwrh3IIysu5OcWmP65WavYpf0nVlQfLf56FzrpUwRMYSVau1rx7Y6P1zpcfE8f+BYH1drOK/MO9mdiU38B9kNjm1bS7Ms47ZdSe7DBB/uE/tLLUnb7eLTj2pFu/E/3QI3b/IO2GLMlfqVPiAGaDkvusDqFi+/ChAwYo= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=nDN6fr2B; arc=none smtp.client-ip=209.85.128.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nDN6fr2B" Received: by mail-wm1-f42.google.com with SMTP id 5b1f17b1804b1-488b3f8fa2bso92761345e9.1 for ; Sun, 26 Apr 2026 04:55:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204500; x=1777809300; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=8a6WmnzhZriHz9vEWPuhbpYJDMw8zDZc78JguLRxNCc=; b=nDN6fr2Bs7k3M83IXdUBSYByQ4KgknkpsTS4hZ0+208EKBQLuiTm698TktiCROuF/g l3JQY3LtkxpEwsAhVFWGVCNptEPE2gQsKTo2vYBpHUUkSnt1I0qLTtwygQXMptNVreDK +kQCf13AV/SIqXLonqLqrDvODZ56o/nkQMACcnmo/WLT3+JLMt3yfdKpuJyqJeBLlk+d eSifURGY0osCd6+T1xSQ0TdaQolKGk9tPTlA/68sP7i5XyTK16IiyTTBFs8/OwN3M6Px cuNuOvT1jnbXqjrdtoFm4Rgw/QPoZqLU5czzH5Pa6nz2pOakBDtYOxq+9Y/WUQuzLkn2 7Xjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204500; x=1777809300; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=8a6WmnzhZriHz9vEWPuhbpYJDMw8zDZc78JguLRxNCc=; b=AlN/t8cRZCXV3zLEe9TqLBQ9BMnUDm2ZG+5gUpQPBs8MOJtKTmZQIrG2NB49PAj6w/ N7N2hk83XFIQEZ5044w0WdZzduPQCzstCEHVbszqHDM/e3ljZbFKfEiBp2xKEWWxNrRX 6Okp5hRNHQraJgqeTBv6xRRa7KcZj6FX13dCDgLqrhk9TriZW9HOuAeAt5NtOAYgeBmm jul5JAJejPe2ObZIl6YUuh1z1c5zKiKhEcsbf+zKK6kIOUtDVdY0K0qvaiwOHcoxokbc CM+Q8Kt2G5yh6Ki04pAEuvgFuMTdFqrbyTaJfjDrzfKd9U7i5fTpI0ahPfvbCh96xrp7 k3hA== X-Forwarded-Encrypted: i=1; AFNElJ9A5Ye2dcO3/yKN/e6cUngi+vFxc7kBdurPAa38d1oLwTLGQ8Pjg/ULpDIKjTAPL8+F9gtyIj/4op9n9QY=@vger.kernel.org X-Gm-Message-State: AOJu0YwZbVCTemsGXpEVNNCSmC1R9YiXg7OEgkk0rMWro19sliyagK7N xYNR+1G4+8Swi/GhoQQdAV41PnEbB7KNEwaJuztjZm/t1B8zNVsKqqut X-Gm-Gg: AeBDietlFRfVDumNNxCfhmRBbCsCogeouq9Csw70JTZ7jTz+NGbEO5m2LkVURejBoY3 B30kgFGCv3hTNtufMVb8ySsgOUEvYHmPLh4wwF4deyvgl5kSdi84VcABNYPBTAnDLvKEbXufInl LB9VD7A+gzcAr2LqQg2r10VxP27UoK18wXq5ODI+eSWl4LnqyD/M1WaJeHuZB63X0jUKam0+C9f eWHpQJc9FgFoTxnF20TMolX3TbR9A0HA6Pl6KEkUXhzKiPJxJ14pU8yjxJ158welHY0PjbJ9mmX /vRV5ZXcbt6QWI25mH3f/AgNm9UZR+/rwsYFfCib0xclRurEUCmmpqeU4SBNjz6bcZir8O89/x3 qwVYQxD0LTIxc9dnNxHN0vOW5I1FOa0hEFveZMWlQ/a8JBTbJYbGRimUNaw2nphQMdpdstcMEI0 Qc23aqCfIwDJom3FTmjg+vkyTbTHp7lQM/lZaYj2sj X-Received: by 2002:a05:600c:3ba0:b0:486:faa8:9e4 with SMTP id 5b1f17b1804b1-488fb8b91a7mr505266375e9.12.1777204499997; Sun, 26 Apr 2026 04:54:59 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.54.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:54:58 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:16 +0300 Subject: [PATCH v6 3/6] ARM: zte: Add support for zx29 low level debug Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-3-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2630; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=M2o/Qr31tdSVgMGK7MGptHsdQ8CYwaC7nU5G71DmAdM=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+JzGxmOauk8aKEVxmo6rh72jTY/V8V4KqY rsSLPEGRV6JAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiJ21A/+PDdEZrFyDSxgwC3ikMTxEDtoXKJ21YF T4OgfXM5uzdBNtVEE2VXmoT8+onMkZ6FOHlCLXWOdi6tGbLpetAo6nyajSoscloMOPmDx6lDq6X NZIhU2RHcHS/AD09GyHqMtEGLfLMvphbRcDKIaiB6NNDLqnqidMr20pUDuZ5Pem3+0swtV/+o8x FnlitxZw8wAwtDKEvqr0/vzWmTLWUX2L8cf7EI9uTXmeDCYVLHgegg6v8QzxM/vnegDEuB1TVaV 1yaVEyP/iZircjTa8uyt8CGGDcr0yJF2ikPhOEzJ8QC+GyeEqnyyykpbJ1r6kxCY8vEMcjGuPpQ liWg/2byZsoC6P+NQjfLd+ZFWSs5nV1TnNl05wdY8Vrz3srEYpV9TKmnHXi42R/riC1Qi/A1ark GFe/vhs+/1MWvXpYF1t+OSfKOFMlSO7xi3C8ecuhYbB2pDHPaFrjZNmK6eF4durdbCwguTDiKlI QlTBsIBIh2NqiAw0yqfYaTeCXJ9YmSOfXbBX7xqcaHaxVKobWvpBAixMWbb7G+1LF8Jong2SL5I 2Q2HjehVhCFhqHEu6XiILZXXO/Bp4MA+ZZ6sx7A6UTDOF28td6/0oroVCFayKelST8ScOAU2c6L d/UKHI8icsM61yMF+feTpybi09g0e8+C7uMxKegPyWlWDNKSdApE= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This is based on the removed zx29 code. A separate (more complicated) patch will re-add the register map to the pl011 serial driver. Reviewed-by: Linus Walleij Signed-off-by: Stefan D=C3=B6singer --- I am unsure about the virtual address. It doesn't seem to matter, as long as it is a valid address. This address is based on the old removed code. Is there a rule-of-thumb physical to virtual mapping I can use to give a sensible default value? --- arch/arm/Kconfig.debug | 12 ++++++++++++ arch/arm/include/debug/pl01x.S | 7 +++++++ 2 files changed, 19 insertions(+) diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug index 366f162e147d..98d8a5a60048 100644 --- a/arch/arm/Kconfig.debug +++ b/arch/arm/Kconfig.debug @@ -1331,6 +1331,16 @@ choice This option selects UART0 on VIA/Wondermedia System-on-a-chip devices, including VT8500, WM8505, WM8650 and WM8850. =20 + config DEBUG_ZTE_ZX + bool "Kernel low-level debugging via zx29 UART" + select DEBUG_UART_PL01X + depends on ARCH_ZTE + help + Say Y here if you are enabling ZTE zx297520v3 SOC and need + debug UART support. This UART is a PL011 with different + register addresses. The UART for boot messages on zx29 boards + is usually UART1 and is operating at 921600 8N1. + config DEBUG_ZYNQ_UART0 bool "Kernel low-level debugging on Xilinx Zynq using UART0" depends on ARCH_ZYNQ @@ -1545,6 +1555,7 @@ config DEBUG_UART_8250 =20 config DEBUG_UART_PHYS hex "Physical base address of debug UART" + default 0x01408000 if DEBUG_ZTE_ZX default 0x01c28000 if DEBUG_SUNXI_UART0 default 0x01c28400 if DEBUG_SUNXI_UART1 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1 @@ -1701,6 +1712,7 @@ config DEBUG_UART_VIRT default 0xf31004c0 if DEBUG_MESON_UARTAO default 0xf4090000 if DEBUG_LPC32XX default 0xf4200000 if DEBUG_GEMINI + default 0xf4708000 if DEBUG_ZTE_ZX default 0xf6200000 if DEBUG_PXA_UART1 default 0xf7000000 if DEBUG_SUN9I_UART0 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0 diff --git a/arch/arm/include/debug/pl01x.S b/arch/arm/include/debug/pl01x.S index c7e02d0628bf..0c7bfa4c10db 100644 --- a/arch/arm/include/debug/pl01x.S +++ b/arch/arm/include/debug/pl01x.S @@ -8,6 +8,13 @@ */ #include =20 +#ifdef CONFIG_DEBUG_ZTE_ZX +#undef UART01x_DR +#undef UART01x_FR +#define UART01x_DR 0x04 +#define UART01x_FR 0x14 +#endif + #ifdef CONFIG_DEBUG_UART_PHYS .macro addruart, rp, rv, tmp ldr \rp, =3DCONFIG_DEBUG_UART_PHYS --=20 2.53.0 From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wr1-f49.google.com (mail-wr1-f49.google.com [209.85.221.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 12A5635DA68 for ; Sun, 26 Apr 2026 11:55:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204508; cv=none; b=J0bumZ2Fvv+9AjlPTwYVBImPeKknLnirqgmO70lHiys6SVrKD+MZMcXt7BmKmenVir3ugrUNjiYYvz7riZPCj7NrA9JHMazKbH7RHTPtKaGIeG9bbElFSa5kvn1DSqIggXzpq5nwXFBVz5QWqP+oaUGZTHR+Ns7SaMSeOlxT4To= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204508; c=relaxed/simple; bh=OFELZprfvGMngJiiwTNQcz/opzneDKzuYgSzdRQRbGE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=t5ugU+Yn+FtEFjlFuo7v3/usqjD9BLrNnK4KGz2KL5+nT7lBTmKzpywY1pr2M+tHnnWIUpgJso4ub/OgZMdhtOH1coXZdqNMhSoE0JdWYVkGwhm00Hm8VPwMsBhifM9gB9UKaZdBGPeeS71aGz5GOjq+SyvWeAU4iDpfLycJRko= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ovGTBQHj; arc=none smtp.client-ip=209.85.221.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ovGTBQHj" Received: by mail-wr1-f49.google.com with SMTP id ffacd0b85a97d-43cfbd17589so7447772f8f.0 for ; Sun, 26 Apr 2026 04:55:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204505; x=1777809305; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=LkcOvOZZBBJ6rw+XBoAkJNNzNDgTfzBSBc4KLO3hr2I=; b=ovGTBQHja/6rRV7Jvz8dHi5ujl2/wK4UeThRMD8+rrKkz6MG6xVDv6ECHoy99n+Le5 ZYlVUwa0sABtDr5HSPl4k9ejZVjaA3Nt2NjTlFtjicBDBlkCtbCJuOEgOBRKYEZQ9rfx jgKwH4RUQdp9iuV0PF58FtEE+Yb5f5ZFiDv9MqQ8oEs9dLtmlfYwbWiJsGXfHYdYAHaj 39NPM99K1T2E3HtnXaKCk67XVBMRZj9L8zx5WNF1OOHM7LuIKv+XAAUSNAg/o9sNFDPf QcRoIcJzrpkwDoh5fLgfiwzmVBF82CTd6ZB9H7IZfjmt8wfrVwgC+YQnDFdkHKnGYiXy zLyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204505; x=1777809305; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=LkcOvOZZBBJ6rw+XBoAkJNNzNDgTfzBSBc4KLO3hr2I=; b=ZvbGgB6dlNDSVebpqzwun6PZGtIocfHz2V/go2jsbaZUWNxBpL7unRSemSnr3yEt+8 TqGiSfDKeIwOCMp2z+llF9m1t0wrLXZOgVxUUoM6oF1zUEKckP30tc4Fk4SBynqlzIpW K41Bo6r2erN1Ey+gLhBSlpU7Q8Mom/aZ1HgDaMoqYzwYwAJhTPYhB3GVmBKRK3uCQRsR rHAzjDqb/URFGG4KMSOAl4HXl/pau08ZW7u9pvW7WlR6oUq9NBMHzbXjYsCpnuBQP/dR WYjc1aGUv67FidIY9kMgGM1Rqi72arN+g4wgQaSmmaJyRGg3k8AfhDKpJ11R1HRnCecG eN+g== X-Forwarded-Encrypted: i=1; AFNElJ8DFvppU7CcqXp9JhFHHmnHU8FwCTo23G201lE4QQMY2VB6rKAef6ba1MGUAYlgSwgtrT/fNGkWC5LMFrk=@vger.kernel.org X-Gm-Message-State: AOJu0Yw3XdcJ5SS4NiUFdqZ038fgmYDxgQsOiHx95JeOPmcMYqzFmXQJ X4OcWmkHP7CU9SOfUq6k/LG3R/nlGQC4H5BLj+RdP+0DQDdLLKSlL9Fz X-Gm-Gg: AeBDieusNCjJkwTn+5p7qsjgH9c2sEm75lHO7ar/mnaOezXgdtn+SyZf2iRkRXAuerD THrDgvVxCCzLNRGehxlBP/uxNUNHbRE8UZC1RDcOWAParT7fhbUjuMSK3feXtizgfoHtl4/tIIB Xzo5tmgwQS6x+OnQkBfjzAELwVd9T+RUsHJ24snALlIgF/WU02I4quTszqGk5s+9jACfjZQ/DBV FRgKYSpC5y3fmu0QV+xWQWz+cuGu2IqAzloI037pR5+FYUG7ezxkv2f3kF/Q17bUosMtBFxvdGK 47I5cvLbY9n9WTkOTkpJ0Xa5aJzEduQUHjQ+gXNcPFMo/QFYw3WNBu+JjiHNPCsuMcXsj3ko9ce Vt2Rv5BGzDMwHn8eM8YX0cz/RvBPvKPU8IH91T9HLRC9/cQzQYY55Z8NEv90AFvgM6P8uXoy97/ ul3vh1xifhSDt7LQ6c0QgqrooBfeb3lVCtboCBEKDVnl0KGr1jA00= X-Received: by 2002:a05:600c:3006:b0:487:1108:48b8 with SMTP id 5b1f17b1804b1-488fb739f86mr308742125e9.2.1777204505424; Sun, 26 Apr 2026 04:55:05 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.55.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:55:04 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:17 +0300 Subject: [PATCH v6 4/6] amba/serial: amba-pl011: Bring back zx29 UART support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-4-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2247; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=OFELZprfvGMngJiiwTNQcz/opzneDKzuYgSzdRQRbGE=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+u/+qpPe53sgA9IGeQxT3jxCmJ4DtmSGvC U4HoXZLR8CJAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiLafQ//TFrg6fVGLeFet0jt8eE0RSlbETUAuhe Y1d5O5EVEObWTh1jBB8JPUT3ZMr9helrlQYwToexGoTQfpSWSh2y7cnmeHUOVgNmMTRNJAuUso/ jrrVPSqGIcUqtxoBdnsvzSa90oTzQCm+JRHjGgcYAwdrCEnArO99rOMFt/YyqLEqpntXHuUBOsw EeCZQY1SXWS+c4h8fhIiiW6XE6XxCUD6hNk6MYFY3KFG9h5qTNy7pSt9aYtUFSnrmi8m3ZI5fAH jDuPQIyemgkEdEydS4g9gPCvjhQUcfRBC9hi/2ElHHk5D+QzEM2Jiqe3XgxYz4LmIZrTgDwB+89 LLZeTrUrEwPHURqLvlqh1ryypR05fts94XcfLO6co10aJDrcPRtNciW+QtWkmQDAACHymkqkTFQ I22mqAZvxR9UwaIHeMv3ryypBbv/LFD/tUGxrP791tf/3gigCKCS1wh2niV0tTGg5Z5ZJ+tZFkg OMy+aMsWJJhXSQPKTGTvi2sREMqhUdyxim/FnY/x5Eobdm8l7n54KB7aywTfJW7iZjzEYnPjeGl XNH7zOkcpMKILqKmG/lpaiJunscs002+uMD0iNosFvzrKvY0nsvrzm1d3PPV6hj4t1LVlqLrfUK uzQ3rgUYa4CP/LgeP+54Wk0INmumy1gDlodGjGyuw2lAbqwrnNZM= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This is based on code removed in commit 89d4f98ae90d ("ARM: remove zte zx platform"). I did not bring back the zx29-uart .compatible as the arm,primecell-periphid does the job. Reviewed-by: Linus Walleij Signed-off-by: Stefan D=C3=B6singer --- Changes since v4: Use ZTE's JEDEC ID instead of 0xfe for the DT-Provided AMBA ID. --- drivers/tty/serial/amba-pl011.c | 42 +++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 42 insertions(+) diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl01= 1.c index 7f17d288c807..f24cc403d9e0 100644 --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c @@ -216,6 +216,38 @@ static struct vendor_data vendor_st =3D { .get_fifosize =3D get_fifosize_st, }; =20 +static const u16 pl011_zte_offsets[REG_ARRAY_SIZE] =3D { + [REG_DR] =3D ZX_UART011_DR, + [REG_FR] =3D ZX_UART011_FR, + [REG_LCRH_RX] =3D ZX_UART011_LCRH, + [REG_LCRH_TX] =3D ZX_UART011_LCRH, + [REG_IBRD] =3D ZX_UART011_IBRD, + [REG_FBRD] =3D ZX_UART011_FBRD, + [REG_CR] =3D ZX_UART011_CR, + [REG_IFLS] =3D ZX_UART011_IFLS, + [REG_IMSC] =3D ZX_UART011_IMSC, + [REG_RIS] =3D ZX_UART011_RIS, + [REG_MIS] =3D ZX_UART011_MIS, + [REG_ICR] =3D ZX_UART011_ICR, + [REG_DMACR] =3D ZX_UART011_DMACR, +}; + +static unsigned int get_fifosize_zte(struct amba_device *dev) +{ + return 16; +} + +static struct vendor_data vendor_zte =3D { + .reg_offset =3D pl011_zte_offsets, + .access_32b =3D true, + .ifls =3D UART011_IFLS_RX4_8 | UART011_IFLS_TX4_8, + .fr_busy =3D ZX_UART01x_FR_BUSY, + .fr_dsr =3D ZX_UART01x_FR_DSR, + .fr_cts =3D ZX_UART01x_FR_CTS, + .fr_ri =3D ZX_UART011_FR_RI, + .get_fifosize =3D get_fifosize_zte, +}; + /* Deals with DMA transactions */ =20 struct pl011_dmabuf { @@ -3081,6 +3113,16 @@ static const struct amba_id pl011_ids[] =3D { .mask =3D 0x00ffffff, .data =3D &vendor_st, }, + { + /* This is an invented ID. The actual hardware that contains + * these ZTE UARTs (zx29 boards) has no AMBA PIDs stored. ZTE + * JEDEC ID (ignoring banks) and the "011" part number as used + * by ARM. + */ + .id =3D 0x0008c011, + .mask =3D 0x000fffff, + .data =3D &vendor_zte, + }, { 0, 0 }, }; =20 --=20 2.53.0 From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1AF1F35F8C9 for ; Sun, 26 Apr 2026 11:55:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204513; cv=none; b=fHg335LBTsk+gmXxhXv3Mh17j2L+CRwb+i8Y9cFcEgue8eaCjC3g2rOsLrz7Pk+5OjkLUpg/nEuZlpLtyz1Q2KU1QqeTARhikJWrqCLoq3YxtkPW1gsw/gxYuZaThu2cANlLz9tMWykEAtT8pnJI36BcXaTiUXJLuoGsU77ZbK0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204513; c=relaxed/simple; bh=7LiDLxjelI1MRSngPzWRBkqRNsscbkTyc8tG8Vfm5PA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=V12l6SV11ZJ8WUMyP5GzQzhz5sWpsAO46abz+g3ZEZiTaUhpgNI+S6lHf+tMGePDrz98labuiWvgXT+yWPftdwUUtGBu2ngnTdE3KB2AbI3KMHgyo4sFi7Ex1iff8lKwiQrcyB62gZ6SQiEARJkaAoSm6jhm8/ASQ01fpoOx6oE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=W7nUZABD; arc=none smtp.client-ip=209.85.128.43 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="W7nUZABD" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-488e1a8ac40so114452025e9.2 for ; Sun, 26 Apr 2026 04:55:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204510; x=1777809310; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=mK1m9udRxQHj0zYCLQVzg/V9Z3Gw4DlTQK/hyL0gOMA=; b=W7nUZABDQBhBMx4Z62a7+GdNWN0Ok01H96VuNnKll6dd2GS1eeHChky3wysVxnF6+H KgexJpIKbZyxkJyUamoPuqY4oSOcfNopyLGQRyugzu/kKVbyATxKdeuJ/9KM+NvZzxhg sKXTLf1TPXcEsLwKNCfz5MCLp0IN3ngCdimqZXfSKCC3xK976KCnOMxSS4zr+qZUE3Q+ ORfX6YmFeaYUOH644aFt+dmPI3fLKpBEgtvZ+VMXJLMlGlJqf4F6auOF6VxwN8wCITP+ uMx8t19OjHk1T9HVEQoZEplCb3YzIJMNxx98uQAiYjDMI1q56BUHy60Tc65QYjhSlZZN uo3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204510; x=1777809310; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=mK1m9udRxQHj0zYCLQVzg/V9Z3Gw4DlTQK/hyL0gOMA=; b=R1WXmW65lW5BxNaws705q3Ai1RqeA/6z1Sqn2A+5Qqt1HGAHww+o39GR/DqitWzXIG TrfLR7/xB3NTrmoV0MhDDFy7i+BoMgh8Id/VNOlJ7XSYDxFGlSXpxE3+/hNgJn1rvGgD t//8mY6tGIIY3zKedlgW2LVsCXJfaYxWeKZPvXu0IMlPSYHupXuo9K4LQRt7qb5iVvYJ B7W/xj5onLkhPc6ytyK30iq28V9KvvOEW2/xA0/zRv6uHoJabIKzOET3eg8J69Hq/SA7 RFqveXjHFybbOLg+42YbSWxAyrQGX4kUhNkZbCHcgEQYJdmrT8POHEWM3wajEHd3xagi vMLA== X-Forwarded-Encrypted: i=1; AFNElJ8g9xqPCIGp3e1DJmeUX9Hw/s5ogVsItOlmhgoEWojTmXRDEd34Em9rkDAMlupq1OqaKfnZHOARhoGuarg=@vger.kernel.org X-Gm-Message-State: AOJu0YxmXYv7hW0Yi66aYtrBduZYqLc50xYxyb6HXpnY4LODHlsLeih2 cLcO7oV51l4MeFwfjQacNZ2E1BGrXbcOOR4asjWSBpFewKyRVEUiuvMN X-Gm-Gg: AeBDiesbIfOqAmRJjH/m4DJ8gi4k1r6G4nNItdhn/15WJkeUU5vVD1PdRrsN4bZ6cWT vDD/IVtuwRgyQ1srFG8Ls5oDWu8BA43VkQN4ytBeC2MgR9p8svU7K1Tjzcq97biPURjHyw6L1jg c4pAz2FrsJHc1lRagOFb3ZaogPV6G66ZHAzL+7tiZnUbhUm4LNJ/MGu3b5TmeAQZZr3as30u9F9 RoZm88wieJunJfyZXfpsdAzj9I7WUfWJnBPiu/Gjub+7gJTBfSFiaapYAu7z4qZf1K0Cvj1s/dA pxtnaltv2KU99ggTWWnVA+x0pA6OYDGwBekRiQTSysbBD6szhkisJ+MCQ7RspBIPaEc3YiycTqv 7nk3BMtld9QLtoM/wFOcAUd39mjCFn6XR+hsExWIkZnY5PmMeA9BbGxrU/JiF6wOtqNA1stq+GM NCjLWjR1Ja5XPI1IpK9m1KiIOKiU+d4ksi690dbCTk X-Received: by 2002:a05:600c:859a:b0:48a:53ea:13eb with SMTP id 5b1f17b1804b1-48a53ea15bdmr253731785e9.5.1777204510297; Sun, 26 Apr 2026 04:55:10 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.55.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:55:09 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:18 +0300 Subject: [PATCH v6 5/6] ARM: dts: zte: Add D-Link DWR-932M support Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-5-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=6135; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=7LiDLxjelI1MRSngPzWRBkqRNsscbkTyc8tG8Vfm5PA=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+nKYBbeora7Iw1jJsBhhrBdnEGMJVLLNgi Xxnlq1LNJqJAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiLBsg/+O2LB3GiEIlG1JYzfdE08ZV0GYD5wKhr cB8qmfTKMNwyrAw1yUAOwFk8JfmU62lcbQdxgTtkbaiZwJxqPwhMjjSMayynCsmJcLyQwknDS+z r9mXjmAFAkGLGG5J+zzT4i2JLUt4TLXwaSZlRr5j5ra1YsOI53UmwDGDul6OJO33CuEhZG8lHqd UrY2uASSJjNeOT/nV6JnDgaM4iyhDIsVwJwK6C33NFpvRK5lL2uQwdrv+0eDKTjz3uenF9JlCac 0xb/c2PCh3IZ+QpqLIDvQUwfYQ7qQS28ZWSkihoBvWpsAA7vQL0h+C1I31Fl6C2q5WnxUXWXGa7 ijc3gRpLTMYpGmvKT3lutAGO1CXJOAA5a1L9D0aU+Dk8f14fSziX01UbyMZXVAfAOAK4fl5Qguy TNoCaYd+QxpgAwqYa79gx1Zuc4iDgWL48Ry5WpHwUIn3yDfIilv/8ngmmV/ii339Q0NJJApHVUU XPlqPihFrc58y+hLNYwQyViTj2rWPwC5saGa35+f4jGIoDkCkS8QMarbNJl2QsLHtYsy+EYpxK5 HmHGupZEzxp2a+sUCZ7sPzIDqfHjlEFBWc2Ffyf2Edgpym92XhuxQlIxPgOqdnsAWjEsTVr4MY5 cm181MA+QxqYrU0wz0yjPr5sQeaAe1b4A1roCx+l53Tu6ik4gRiA= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This adds base DT definition for zx297520v3 and one board that consumes it. The stock kernel does not use the armv7 timer, but it seems to work fine. The board has other board-specific timers that would need a driver and I see no reason to bother with them since the arm standard timer works. The caveat is the non-standard GIC setup needed to handle the timer's level-low PPI. This is the responsibility of the boot loader and documented in Documentation/arch/arm/zte/zx297520v3.rst. Signed-off-by: Stefan D=C3=B6singer --- Changes in v6: Squash board + timer + uart patches into one v5: Prepend the SoC name in the device specific DTS filename. v4: Declare all uarts Remove the UART aliases for now. I can revisit this when I get my hands on a board that exposes two UARTs. --- MAINTAINERS | 1 + arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/zte/Makefile | 3 + arch/arm/boot/dts/zte/zx297520v3-dlink-dwr932m.dts | 22 +++++ arch/arm/boot/dts/zte/zx297520v3.dtsi | 103 +++++++++++++++++= ++++ 5 files changed, 130 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index e707176c2114..6f51ba1c5ada 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3775,6 +3775,7 @@ F: drivers/video/fbdev/wmt_ge_rops.* ARM/ZTE ZX29 SOC SUPPORT M: Stefan D=C3=B6singer F: Documentation/devicetree/bindings/arm/zte.yaml +F: arch/arm/boot/dts/zte/ F: arch/arm/mach-zte/ =20 ARM/ZYNQ ARCHITECTURE diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index efe38eb25301..28fba538d552 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -39,3 +39,4 @@ subdir-y +=3D unisoc subdir-y +=3D vt8500 subdir-y +=3D xen subdir-y +=3D xilinx +subdir-y +=3D zte diff --git a/arch/arm/boot/dts/zte/Makefile b/arch/arm/boot/dts/zte/Makefile new file mode 100644 index 000000000000..f052cfbd636c --- /dev/null +++ b/arch/arm/boot/dts/zte/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0-only +dtb-$(CONFIG_SOC_ZX297520V3) +=3D \ + zx297520v3-dlink-dwr932m.dtb diff --git a/arch/arm/boot/dts/zte/zx297520v3-dlink-dwr932m.dts b/arch/arm/= boot/dts/zte/zx297520v3-dlink-dwr932m.dts new file mode 100644 index 000000000000..1700f46aba86 --- /dev/null +++ b/arch/arm/boot/dts/zte/zx297520v3-dlink-dwr932m.dts @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright (c) 2026 Stefan D=C3=B6singer + */ + +/dts-v1/; + +#include "zx297520v3.dtsi" + +/ { + model =3D "D-Link DWR-932M"; + compatible =3D "dlink,dwr932m", "zte,zx297520v3"; + + memory@20000000 { + device_type =3D "memory"; + reg =3D <0x20000000 0x04000000>; + }; +}; + +&uart1 { + status =3D "okay"; +}; diff --git a/arch/arm/boot/dts/zte/zx297520v3.dtsi b/arch/arm/boot/dts/zte/= zx297520v3.dtsi new file mode 100644 index 000000000000..ca65797ed926 --- /dev/null +++ b/arch/arm/boot/dts/zte/zx297520v3.dtsi @@ -0,0 +1,103 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Copyright (c) 2026 Stefan D=C3=B6singer + */ + +#include + +/ { + #address-cells =3D <1>; + #size-cells =3D <1>; + + cpus { + #address-cells =3D <1>; + #size-cells =3D <0>; + + cpu@0 { + device_type =3D "cpu"; + compatible =3D "arm,cortex-a53"; + reg =3D <0>; + }; + }; + + /* Base bus clock and default for the UART. It will be replaced once a cl= ock driver has + * been added. + */ + uartclk: uartclk: uartclk-26000000 { + #clock-cells =3D <0>; + compatible =3D "fixed-clock"; + clock-frequency =3D <26000000>; + }; + + timer { + compatible =3D "arm,armv7-timer"; + interrupts =3D , + , + , + ; + clock-frequency =3D <26000000>; + interrupt-parent =3D <&gic>; + /* I don't think uboot sets CNTVOFF and the stock kernel doesn't use the + * arm timer at all. Since this is a single CPU system I don't think it + * really matters that the offset is random though. + */ + arm,cpu-registers-not-fw-configured; + }; + + soc { + #address-cells =3D <1>; + #size-cells =3D <1>; + compatible =3D "simple-bus"; + interrupt-parent =3D <&gic>; + ranges; + + /* The GIC has a non-standard way of configuring ints between level-low/= level + * high or rising edge/falling edge at 0xf2202070 and onwards. See AP_IN= T_MODE_BASE + * and AP_PPI_MODE_REG in the ZTE kernel, although the offsets in the ke= rnel source + * seem wrong. + * + * Everything defaults to active-high/rising edge, but the timer is acti= ve-low. We + * currently rely on the boot loader to change timer IRQs to active-low = for us for + * now. + */ + gic: interrupt-controller@f2000000 { + compatible =3D "arm,gic-v3"; + interrupt-controller; + #interrupt-cells =3D <3>; + #address-cells =3D <1>; + #size-cells =3D <1>; + reg =3D <0xf2000000 0x10000>, + <0xf2040000 0x20000>; + }; + + uart0: serial@131000 { + compatible =3D "arm,primecell"; + arm,primecell-periphid =3D <0x0018c011>; + reg =3D <0x00131000 0x1000>; + interrupts =3D ; + clocks =3D <&uartclk>, <&uartclk>; + clock-names =3D "uartclk", "apb_pclk"; + status =3D "disabled"; + }; + + uart1: serial@1408000 { + compatible =3D "arm,pl011", "arm,primecell"; + arm,primecell-periphid =3D <0x0018c011>; + reg =3D <0x01408000 0x1000>; + interrupts =3D ; + clocks =3D <&uartclk>, <&uartclk>; + clock-names =3D "uartclk", "apb_pclk"; + status =3D "disabled"; + }; + + uart2: serial@140d000 { + compatible =3D "arm,primecell"; + arm,primecell-periphid =3D <0x0018c011>; + reg =3D <0x0140d000 0x1000>; + interrupts =3D ; + clocks =3D <&uartclk>, <&uartclk>; + clock-names =3D "uartclk", "apb_pclk"; + status =3D "disabled"; + }; + }; +}; --=20 2.53.0 From nobody Fri Jun 19 08:59:21 2026 Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DADAE35F5FE for ; Sun, 26 Apr 2026 11:55:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.47 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204518; cv=none; b=UpW+7u0qP982l8xfto/sejiBUKTvMNyyZsBQPmJJB8CNA9kNUmyBS6bokgIhpZRBVGZvD0vb5AHa7gFf9WlZydxzDA/spROeazk2yRltMUwnr2/xCsPgzpzVFsJABofKdK88RI4B+u1oG75Yg81giEofFLajRWP5+1prWj4ln20= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777204518; c=relaxed/simple; bh=Raw3nnG6txGxRT2tuucK4Vyk8RJ3aJNJodqKknAtnWs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=i2j1mZvIO7Rl3D4J1esZ3vtp7e/e7vTABg0i1KF1LulqPh44vbiOvM86IGDxhv5Ruc3IeqKAhPN03UH6O797UcCVCVXDl44BixF3fQIUanCGCJzxHPVBwz004yYoTNmQa26xs7dhVbuDnbDKx6ElrnFXvjXKmGrNUBybMH5d4uY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=bRfZudTL; arc=none smtp.client-ip=209.85.128.47 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="bRfZudTL" Received: by mail-wm1-f47.google.com with SMTP id 5b1f17b1804b1-48a3e9862f0so48204995e9.1 for ; Sun, 26 Apr 2026 04:55:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1777204515; x=1777809315; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=6fKUgxBCx0mNxBEJyRtsEMEQ1iRhj1qvL3+7BPzmL+U=; b=bRfZudTLbNCAqhkAFb6JHn+ijFsSo2YeAn0zTIrXFjHWVfh4XB+y40Npnint0ijgKp YA/Myk5kMWHRTqS8+QKJ9DPFZsNVk6TuCTIxZd82xgjaV1yIJDYRsqPuG5zxy0Ay/hut GqLVwEtr+Ucn2W4k3SNVxDBeNP7+/tYNdRRnkzy5SKatjO1cAxI63HbRU6PADSMhQqdq RrcV4ne7b0fP+mNAF/lIKdiq0z3uYAkc3mH5YY9mzgvKHUTUnfnqt0r0XzxZXD9ikZrv 75wAHohNqwsCxPv8MQ4bkEKb6D6E1NYCdlApLLHic1E0hsc2OJdUv5v1/jSknGwgkxmc AZIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777204515; x=1777809315; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=6fKUgxBCx0mNxBEJyRtsEMEQ1iRhj1qvL3+7BPzmL+U=; b=iOAlpU4tCX4aLijIjLyTL/DEIz1Py55M4fB/dRFl5UfpA6wehAzxo6M8scrw4py1gd dr660u9NcIgIplW6+mqjaEUGQnhhi/UaHDtd7yV074g048halzcjuHA/XKqzG5lI+zib MY/pvFZQVzba5xIZjI0xs28BZF4iGJCIj2j5MBEquwM+u+057toncqZgyURZtKpZLLA3 WCjCdlhfLEEOoYf6lsNE+0XNivLxisk08dVrCkPpRIRCRCV0c0Cjq2xsw+L9pnpHF/MR /ISxeSX13E8co2p+jECiW+PDG0HM+80H2pEEKmGdY85hg19FDBSf7N7ARhlOSvlx+1Ye mfaA== X-Forwarded-Encrypted: i=1; AFNElJ/HNBdhgB1/vvky/5J4nr1607Mu9UedtLsktjVMIV2KeLmk/w9tf718Mt8ggtEFwqlciI8V4X3JpLbYeFM=@vger.kernel.org X-Gm-Message-State: AOJu0YyoX3hhnZen0VbMWgsL+c7c7IVMV61d+tS7SaEdgrBZPNkM/sLT bYl2CPLsU+saaa1YfVysUZ1adjFJJOJHhkMeVrAF9+HLY4Be9e49mhXp X-Gm-Gg: AeBDiesNuTfFgn9UU4w+m5eY8+JvFaswYRqw3keqldpCnbQkGrTf1KJhu5+k3ZIXYA+ olWn+e5eUH8YLD/URjR+oaTTlXliD7gySJOumZqBUka4uxGlY5jWVKYnehsNQoToZLxIEUFhOBq 99SRRuNew+PQ35idFuZF6fDfhNKSXayXXol96XbK/Td8Br9rljFBL3guZBmPZvOCJt6Y+/WTQO3 HEpsV7FX+TF2MN6bPVt+Hz7+B+3Z/qLuVozulR/2gltxyrBf92J33iJx7Y6vfKgrNHV5QuApbrC Qf8++BbpbX5riAJg1P46m1PBlePlerYJEmMvkT4rYjeOHnmwHbgfgod5yfFQ0HA21Xjj1bADeEq lRR7i4PLh4UudrN4LUuwD5COQfjvuMVjJyX1ZceGd87taoH2U6zWA6D7wt9bvU306jUVSW/2Pj2 A6mVVzMBuYTKZ1eJGOSuDb9ysgSYwUVu1UQOB2AgJv X-Received: by 2002:a05:600c:4e0c:b0:489:1d7a:4537 with SMTP id 5b1f17b1804b1-4891d7a463emr404448875e9.3.1777204515083; Sun, 26 Apr 2026 04:55:15 -0700 (PDT) Received: from [192.168.0.2] ([197.250.51.46]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4891df9e50asm424018575e9.0.2026.04.26.04.55.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Apr 2026 04:55:14 -0700 (PDT) From: =?utf-8?q?Stefan_D=C3=B6singer?= Date: Sun, 26 Apr 2026 14:54:19 +0300 Subject: [PATCH v6 6/6] ARM: zte: defconfig: Add a zx29 defconfig file Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260426-send-v6-6-d49efa72bb09@gmail.com> References: <20260426-send-v6-0-d49efa72bb09@gmail.com> In-Reply-To: <20260426-send-v6-0-d49efa72bb09@gmail.com> To: Jonathan Corbet , Shuah Khan , Russell King , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Arnd Bergmann , Krzysztof Kozlowski , Alexandre Belloni , Linus Walleij , Drew Fustini , Greg Kroah-Hartman , Jiri Slaby Cc: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, soc@lists.linux.dev, linux-serial@vger.kernel.org, =?utf-8?q?Stefan_D=C3=B6singer?= X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2584; i=stefandoesinger@gmail.com; h=from:subject:message-id; bh=Raw3nnG6txGxRT2tuucK4Vyk8RJ3aJNJodqKknAtnWs=; b=owEBiQJ2/ZANAwAIAT0TvMhUTxoiAcsmYgBp7fz+M0hRXrrwNqabGR+NCrUNYSmRCVX6ergHK bOFKsauVLmJAk8EAAEIADkWIQRDFvS2qgVbJ5UyXWw9E7zIVE8aIgUCae38/hsUgAAAAAAEAA5t YW51MiwyLjUrMS4xMiwyLDIACgkQPRO8yFRPGiLHPRAAi3pLix3iMnS3uZh2OrPDjkqvSa7mpTD d0PlJS2eCaRq9cokUGhS6Ct/U+NxZNcLbWVfp9VhwWMG0L4fc1xHeMqN28GxYygjPnhPQorJtWH QYhzxkSK2E74XF9olD/dZmF59i6peH3tgPqOmaI5DAKE6UmaEHvEcCjC5ewGEhd9Fm1Ow8keCnA sUvYYa1mYYqn/NP9a62cXctazUXReIWpOeN00iYLSs8fPjT1AggopF09nG/5IsbHAFtCl8NLxNz Ukel+ORqYPSl+09l/e9cHgJ9lRA5RN4yHfBIMdjmDrJfqZClc7LiV/V4mNAb56ababFgYVzEgGN mSmWhRmdk8Buw2ekEJV0uGMnT4keHgkC30GB5Wsk9F9C2WYmPO21swBsdv+c8NDJ0q1to1NxaEM FBkyiMIwd688VTYeJ+QIxwdx/BWiabY15haY3eRiLbGDXfOU8zqdX5JV5peoOzrpuV8xrPa/Fz7 LOsTe+shwhxDYPvILQS42pdSGBYYq2Sr3oE0GOCqdv4Ow7XwTTtoTIqsq6rrLg3X0STvE218nM1 L9HIbyzoTcbXU9GkTe0j1pt8BNQrNMpNJ54eGBs5d0UFaM0ky6rlly3OwRJroyXBZaEKshyZfeS Q7kuOKJAY2Ro9vDrKc3r12tUQ2Az33/A+D4SmPrEdQbUiPev+77s= X-Developer-Key: i=stefandoesinger@gmail.com; a=openpgp; fpr=4F9C2C8728019633893EBBB98CB81F9A72BBA155 This enables existing drivers for hardware that is present on this board even if it is not present in the DT yet. Signed-off-by: Stefan D=C3=B6singer --- Changes: v5 to v6: Regenerate the file with make savedefconfig. An open question: What's the appropriate name? zx29_defconfig? zte_defconfig? zte_zx29_defconfig? There's e.g. stm32_defconfig without an extra mention of STMicro in the name. --- MAINTAINERS | 1 + arch/arm/configs/zx29_defconfig | 54 +++++++++++++++++++++++++++++++++++++= ++++ 2 files changed, 55 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 6f51ba1c5ada..5dc52b84cc09 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -3776,6 +3776,7 @@ ARM/ZTE ZX29 SOC SUPPORT M: Stefan D=C3=B6singer F: Documentation/devicetree/bindings/arm/zte.yaml F: arch/arm/boot/dts/zte/ +F: arch/arm/configs/zx29_defconfig F: arch/arm/mach-zte/ =20 ARM/ZYNQ ARCHITECTURE diff --git a/arch/arm/configs/zx29_defconfig b/arch/arm/configs/zx29_defcon= fig new file mode 100644 index 000000000000..54fa62ed56e7 --- /dev/null +++ b/arch/arm/configs/zx29_defconfig @@ -0,0 +1,54 @@ +CONFIG_SYSVIPC=3Dy +CONFIG_BLK_DEV_INITRD=3Dy +# CONFIG_RD_BZIP2 is not set +# CONFIG_RD_LZMA is not set +# CONFIG_RD_XZ is not set +# CONFIG_RD_LZ4 is not set +CONFIG_EXPERT=3Dy +CONFIG_KALLSYMS_ALL=3Dy +CONFIG_ARCH_ZTE=3Dy +CONFIG_ARM_PSCI=3Dy +CONFIG_ARM_APPENDED_DTB=3Dy +CONFIG_CMDLINE=3D"console=3DttyAMA0 earlyprintk root=3D/dev/ram rw" +CONFIG_CPU_FREQ=3Dy +CONFIG_CPUFREQ_DT_PLATDEV=3Dy +# CONFIG_SUSPEND is not set +CONFIG_PM=3Dy +CONFIG_BINFMT_FLAT=3Dy +CONFIG_NET=3Dy +CONFIG_PACKET=3Dy +CONFIG_UNIX=3Dy +CONFIG_INET=3Dy +# CONFIG_STANDALONE is not set +# CONFIG_PREVENT_FIRMWARE_BUILD is not set +# CONFIG_ALLOW_DEV_COREDUMP is not set +CONFIG_MTD=3Dy +CONFIG_MTD_BLOCK=3Dy +CONFIG_BLK_DEV_RAM=3Dy +CONFIG_BLK_DEV_RAM_COUNT=3D4 +CONFIG_SRAM=3Dy +CONFIG_KEYBOARD_GPIO_POLLED=3Dy +# CONFIG_INPUT_MOUSE is not set +CONFIG_VT_HW_CONSOLE_BINDING=3Dy +CONFIG_SERIAL_AMBA_PL011=3Dy +CONFIG_SERIAL_AMBA_PL011_CONSOLE=3Dy +CONFIG_SERIAL_DEV_BUS=3Dy +# CONFIG_HW_RANDOM is not set +CONFIG_PINCTRL=3Dy +CONFIG_GPIOLIB=3Dy +CONFIG_GPIO_GENERIC_PLATFORM=3Dy +CONFIG_POWER_RESET=3Dy +CONFIG_MFD_SYSCON=3Dy +CONFIG_REGULATOR=3Dy +CONFIG_REGULATOR_FIXED_VOLTAGE=3Dy +# CONFIG_HID is not set +CONFIG_USB_DWC2=3Dy +CONFIG_USB_GADGET=3Dy +CONFIG_MMC=3Dy +CONFIG_MMC_DW=3Dy +CONFIG_RESET_CONTROLLER=3Dy +CONFIG_RESET_SIMPLE=3Dy +CONFIG_JFFS2_FS=3Dy +CONFIG_PRINTK_TIME=3Dy +CONFIG_DEBUG_LL=3Dy +CONFIG_EARLY_PRINTK=3Dy --=20 2.53.0