From nobody Tue Jun 16 02:37:47 2026 Received: from courrier.aliel.fr (courrier.aliel.fr [65.21.61.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D518033F37A; Wed, 15 Apr 2026 11:17:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=65.21.61.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251827; cv=none; b=FJ2XTq+N0xiC3WuF5zAJQd1wP2YVVoWUV771xX3M350dmlLYd2FJ/+o8ak5YHTUHT9a/xCrhaqCPosQVI2Vp/lMW1uO0BvnrAZGH57zSirZr0Q2hpPukTsMqH620GHzOir+ACC1Xe859/3BFdGFFbrnyFZkYLWGUAi6/FNg1siw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251827; c=relaxed/simple; bh=qMIfF/SxnQytgGkQqO94DbvHup+0cklo98SudTS8yPw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=rdieNHVFb72P+y+mbByMBsgbrDiO0kE7OqnVHSahGunzd5hLVtO4Ge+/gr7eltmumyEUfZgvZzT6cwlQtn31eNi78O+hi3ZRjFToZT7bgv/Z7Pnp1gNJSpo5UKmfp1dKwfLaY1Bl9IwnRfqDiQNQD8iw2syA/KmkOrhfvBJFXoc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr; spf=pass smtp.mailfrom=aliel.fr; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b=DZGOUubq; arc=none smtp.client-ip=65.21.61.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aliel.fr Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b="DZGOUubq" From: Ronald Claveau DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aliel.fr; s=courrier-s1; t=1776251823; bh=qMIfF/SxnQytgGkQqO94DbvHup+0cklo98SudTS8yPw=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=DZGOUubqY48BE5DE4NSGXuy0KjCm12IVJiUHeE23SfHRt5I5SASEERaeKpexL/2F5 lFtx4Zg7hS0fr5QxrkzJeSNHed/gkkqdO0frkjFFFuyV5vUkz2ygSkYwV0dKeBtMFw aXyLp4MDKSPqh+f5kavEZu1AjFGAxSayI3wRPOlc= Date: Wed, 15 Apr 2026 13:16:13 +0200 Subject: [PATCH 1/3] arm64: dts: amlogic: t7: Add uart_c pinctrl pins group 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: <20260415-add-bluetooth-t7-vim4-v1-1-0ba0746cc1d6@aliel.fr> References: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> In-Reply-To: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> To: Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ronald Claveau X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openssh-sha256; t=1776251821; l=985; i=linux-kernel-dev@aliel.fr; s=id_ed25519; h=from:subject:message-id; bh=qMIfF/SxnQytgGkQqO94DbvHup+0cklo98SudTS8yPw=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgMGec55oxeeisqykQiUedekMYyOnR9 BG9E/7rDWyqdNoAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QI9QChe9IBXcowqK82XGlhXqzELbPJqkbqYXP7mDt/LRbX+IQpkuZnKzzwOoIlVr9ZKHql+yzze FHe8ph4iHcQM= X-Developer-Key: i=linux-kernel-dev@aliel.fr; a=openssh; fpr=SHA256:kch4osYZ6A1BrPps5AUs6KnfdE2wm4ocMtyTc8TmZMs Add the pin multiplexing configuration for UART C (TX, RX, CTS, RTS) in the T7 SoC pinctrl node, required to route the UART C signals through the correct pads before enabling the controller. Signed-off-by: Ronald Claveau --- arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi b/arch/arm64/boot/= dts/amlogic/amlogic-t7.dtsi index 7fe72c94ed623..531931cc1437c 100644 --- a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi @@ -553,6 +553,18 @@ mux { bias-pull-up; }; }; + + uart_c_pins: uart_c { + mux { + groups =3D "uart_c_tx", + "uart_c_rx", + "uart_c_cts", + "uart_c_rts"; + bias-pull-up; + output-high; + function =3D "uart_c"; + }; + }; }; =20 gpio_intc: interrupt-controller@4080 { --=20 2.49.0 From nobody Tue Jun 16 02:37:47 2026 Received: from courrier.aliel.fr (courrier.aliel.fr [65.21.61.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8248E1DE4F1; Wed, 15 Apr 2026 11:17:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=65.21.61.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251828; cv=none; b=WNtVUNHDpMVNqRYB1v7pFVDB1u3a2cqYme4WzpAbDc58tsBaPPM77+8680U0CzA6Q0a5N4oKG6E7I4GmNh9K2fK+Y1+6tSFCsJYEqk0EfzKiKGw1iBWlfsVwr1mkHr54pBG+AEOHnlc/r82EE53aPIyQf7DGjTuvSE5z/nxJ1ZA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251828; c=relaxed/simple; bh=L3Q7zkw2FPx+B+NP3gRuCh4v3HV7G+1IeRCxJ9+Fo90=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ZcyhIN5sUiyPssxHO//4BtI+Rwpm2zCyQV5xSuDKlEPnygGkweqw0JwDB6PB5W6bD9NfQthakpQM1LaxhOOGm78C3I2pYoFWQje3YMlewcZBg6tynwXWBKl/KxYKxizeSh8CSWM5MWvhlkrEKBFW7hmI3qyQz/edjmxWg3gC9DY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr; spf=pass smtp.mailfrom=aliel.fr; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b=XH8leFYv; arc=none smtp.client-ip=65.21.61.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aliel.fr Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b="XH8leFYv" From: Ronald Claveau DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aliel.fr; s=courrier-s1; t=1776251823; bh=L3Q7zkw2FPx+B+NP3gRuCh4v3HV7G+1IeRCxJ9+Fo90=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=XH8leFYvQduC2e5BQTdD3s/kN4Yx8hNJH9qS4aenS5YRC1pDORLWUQiEX6Sb5JAYg LJ/Inn/WoUYRk48g9qfhvCEQKjyyDaVCEpCB/yhIojvxzuxX7V1mOJGyXItDOKWjE0 ShiETy+Fng0eYhXXRZmXDg0LJuH3AzipkpUAvyHI= Date: Wed, 15 Apr 2026 13:16:14 +0200 Subject: [PATCH 2/3] arm64: dts: amlogic: t7: Add UART controllers nodes 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: <20260415-add-bluetooth-t7-vim4-v1-2-0ba0746cc1d6@aliel.fr> References: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> In-Reply-To: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> To: Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ronald Claveau X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openssh-sha256; t=1776251821; l=3650; i=linux-kernel-dev@aliel.fr; s=id_ed25519; h=from:subject:message-id; bh=L3Q7zkw2FPx+B+NP3gRuCh4v3HV7G+1IeRCxJ9+Fo90=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgMGec55oxeeisqykQiUedekMYyOnR9 BG9E/7rDWyqdNoAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QNZFuzW9w43solsBUqQBQsol4CdNLpiKGi8QELKGmU1lzLkaCkIl4n0fwFlyQHw5mQj2kXGqrTl in7oOmgbvAQI= X-Developer-Key: i=linux-kernel-dev@aliel.fr; a=openssh; fpr=SHA256:kch4osYZ6A1BrPps5AUs6KnfdE2wm4ocMtyTc8TmZMs Add device tree nodes for UART B through F (serial@7a000 to serial@82000), completing the UART controller description for the T7 SoC. Each node includes the peripheral clock. While at it, move the uart_a node to its correct position in the bus address order (0x78000) to comply with the DT requirement that nodes be sorted by their reg address. Complete the uart_a node with its peripheral clock (CLKID_SYS_UART_A) and the associated clock-names, matching the vendor default clock assignment, consistent with the other UART nodes. Signed-off-by: Ronald Claveau --- arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi | 61 +++++++++++++++++++++++++= ---- 1 file changed, 54 insertions(+), 7 deletions(-) diff --git a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi b/arch/arm64/boot/= dts/amlogic/amlogic-t7.dtsi index 531931cc1437c..56b015cfbd6d1 100644 --- a/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7.dtsi @@ -577,13 +577,6 @@ gpio_intc: interrupt-controller@4080 { <10 11 12 13 14 15 16 17 18 19 20 21>; }; =20 - uart_a: serial@78000 { - compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; - reg =3D <0x0 0x78000 0x0 0x18>; - interrupts =3D ; - status =3D "disabled"; - }; - gp0: clock-controller@8080 { compatible =3D "amlogic,t7-gp0-pll"; reg =3D <0x0 0x8080 0x0 0x20>; @@ -713,6 +706,60 @@ pwm_ao_cd: pwm@60000 { status =3D "disabled"; }; =20 + uart_a: serial@78000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x78000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_A>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + + uart_b: serial@7a000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x7a000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_B>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + + uart_c: serial@7c000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x7c000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_C>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + + uart_d: serial@7e000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x7e000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_D>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + + uart_e: serial@80000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x80000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_E>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + + uart_f: serial@82000 { + compatible =3D "amlogic,t7-uart", "amlogic,meson-s4-uart"; + reg =3D <0x0 0x82000 0x0 0x18>; + interrupts =3D ; + clocks =3D <&xtal>, <&clkc_periphs CLKID_SYS_UART_F>, <&xtal>; + clock-names =3D "xtal", "pclk", "baud"; + status =3D "disabled"; + }; + sd_emmc_a: mmc@88000 { compatible =3D "amlogic,t7-mmc", "amlogic,meson-axg-mmc"; reg =3D <0x0 0x88000 0x0 0x800>; --=20 2.49.0 From nobody Tue Jun 16 02:37:47 2026 Received: from courrier.aliel.fr (courrier.aliel.fr [65.21.61.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E715E30ACF6; Wed, 15 Apr 2026 11:17:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=65.21.61.41 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251828; cv=none; b=Isn36pbaunsUkuiqIDfWIOWk6N7ujyfm1jXx4V89cFaB+CTr4zebpgb1nTO6WuOu0h27gT4RmxtgnwFb9AUvdJoOTGpj11VVBTIVIoe+Ejp9R7knsA9E+E7/KNXsglxGj9YUM0p+byLBVOE+f/Kx/kJcgRfq958ptRyyPpPdJ/c= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776251828; c=relaxed/simple; bh=DPF5oLsd+wIQDlajlz7/DrzffaotuK1YeTV2FHM1dXA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ATig5Z9c2BPRU9SbS8Ye1PbVmm38CUCAsDv3v9QtcmR0OJaE3K03Pa4Dr8C8aRjOMpTOZjCxESAuhZ8NFHBzvNR9/DW5778CBZ42Y1hy50J7hTZ4hZbFytV9HKPsJ0ELCpDblEM6/J5NmNLAGyIQ5IyE1vARG+hdrGeS9R4GN7k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr; spf=pass smtp.mailfrom=aliel.fr; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b=GsP1+XjD; arc=none smtp.client-ip=65.21.61.41 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=aliel.fr Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=aliel.fr Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=aliel.fr header.i=@aliel.fr header.b="GsP1+XjD" From: Ronald Claveau DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=aliel.fr; s=courrier-s1; t=1776251824; bh=DPF5oLsd+wIQDlajlz7/DrzffaotuK1YeTV2FHM1dXA=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=GsP1+XjDJww6lCTw794owyPZ3ca2t0rhzZVINkruIhQCdzjo9P34XbJ6t9GUn5N1a B4Faeqx4cce/dJM93jcwc677jxKpnMJgHQyfbENIQOEvNLwuOwzHcWXakv44JRkThE Qnmlhgzw/PWESlL+qe6CtXlpQUrqsh67ZiPPDikU= Date: Wed, 15 Apr 2026 13:16:15 +0200 Subject: [PATCH 3/3] arm64: dts: amlogic: t7: khadas-vim4: Enable Bluetooth 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: <20260415-add-bluetooth-t7-vim4-v1-3-0ba0746cc1d6@aliel.fr> References: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> In-Reply-To: <20260415-add-bluetooth-t7-vim4-v1-0-0ba0746cc1d6@aliel.fr> To: Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ronald Claveau X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openssh-sha256; t=1776251821; l=1497; i=linux-kernel-dev@aliel.fr; s=id_ed25519; h=from:subject:message-id; bh=DPF5oLsd+wIQDlajlz7/DrzffaotuK1YeTV2FHM1dXA=; b=U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAgMGec55oxeeisqykQiUedekMYyOnR9 BG9E/7rDWyqdNoAAAAGcGF0YXR0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5AAAA QHMu5b9QHNxDA3A4bpPrtdDYFK+0IKIqopw2UudLPschxzYakCFITJJZ2h6EMjD4t4JxAa5DZ7a jCTwma54TBwA= X-Developer-Key: i=linux-kernel-dev@aliel.fr; a=openssh; fpr=SHA256:kch4osYZ6A1BrPps5AUs6KnfdE2wm4ocMtyTc8TmZMs Enable UART C on the Khadas VIM4 board and attach the BCM43438 compatible Bluetooth controller to it. The node configures the RTS/CTS hardware flow control, the associated pinmux, the power supplies (vddao_3v3 and vddao_1v8), the 32 kHz LPO clock shared with the wifi32k fixed clock, and the GPIO lines used for host wakeup, device wakeup and shutdown. Signed-off-by: Ronald Claveau --- .../dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts | 19 +++++++++++++++= ++++ 1 file changed, 19 insertions(+) diff --git a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts = b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts index 69d6118ba57e7..16f648908090f 100644 --- a/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts +++ b/arch/arm64/boot/dts/amlogic/amlogic-t7-a311d2-khadas-vim4.dts @@ -253,3 +253,22 @@ &uart_a { clocks =3D <&xtal>, <&xtal>, <&xtal>; clock-names =3D "xtal", "pclk", "baud"; }; + +&uart_c { + status =3D "okay"; + pinctrl-0 =3D <&uart_c_pins>; + pinctrl-names =3D "default"; + uart-has-rtscts; + + bluetooth { + compatible =3D "brcm,bcm43438-bt"; + shutdown-gpios =3D <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>; + host-wakeup-gpios =3D <&gpio GPIOX_18 GPIO_ACTIVE_HIGH>; + device-wakeup-gpios =3D <&gpio GPIOX_19 GPIO_ACTIVE_HIGH>; + max-speed =3D <3000000>; + clocks =3D <&wifi32k>; + clock-names =3D "lpo"; + vbat-supply =3D <&vddao_3v3>; + vddio-supply =3D <&vddao_1v8>; + }; +}; --=20 2.49.0