From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.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 D58A13074AD for ; Wed, 15 Oct 2025 19:44:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760557471; cv=none; b=mYeBbQPwPZwqymBe+bF3YpiqIUYHUbCsrbCIPYzzZloH9PgfdNjIXCvBCPBqxUpla4HG+attZyPpnVUQZjKpV6rkX5kyB/OlgDzbvApT/+eHoXwALVPMMxI3GYi9X2bY1QwkUeOMJJLCUbI0wWNajEmTffJ5tdoVQYd5fs5vpuQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760557471; c=relaxed/simple; bh=Xnc7RjrZ4OGk/UBEP9EFdudtf64VaimhGq5tlLx1TRc=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=j7p0PqZJF0Sm04jKcZVp1SplKRbLdWlmJZ3VogvfPr47uo43HAsHO3wHS8kr00YXWQ7UCI3P4g1TSVdzEVkgb8pfTT1rX7PpNeRnzekGYUwadtekmy/xjfIAhl63n+61LHIeQ0SNlb8QktVzjKwSL6EwNp4gaYnhRn9SDjgjs+c= 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=BA3MG+xd; arc=none smtp.client-ip=209.85.128.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="BA3MG+xd" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-46e509368caso13064095e9.1 for ; Wed, 15 Oct 2025 12:44:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760557467; x=1761162267; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=AKLczhxWEH5mT9ooXIyTNOx6pr2p4ogmhmAMoWgMHyk=; b=BA3MG+xd2h9X8nF3hvE7x9pD/kPw6PdEFKf5Fyg1vQNIFplHizgz/bZQ9OSxbJTfAR OHdCAgP45SpyMl/WDlELXBmy5vWrztwdA45GE0ewwRpaQrbqDHtRG4Evswz3HcWgPAWR N1PggYcn0kb0Rnfvh84HhUFu9bzayMrTRNpdtSxOzYvmcmtsnFPPP3atF/7po0RHU2hl xDFvGQQySDXz86WzdEWmllzDbDZFJNvhlV16Cw6zfVP0jOrVGLUw7S8mI2iqDk/cJlFT fEoXxtipnkahO3/9YRjpnV0ufyYnQrEiJsENt/OTjf1CZ+PH3OeExlW0SZLjGMujZaBL sKxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760557467; x=1761162267; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=AKLczhxWEH5mT9ooXIyTNOx6pr2p4ogmhmAMoWgMHyk=; b=QL9plgzzH1eSTJTKpcdE0w1xI5006y+DTAgttLG6X0ESJx4nGcNgBW2wsk9CteWnG5 94K2bqZYmqupAACCtkrymJNmKAL18hn9BiRWCwi1tYbL3U4TJWVGgKp4pbSeCK9S160G GceL81WAR5yz28RSr87UcVc7XzQC5B33xxt9F/WTEGS4SWmKUfxqueAY5CiPHFIHyGmZ zWmfdBPcTjG9nrFt3uLiWa8kfIdj1jLJ2BZy0BR7CypyC3newof2THONPajaUwMkRO+f NStGimo6aJfqfLURMefEhupV5lTd9kjcies/l0qJFyHB9SiWnqlkX6NQYlw2nZqwXsjj 4QFA== X-Forwarded-Encrypted: i=1; AJvYcCWFn6iL4su4af0LsAI6EDM11B88lo9vHqFX7CjiD5wqxcajbifx1j3LtvaKExpa4uQBK8T5LbJsWqtP@vger.kernel.org X-Gm-Message-State: AOJu0YxAPqkJpY45iOY0thVWmLY95yzv9kqiD3s7y/96hYgaHTajY6VT ECkcGswRD5VyIN0nTGcWQTpnc6jL+ZvFKLEjd5YPqJsOliE4+QbcSI5e X-Gm-Gg: ASbGncuetcWRIe2a8s/rLsXO6iU7vC4tSZudiIOI8DSVRO6dtV+kOkx8I2h8hboImZx 2MPpDPxYtT9GL0wF3EGPaPzJNbS5Bwg0XGTLdR2ImeLp0T3htVdMytD3WgyNHUbT8TGc/ImADgJ aKt7E8rpVP9gK/aXQUDREu1ep6hlFWa8Ak5G+y3L6pNO6p5FS/VHj3G6wQVu/h6ybGUgFhsPr+s 5saWwQHOGYiI5kgOWhoMYx98tFizAbvFi5ZUniCTuO//a5Lmg9Dk/40F6sNltEUPJYjFwKl+XEG jHn9V5SaE1hA/Bx2jXYdiTylz4huhvV4q/INYW1zWlCjuMNUgKoRwh12vOgkNmBGONunFp0Pvv3 wXCOqctx5+Ft9BW379SH0oBxs9Uvf+thBRUJMemcLyK+OPDbrGraiedAaZqJAVkZrVl/y2VeN9F gG1g+aEHzWlS6vasrdgPpl0zoD63LnculqEwUk2d8hEV8E18T6ZCun9oSyggo= X-Google-Smtp-Source: AGHT+IHGGThgaRMwvpO2Mux+qxuMEnu4UFU41e/Adrds/5VWzkGZBuF/36N4b4hi4sb2JXOlZbNcyQ== X-Received: by 2002:a05:600c:1f06:b0:46e:31a1:c07d with SMTP id 5b1f17b1804b1-46fa9a8ea16mr125735955e9.2.1760557466915; Wed, 15 Oct 2025 12:44:26 -0700 (PDT) Received: from d25728c254ff.v.cablecom.net (84-74-0-139.dclient.hispeed.ch. [84.74.0.139]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-426ce5825aasm30291626f8f.14.2025.10.15.12.44.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 15 Oct 2025 12:44:26 -0700 (PDT) From: Lothar Rubusch To: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, dinguyen@kernel.org, martin.petersen@oracle.com, pabeni@redhat.com, rostedt@goodmis.org, bhelgaas@google.com, l.rubusch@gmail.com Cc: arnd@arndb.de, matthew.gerlach@altera.com, tien.fong.chee@altera.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 00/11] Add Enclustra Arria10 and Cyclone5 SoMs Date: Wed, 15 Oct 2025 19:44:05 +0000 Message-Id: <20251015194416.33502-1-l.rubusch@gmail.com> X-Mailer: git-send-email 2.39.5 Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This series was already presented in November 2024. https://lkml.org/lkml/2024/11/16/198 Due to the ongoing complex situation with Intel's maintainership, the series likely did not progress further at the time. In early 2025, Tien Fong Chee (in CC) informed me that Altera is expected to resume maintainership in late 2025. I was referred to Matthew Gerlach (also CC'd), who, as I understand, is taking over at least part of the Intel/Altera-related responsibilities. At this year’s OSS in Amsterdam, I had an encouraging discussion with Arnd Bergmann (CC’d), which motivated me to continue pursuing this patch series. Hence, a slightly reworded update goes now again to the mailing lists and will drive the binding check bot crazy. While not all Altera bindings may be fully resolved yet, this series should not introduce any new issues. I’m submitting it based on prior acknowledgments and will wait a few weeks to see if a maintainer responds. If it remains orphaned, I’ll follow up with you, Arnd, as previously mentioned - this is just a heads-up for now. I hope this approach is acceptable. Please let me know otherwise. Thank you for all the support in this so far. Add device-tree support for the following SoMs: - Mercury SA1 (cyclone5) - Mercury+ SA2 (cyclone5) - Mercury+ AA1 (arria10) Further add device-tree support for the corresponding carrier boards: - Mercury+ PE1 - Mercury+ PE3 - Mercury+ ST1 Finally, provide generic support for combinations of the above with one of the boot-modes - SD - eMMC - QSPI All of the above elements can be freely combined, with the combinations specified in the provided .dts files. This renders the existing .dts file unnecessary. Any additional minor fixes to the dtbs_checks are applied separately. This approach is also necessary for integrating with the corresponding bootloader using dts/upstream, which is one of the reasons for the .dtsi split. Note: I used AI tools to help refine the wording of the commit messages. Signed-off-by: Lothar Rubusch --- v5 -> v6: - update to recent kernel version - add Arnd Bergman in CC (refered to OSS / Amsterdam) - add Matthew Gerlach in CC - add chee tien fong in CC - change phy-mode "rgmii" to "rgmii-id", due to binding checks, similar boards in that context and the allowing internal delay (id) or strict no internal delay, seems to make no difference here - removal of compatibility "spansion,s25fl512s" due to deprecation of older vendor properties for "jedec,spi-nor" - change commit header wording "combinations" to "variants" v4 -> v5: - separate generic socfpga dt fixes from this patch set. The focus of this patch set is the dts/dtsi files and related bindings, not additional intel/socfpga refactoring v3 -> v4: - add separate patch to match "snps,dwmac" compatible in corresponding driver, required by binding check - replace non-standard node names in .dtsi files by node names recommended by the device tree standard v0.4 v2 -> v3: - dropped the patch to add the socfpga clock bindings: Documentation/devicetree/bindings/clock/altr,socfpga-a10.yaml reason: refactoring the "altr,socfpga-" TXT files to .yaml files is a different story involving several other files, thus can be part of a future patch series, not related to the current upstreaming the Enclustra DTS support, so dropped - adjust comments on boot mode selection - adjust titles to several bindings patches v1 -> v2: - split bindings and DT adjustments/additions - add several fixes to the socfpga.dtsi and socfpga_arria10.dtsi where bindings did not match - extend existing bindings by properties and nods from arria10 setup - implement the clock binding altr,socfpga-a10.yaml based on existing text file, rudimentary datasheet study and requirements of the particular DT setup --- Lothar Rubusch (11): ARM: dts: socfpga: add Enclustra boot-mode dtsi ARM: dts: socfpga: add Enclustra base-board dtsi ARM: dts: socfpga: add Enclustra Mercury SA1 dt-bindings: altera: add Enclustra Mercury SA1 ARM: dts: socfpga: add Enclustra Mercury+ SA2 dt-bindings: altera: add binding for Mercury+ SA2 ARM: dts: socfpga: add Mercury AA1 variants dt-bindings: altera: add Mercury AA1 variants ARM: dts: socfpga: removal of generic PE1 dts dt-bindings: altera: removal of generic PE1 dts ARM: dts: socfpga: add Enclustra SoM dts files .../devicetree/bindings/arm/altera.yaml | 24 ++- arch/arm/boot/dts/intel/socfpga/Makefile | 25 ++- .../socfpga/socfpga_arria10_mercury_aa1.dtsi | 143 ++++++++++++++--- .../socfpga_arria10_mercury_aa1_pe1_emmc.dts | 16 ++ .../socfpga_arria10_mercury_aa1_pe1_qspi.dts | 16 ++ .../socfpga_arria10_mercury_aa1_pe1_sdmmc.dts | 16 ++ .../socfpga_arria10_mercury_aa1_pe3_emmc.dts | 16 ++ .../socfpga_arria10_mercury_aa1_pe3_qspi.dts | 16 ++ .../socfpga_arria10_mercury_aa1_pe3_sdmmc.dts | 16 ++ .../socfpga_arria10_mercury_aa1_st1_emmc.dts | 16 ++ .../socfpga_arria10_mercury_aa1_st1_qspi.dts | 16 ++ .../socfpga_arria10_mercury_aa1_st1_sdmmc.dts | 16 ++ .../socfpga/socfpga_arria10_mercury_pe1.dts | 55 ------- .../socfpga/socfpga_cyclone5_mercury_sa1.dtsi | 143 +++++++++++++++++ .../socfpga_cyclone5_mercury_sa1_pe1_emmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa1_pe1_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa1_pe1_sdmmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa1_pe3_emmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa1_pe3_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa1_pe3_sdmmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa1_st1_emmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa1_st1_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa1_st1_sdmmc.dts | 16 ++ .../socfpga/socfpga_cyclone5_mercury_sa2.dtsi | 146 ++++++++++++++++++ .../socfpga_cyclone5_mercury_sa2_pe1_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa2_pe1_sdmmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa2_pe3_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa2_pe3_sdmmc.dts | 16 ++ .../socfpga_cyclone5_mercury_sa2_st1_qspi.dts | 16 ++ ...socfpga_cyclone5_mercury_sa2_st1_sdmmc.dts | 16 ++ ...cfpga_enclustra_mercury_bootmode_emmc.dtsi | 12 ++ ...cfpga_enclustra_mercury_bootmode_qspi.dtsi | 8 + ...fpga_enclustra_mercury_bootmode_sdmmc.dtsi | 8 + .../socfpga_enclustra_mercury_pe1.dtsi | 33 ++++ .../socfpga_enclustra_mercury_pe3.dtsi | 55 +++++++ .../socfpga_enclustra_mercury_st1.dtsi | 15 ++ 36 files changed, 972 insertions(+), 79 deletions(-) create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe1_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe1_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe3_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe3_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_pe3_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_st1_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_st1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_aa1_st1_sdmmc.dts delete mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_arria10_mercury_pe1.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe1_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe1_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe3_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe3_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_pe3_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_st1_emmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_st1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa1_st1_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_pe1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_pe1_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_pe3_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_pe3_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_st1_qspi.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_cyclone5_mercury_sa2_st1_sdmmc.dts create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_bootmode_emmc.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_bootmode_qspi.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_bootmode_sdmmc.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_pe1.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_pe3.dtsi create mode 100644 arch/arm/boot/dts/intel/socfpga/socfpga_enclustra_mercury_st1.dtsi base-commit: 4b17a60d1e1c2d9d2ccbd58642f6f4ac2fa364ba -- 2.39.5