From patchwork Tue Jul 23 19:55:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiko Stuebner X-Patchwork-Id: 13740334 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0BAF1C3DA63 for ; Tue, 23 Jul 2024 19:58:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Reply-To:Content-Type: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References:List-Owner; bh=7O5A3/xZlUnuJ+eD6LBI0ulnlQ/25vAleOACuou3LeA=; b=vIk85WuMXxD+isHXPlmEko6Art RHTnPt/lxD8zSIcyg/Le5xtBbpCZKZhYxZ4F0jYcU6ujhCH4QmBPAQxgOs7wp/SWaIeDA2bXqJubV 7kw6GaR3nZrQWp9TDuu7zFAo49KG5RS3iPgl9jkOT+AWzWhB3dMUw0+KKamO6nU3/SBCKvXH9J2L1 UH6U2x1EHfsIB+cyNRK3+TWHe7P0wcZp4B5c0mKrEhbOCpX0BbGZteZXV6cABWo8oEJPv/HNx/rkp Dfpt+LEZxHPTKBzxZIaF+o+5epfL+sHh2s21AGuOtE+g0nM8zAZB+Jj10H+/K14XUR/wiK+OzrwDM 4FXIjnFA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sWLe3-0000000DObv-0Qgy; Tue, 23 Jul 2024 19:57:59 +0000 Received: from gloria.sntech.de ([185.11.138.130]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sWLbu-0000000DNcH-192P; Tue, 23 Jul 2024 19:55:49 +0000 Received: from i5e860cd3.versanet.de ([94.134.12.211] helo=phil.lan) by gloria.sntech.de with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sWLbr-0005iD-Ph; Tue, 23 Jul 2024 21:55:43 +0200 From: Heiko Stuebner To: heiko@sntech.de Cc: ukleinek@debian.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 00/14] Expand available features on Qnap TS433 Date: Tue, 23 Jul 2024 21:55:24 +0200 Message-Id: <20240723195538.1133436-1-heiko@sntech.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240723_125546_352713_C3F5B21B X-CRM114-Status: GOOD ( 18.19 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Thanks to the nicely supported rk3568, the hardest part for adding things, is to pull things from the vendor-kernel and translating them to mainline standards. This series allows the TS433 to use all 4 bays [0], wiggle some LEDs and access devices connected to all 3 usb ports. The device runs stable now and might be usable for actual usage. There is still a todo-list though: - the ethernet mac address for the realtek chip seems correct, but the gmac0 interface currently uses a wrong one - i2cdetect reports devices on i2c-1 on addresses 54,55,56,57 model_Q0B20_Q0B30_10_10.conf from the original rescue image labels them VPD_MB = I2C:0x54, VPD_BP = I2C:0x56 the meaning currently being unknown. Some eeprom maybe? - The regulator tree is slightly dubious. Everthing seems to follow rk3568 reference designs, but especially the regulator labeled vcc3v3_sd seems to supply some PCIe functionality. So I guess the device's schematics will look quite different than the regulators added to the vendor devicetree. - Quite a bit of functionality is provided by the MCU connected to uart0. According to the model.conf there should be fan-control, a number of additional LEDs (status,locate,usb?) Thanks to Qnap engineers adding an easily accessible header for maskrom mode on the board, replacing the bootloader is also quite a breeze. A branch on top of today's u-boot master branch can be found on [1]. I'll submit that code to u-boot once I can cherry-pick the dts patches. changes in v3: - fix the two regulator node-names, I noticed after sending v2 - add Uwe's Tested-by tags - fold in some of Uwe's suggestions: - remove some phandles - more comments to explain what is connected where - handle the two RTCs in the system, though not by hacking around to disable the pmic-one, instead just make sure the real one stays the first rtc changes in v2: - add patches for tsadc, gpio-keys, cpu-supply, pmic, gpu and io-domains [0] I only have two drives right now, but I tested both the internal sata connector as well as the PCIe connected sata controller in different combinations. [1] https://github.com/mmind/u-boot-rockchip/tree/dev/qnap-ts433/v2024.07 Heiko Stuebner (14): arm64: dts: rockchip: add PCIe supply regulator to Qnap-TS433 arm64: dts: rockchip: enable second PCIe controller on the Qnap-TS433 arm64: dts: rockchip: enable uart0 on Qnap-TS433 arm64: dts: rockchip: enable usb ports on Qnap-TS433 arm64: dts: rockchip: add stdout path on Qnap-TS433 arm64: dts: rockchip: enable sata1+2 on Qnap-TS433 arm64: dts: rockchip: add board-aliases for Qnap-TS433 arm64: dts: rockchip: add hdd leds to Qnap-TS433 arm64: dts: rockchip: enable the tsadc on the Qnap-TS433 arm64: dts: rockchip: add gpio-keys to Qnap-TS433 arm64: dts: rockchip: define cpu-supply on the Qnap-TS433 arm64: dts: rockchip: add missing pmic information on Qnap-TS433 arm64: dts: rockchip: enable gpu on Qnap-TS433 arm64: dts: rockchip: add 2 pmu_io_domain supplies for Qnap-TS433 .../boot/dts/rockchip/rk3568-qnap-ts433.dts | 546 +++++++++++++++++- 1 file changed, 543 insertions(+), 3 deletions(-)