Hi there,
Yes, SO you can drive SPI TFT displays from the XIAO nRF54L15 using Zephyr’s display subsystem. The recommended approach is to use the MIPI-DBI SPI wrapper (zephyr,mipi-dbi-spi) together with the appropriate display controller driver. I’m trying the round display.(GC9A01)
For most Adafruit Mini PiTFT boards, the controller is ST7789, so the Zephyr compatible should be:
sitronix,st7789v
The SPI interface mode should be 4-wire DBI, which Zephyr supports through:
MIPI_DBI_MODE_SPI_4WIRE
Below is a minimal devicetree overlay example that should work as a starting point. 
Devicetree overlay
boards/xiao_nrf54l15_nrf54l15_cpuapp.overlay
#include <zephyr/dt-bindings/mipi_dbi/mipi_dbi.h>
/ {
chosen {
zephyr,display = &st7789;
};
};
&spi20 {
status = "okay";
cs-gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
mipi_dbi: mipi_dbi@0 {
compatible = "zephyr,mipi-dbi-spi";
#address-cells = <1>;
#size-cells = <0>;
spi-dev = <&spi20>;
dc-gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio0 4 GPIO_ACTIVE_LOW>;
write-only;
st7789: st7789v@0 {
compatible = "sitronix,st7789v";
reg = <0>;
mipi-max-frequency = <32000000>;
mipi-mode = <MIPI_DBI_MODE_SPI_4WIRE>;
width = <240>;
height = <240>;
pixel-format = <PANEL_PIXEL_FORMAT_RGB_565>;
status = "okay";
};
};
};
prj.conf
CONFIG_SPI=y
CONFIG_GPIO=y
CONFIG_DISPLAY=y
CONFIG_MIPI_DBI=y
CONFIG_LOG=y
CONFIG_MAIN_STACK_SIZE=2048
Minimal test application Smoke Test 
#include <zephyr/device.h>
#include <zephyr/drivers/display.h>
#include <zephyr/kernel.h>
#include <string.h>
int main(void)
{
const struct device *display = DEVICE_DT_GET(DT_CHOSEN(zephyr_display));
if (!device_is_ready(display)) {
return 0;
}
struct display_capabilities caps;
display_get_capabilities(display, &caps);
static uint16_t line[240];
memset(line, 0xF800, sizeof(line)); // red in RGB565
struct display_buffer_descriptor desc = {
.buf_size = sizeof(line),
.width = 240,
.height = 1,
.pitch = 240,
};
display_blanking_off(display);
for (int y = 0; y < 240; y++) {
display_write(display, 0, y, &desc, line);
}
while (1) {
k_sleep(K_SECONDS(1));
}
}
Notes
• The exact width/height and offsets depend on the PiTFT variant.
• The 1.14" PiTFT is typically 135×240 and requires offsets.
• The 1.3" PiTFT is usually 240×240.
Also note that some Nordic community examples mention SPI00 vs SPI20 on the nRF54L15 — SPI20 tends to be the more flexible SPI instance for general peripherals.
The working pattern for SPI TFT displays on XIAO nRF54L15 + NCS is:
zephyr,mipi-dbi-spi
↓
panel driver (sitronix,st7789v / st7735r / gc9x01x)
↓
MIPI_DBI_MODE_SPI_4WIRE
Once the panel is working, you can easily layer LVGL on top for UI development.
HTH
GL
PJ 
for the Seeed Studio Round Display for XIAO, there is a much cleaner path than trying to hand-roll raw SPI first.
The Round Display is already supported in Zephyr as the seeed_xiao_round_display shield, and the display side uses the GC9A01/GC9X01X family over SPI, with the touch controller on I2C. That means on the XIAO nRF54L15 the most natural first step is to build a Zephyr sample with the shield enabled and let the display stack do the heavy lifting
west build -p always -b xiao_nrf54l15/nrf54l15/cpuapp samples/modules/lvgl/demos -- \
-DSHIELD=seeed_xiao_round_display \
-DCONFIG_LV_Z_DEMO_WIDGETS=y
