From nobody Fri Dec 19 18:46:31 2025 Received: from mail-io1-f46.google.com (mail-io1-f46.google.com [209.85.166.46]) (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 4FA60280331 for ; Mon, 13 Oct 2025 12:33:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.166.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760358801; cv=none; b=Aok99fBVaFI/uPeCKFgDTMiTLPir8HE5YyRvg8FzzZU+BhhK2kxv0+3zgYv98gi7zDJ5StydKopKjkndgKuYn6Ik7BPIrO+5FgzySHOvUBSFg7xVC3KsZE5S8DWvNuI2HoL3rh4OUdzWP27jHLAUcuUNGE5YLWMwi/vkR3ksKfI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760358801; c=relaxed/simple; bh=IBn6ZhODzxUpc3P0+zT+3Gw/37gC8OpKQaPr/A9Z7Tc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=gfP4VdlNGApb9ArDX84/gGZrQWuN5AQuKgHYeN/op+KIlC+VPhI1SSjh2XFlhtgV42XfCvnjqPIbP+94A2nV3w3KnvN7+Ix+kGCxxYRYm9XzVSn7NFjzy00Csn4nBCRn9ycXlbRPzip3BT1Ehsz3hpj6apGTL770YkfLdearbWc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com; spf=pass smtp.mailfrom=riscstar.com; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b=f8lC+wLG; arc=none smtp.client-ip=209.85.166.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=riscstar.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=riscstar.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=riscstar-com.20230601.gappssmtp.com header.i=@riscstar-com.20230601.gappssmtp.com header.b="f8lC+wLG" Received: by mail-io1-f46.google.com with SMTP id ca18e2360f4ac-930cfdfabb3so225560639f.1 for ; Mon, 13 Oct 2025 05:33:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=riscstar-com.20230601.gappssmtp.com; s=20230601; t=1760358798; x=1760963598; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lH1v0rpYCArgbrLYKpreuIoN+Gm6oJddlVx2jUGumJY=; b=f8lC+wLGoiE5naZkiuFEVK6zihypg8DRtgb38k07rlv68Btnx2FHw6M4vsghlFaf41 9AxCNoKIgXZOIZQkYjG/gHrEPm7ChUPGHZa5gBBN7qWnk6J9kGsglO2Va3BONZad9hXG +7ISKE8I9mz/MPeUdGJfPiTa+fd7RXJDmiDRUvS3190l4RgM9saYPDbeFwUZmYNwqUJi 9DCopdIEi3Ofe38FGRFfX6YbJJslK23K8maa4sT/TwBmSHh/WwsS0fXAlG/2/z7R7eHp yLoYPj0zleb7xnpe38jlgup/3bIWVaXAhyVkDVqyTO/2HKgsBa1GmWbEl9X/kjwVhTzU pIJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760358798; x=1760963598; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lH1v0rpYCArgbrLYKpreuIoN+Gm6oJddlVx2jUGumJY=; b=a9MM5jhnUxEWNeUEBioyhptqYy1w2fhfxPRJ6SM3uQtNF+MYSJImZ0GVFN8yBvqmQm 6OceKzRhqqGEmZKr/O8P7PrwAPz3GN7xWSA7QLWKczZGu0WQijhNYKAdlo/R7A84h4tt HCluEVnNYRxcKYFiv57h07k4+pANpRoMlsTeWUOhrALSZO2u7OJ+qHAnGWYkR3+W0xaI v4pfsUPMOz3veR7HYK/6K3AU8q40N7lhb4v1uLVjHnWeZY3kuiBsOKZ9mAf7zMbRMImJ W7VCGTjvTXSChtCT3xh4kBJeMjRHTRmGwd2jC1sIEUDD7SAbq9rJkEiIL5MdLxPsu1MY HV9w== X-Forwarded-Encrypted: i=1; AJvYcCWkGj5x3ErEwhPMjy5YWLIOm5XZVxWzhAoADO0614RS4WdMeRqBmr693u97Ky9w62GPyzrPrGqP2ojoQlM=@vger.kernel.org X-Gm-Message-State: AOJu0YwLxo+Owihdu0GU13hRmOkLaHr076rsyvvVYA0991Civp6rw9Nv o2TbW7DasUqzUwFmw05v+2XY1JbhhV4EIsu64T6LVJmzj4a0A47ArdBA5/qEHA8Xu8U= X-Gm-Gg: ASbGnctBcziDEkGs2ZWU6x/Elnn0NX2lv/Rwvj+7GpudBtKB7FspwW3xz/TV/g4sEPE Gy33Vn2iqhpky6uJs41vk1D/1UQ+IqliawZM9rS/51NzrgovtJ1Nc/a5PK7zYi+qk9ttLp3HbbK w8oZvHYMyj7KBn6JM1W95/sTrAVciNpiOGZErSqVl6iLom6+UoQoIwswQ9q0soFnwEG5UkO4tt0 jgjx69ji1vxkZ0Xw64F+YBgD75bE1ZgMNqo7LuWIgUDbIbQXjiKcKzWqKW2OSmm4Tox3NcXpx5o RT7zxobGta/jicubSFvN89Z4ED2VSD3TPxMPlBexpOQ6RWsfp3DVQ6ndcDwPP1SSMMNy0/YhO79 yJIv6AV57VvFwJFt+Rb3wF6UjFs9m0x1Re/zQk07br5KR46GwlMqxTrtUTb64MEYLA88L8xw/w3 T4EIxkomaFzFj+4AUa7Tw= X-Google-Smtp-Source: AGHT+IHl+kdG7KX32xkfhYQaqxRv069N0+qssQtZvAYRJCWtVjC/Z307urfNlq0x0wqsqA/KnCtbeg== X-Received: by 2002:a05:6e02:1529:b0:42d:87c1:da2e with SMTP id e9e14a558f8ab-42f87497a42mr227386585ab.13.1760358798387; Mon, 13 Oct 2025 05:33:18 -0700 (PDT) Received: from zippy.localdomain (c-75-72-117-212.hsd1.mn.comcast.net. [75.72.117.212]) by smtp.gmail.com with ESMTPSA id e9e14a558f8ab-42f9037e344sm51529815ab.34.2025.10.13.05.33.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 13 Oct 2025 05:33:18 -0700 (PDT) From: Alex Elder To: broonie@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org Cc: dlan@gentoo.org, guodong@riscstar.com, pjw@kernel.org, palmer@dabbelt.com, aou@eecs.berkeley.edu, alex@ghiti.fr, p.zabel@pengutronix.de, devicetree@vger.kernel.org, linux-spi@vger.kernel.org, spacemit@lists.linux.dev, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH v5 3/3] riscv: dts: spacemit: define a SPI controller node Date: Mon, 13 Oct 2025 07:33:08 -0500 Message-ID: <20251013123309.2252042-4-elder@riscstar.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20251013123309.2252042-1-elder@riscstar.com> References: <20251013123309.2252042-1-elder@riscstar.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Define a node for the fourth SoC SPI controller (number 3) on the SpacemiT K1 SoC. Enable it on the Banana Pi BPI-F3 board, which exposes this feature via its GPIO block: GPIO PIN 19: MOSI GPIO PIN 21: MISO GPIO PIN 23: SCLK GPIO PIN 24: SS (inverted) Define pincontrol configurations for the pins as used on that board. (This was tested using a GigaDevice GD25Q64E SPI NOR chip.) Signed-off-by: Alex Elder Reviewed-by: Yixun Lan --- v5: - Added Yixun's Reviewed-by tag .../boot/dts/spacemit/k1-bananapi-f3.dts | 7 +++++++ arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi | 20 +++++++++++++++++++ arch/riscv/boot/dts/spacemit/k1.dtsi | 15 ++++++++++++++ 3 files changed, 42 insertions(+) diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/b= oot/dts/spacemit/k1-bananapi-f3.dts index 2aaaff77831e1..d9d865fbe320e 100644 --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts @@ -14,6 +14,7 @@ aliases { ethernet0 =3D ð0; ethernet1 =3D ð1; serial0 =3D &uart0; + spi3 =3D &spi3; }; =20 chosen { @@ -92,6 +93,12 @@ &pdma { status =3D "okay"; }; =20 +&spi3 { + pinctrl-0 =3D <&ssp3_0_cfg>; + pinctrl-names =3D "default"; + status =3D "okay"; +}; + &uart0 { pinctrl-names =3D "default"; pinctrl-0 =3D <&uart0_2_cfg>; diff --git a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi b/arch/riscv/boot= /dts/spacemit/k1-pinctrl.dtsi index aff19c86d5ff3..6ce56584ff473 100644 --- a/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1-pinctrl.dtsi @@ -76,4 +76,24 @@ pwm14-1-pins { drive-strength =3D <32>; }; }; + + ssp3_0_cfg: ssp3-0-cfg { + ssp3-0-pins { + pinmux =3D , /* SCLK */ + , /* MOSI */ + ; /* MISO */ + + bias-disable; + drive-strength =3D <19>; + power-source =3D <3300>; + }; + + ssp3-0-frm-pins { + pinmux =3D ; /* FRM (frame) */ + + bias-pull-up =3D <0>; + drive-strength =3D <19>; + power-source =3D <3300>; + }; + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k1.dtsi b/arch/riscv/boot/dts/spa= cemit/k1.dtsi index 6cdcd80a7c83b..ce55897d34fac 100644 --- a/arch/riscv/boot/dts/spacemit/k1.dtsi +++ b/arch/riscv/boot/dts/spacemit/k1.dtsi @@ -797,6 +797,21 @@ uart9: serial@d4017800 { status =3D "disabled"; }; =20 + spi3: spi@d401c000 { + compatible =3D "spacemit,k1-spi"; + reg =3D <0x0 0xd401c000 0x0 0x30>; + #address-cells =3D <1>; + #size-cells =3D <0>; + clocks =3D <&syscon_apbc CLK_SSP3>, + <&syscon_apbc CLK_SSP3_BUS>; + clock-names =3D "core", "bus"; + resets =3D <&syscon_apbc RESET_SSP3>; + interrupts =3D <55>; + dmas =3D <&pdma 20>, <&pdma 19>; + dma-names =3D "rx", "tx"; + status =3D "disabled"; + }; + /* sec_uart1: 0xf0612000, not available from Linux */ }; =20 --=20 2.48.1