From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.remote-ip=209.85.214.175 ARC-Seal: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; cv=none; t=1793350166; b=drZgiEKaBX7v8AKN9YWyVusYNCDx38FcEKNjy/qxq51G/AFGaE2P4uDjjxMt0Y2vCA/d LlTtqRxjXl7JmGtMqVcvaEaoBMkRXEOJMdqsUWOI77YeLHYNeKByvwxDyot6a+cqSODVP 5FfdT44OZ1bhChEyGADciedZlX/e3f+X19Xtmc00u9jg1n+GYbUqZznv7JHvXzEP0oDnR HTe5gobeIGYo7MOc0mGO+sIvt49KjdGXto4yKfk8rIhDuSs42VjRN99EjAcmHbC7setnH ozll+A+XJ9xPP4XlIWatIOLSoPqqGlT5T4nDrf2NO8eoF22pivFusa/s7gM76+2i+iA== ARC-Message-Signature: i=1; d=subspace.kernel.org; s=arc20261015; a=rsa-sha256; c=relaxed/relaxed; t=1793350166; h=DMARC-Filter:Received:DKIM-Signature:X-Google-DKIM-Signature: X-Forwarded-Encrypted:X-Gm-Message-State:X-Gm-Gg:X-Received:Received: From:To:Cc:Subject:Date:Message-ID:X-Mailer:In-Reply-To:References: MIME-Version:Content-Transfer-Encoding; bh=XNsgYn8BBEugZlmjItsRbJU0MW5cK4djQ6SvuONHRL0=; b=jCFb/g/ecBWFcWDWQjfGOGG59reHtorX14X+6tBkxFKj2+/yheJf2n13KkUbnh8Iypg7 X78NdT+0jRrOtTXnFHELqZxgpj1ppgFkBPJQ1zJfFpzQ/CBhhEjj9Y5TfF6TNJgphkJLg sFub45Wf9jxLYBdY7XGXc9T+RC8EHF2zL2v3XfjJ3Dp/Am36aR2nc/bYHcT4dnpa+BBJD iKTZ+zMIIEaaaLZYOsf/hSEmeCE3wt34URYK8m4OjSuZbT1A1L3PYmwhYMdy1OnH/ADpD mBcw7F4oFkFwGC9vhSajOrOvKw7K0kdlKE1ZJ/+2VNTs0QUyBUtsDATDVAdD/IShZ4w== ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=Lue5kzH8; arc=none smtp.remote-ip=209.85.214.175 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D9668606A335 for ; Fri, 30 Oct 2026 08:49:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.2 smtp.subspace.kernel.org D9668606A335 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, unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256 header.s=20260707 header.b=Lue5kzH8 Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-2d01548ac96so1398335ad.3 for ; Fri, 30 Oct 2026 01:49:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20260707; t=1793350165; x=1793954965; 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:content-type; bh=XNsgYn8BBEugZlmjItsRbJU0MW5cK4djQ6SvuONHRL0=; b=Lue5kzH8cfBk6W5QN7fcPRVJCJIVQuAl7BZTs6EVtlwzZPrP2RLUxpwPELzcnMya4K YRajTOfHU0Ls9aiIOxXDIINBnvmHWx+Wx+TA/oZSxRGfgxNbBVQ0EhsdGstwjbapVrJ2 Ot/e1TwpsrwFZLQ4MXttqByYb3twmI1/CcD9MxJkytQt/w3evOgPKd59bs2diBzvPuXC Ju0jO7cAcwBdoKrwh5eVQrNVIHpLP6wn96+AN35BRosRXZN85f6eucc/X+ERZ9uDVFZD kdhSJ2UdZuukkpSKBn4hNYJJot7WED5SWty/sU8HL8+PELcXMdQ+G0IWwBRtt2XNKl// NnPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1793350165; x=1793954965; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=XNsgYn8BBEugZlmjItsRbJU0MW5cK4djQ6SvuONHRL0=; b=dg4vcomcUGS8+fbNghNy6QlSPoLf7MKi3zHUvSqL99Clr+P9HQ5lrDpUAO2MqdSwW/ fBqqY29O9/PDdJS0rBz/+xNs48vlNA9l6MaQ5DoH1uIjLAojlXjloTkimzgo4IfDhcKC vep14WBdA/0xCXy2e1UsOloZXr2QmiI9axckvyqfT313rTkjDt++YETX3Lq1aA1Vneej TAu0wZcOA4Hf++j9isLlK/HJVjVlt7gp1Hu1K0pmLYtR7SAsoOPh7Sjjh6zVbqc0agDY 6rvShLHCrjfmqmEb5SEy/PUPvD6oqdhL/4kG6VXG/3l45osKtshBhDpt01WWQ7KQDqqH r27g== X-Forwarded-Encrypted: i=1; AKwUvBxCptZcTmXbRRQHik+ptHtCOZq7Dna6jeTAki59KFxTMkwAUxTgor0HLPukMfYq7pVpVTcSkYjrM4qA@vger.kernel.org X-Gm-Message-State: AFq9FYI6O+QsSY5Vm5FwnkHP7HmQjtrv9CjvsKIyvDxI0ayYOaAVKv9Q tExwQfyb1ErP/TvDvaGHQIcSnrf8DxQ0PERUxDrnBUbjLCBEpssOYFy2 X-Gm-Gg: AYBFou0eQ6v0a2SDc2Ad8FW3ZKobb2s2qIw1hE0kzJ/HvJgGt9rE4m1mOWcNvv9E0nb yTcJUZWEPjaphRv8c38g3LNi1L7tGjB35D+oZGhEiO8Aj8MvIhJZ3LfEFFvE09brTPYHUhUXM54 Om/3O0pB1aDwUe9r5vVl471una5RyE4R4ZrU2MF0cuoOLSY3z/ZPE0SsDfpPDx5SJwLmrbM5Q9w 6neqWgVrMY0xDOObOU3sIwbLsm9mQm1c1rqT8VdpmHxmnwy3n7FjaLICpkHNaLOosTML3dnSJ/C SgQDTF9pC6I0joNMgBjfRNoShuteTjVjrO2FYvv8CJMB5ir51jsw8LFmXhWfyeSb/JCerK3n25V BIyYDOu+0Ta8M5foH+3srL2J+kQgymZzfOvnRMYkduzRiJoj51RFayFa3ZEt7E6QTbu28mdKY5d YXXjeQVhoQYHZzhZYwSACmB7YCHg1riKsqErhf75FXxrQxwFFECQjdwBXYMBoibNrB6T0BW4LsK G+oA7Rjs7u67EdU6Z8QWdHyebJHJ+ZO3vWYJ9r0OLkJQDTR7U/ESG1mJnVeXf6ExqdIqvAsyiJO CF9Yg1eGXiwgS9DCwh4spIU= X-Received: by 2002:a17:90b:2f4f:b0:3a0:c162:51af with SMTP id 98e67ed59e1d1-3ae89291df0mr2095146a91.0.1793350165073; Fri, 30 Oct 2026 01:49:25 -0700 (PDT) Received: from marchy ([211.24.73.58]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3ae84542a13sm3223575a91.5.2026.10.30.01.49.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 30 Oct 2026 01:49:24 -0700 (PDT) From: Adam Azuddin To: robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, neil.armstrong@linaro.org, maarten.lankhorst@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de Cc: jesszhan0024@gmail.com, airlied@gmail.com, simona@ffwll.ch, andersson@kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, azuddinadam@gmail.com Subject: [PATCH v5 2/2] drm/tiny: Add RAiO RA8875 display controller driver Date: Fri, 30 Oct 2026 16:37:36 +0800 Message-ID: <20261030083737.47188-3-azuddinadam@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261030083737.47188-1-azuddinadam@gmail.com> References: <20261030083737.47188-1-azuddinadam@gmail.com> X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Add a DRM tiny driver for the RAiO RA8875 SPI-connected TFT display controller. The driver supports display resolutions up to 800x480 and uses the GEM shmem helper for buffer management. Assisted-by: LLM Signed-off-by: Adam Azuddin --- MAINTAINERS | 6 + drivers/gpu/drm/tiny/Kconfig | 13 + drivers/gpu/drm/tiny/Makefile | 1 + drivers/gpu/drm/tiny/ra8875.c | 719 ++++++++++++++++++++++++++++++++++ 4 files changed, 739 insertions(+) create mode 100644 drivers/gpu/drm/tiny/ra8875.c diff --git a/MAINTAINERS b/MAINTAINERS index 89ea35a35c68..84d99be03f64 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8450,6 +8450,12 @@ T: git https://gitlab.freedesktop.org/drm/misc/kernel.git F: drivers/gpu/drm/qxl/ F: include/uapi/drm/qxl_drm.h +DRM DRIVER FOR RAIO RA8875 PANELS +M: Adam Azuddin +S: Maintained +F: Documentation/devicetree/bindings/display/panel/raio,ra8875.yaml +F: drivers/gpu/drm/tiny/ra8875.c + DRM DRIVER FOR RAYDIUM RM67191 PANELS M: Robert Chiras S: Maintained diff --git a/drivers/gpu/drm/tiny/Kconfig b/drivers/gpu/drm/tiny/Kconfig index f0e72d4b6a47..2f1c49e31dd6 100644 --- a/drivers/gpu/drm/tiny/Kconfig +++ b/drivers/gpu/drm/tiny/Kconfig @@ -98,6 +98,19 @@ config DRM_PIXPAPER If M is selected, the module will be built as pixpaper.ko. +config DRM_RA8875 + tristate "DRM support for RA8875 display panels" + depends on DRM && SPI && OF + select DRM_CLIENT_SELECTION + select DRM_KMS_HELPER + select DRM_GEM_SHMEM_HELPER + select VIDEOMODE_HELPERS + help + DRM driver for the following RAiO RA8875 based LCD panels: + * East Rising 5.00" TFT LCD (ER-TFTM050-3) + + If M is selected the module will be called ra8875. + config TINYDRM_HX8357D tristate "DRM support for HX8357D display panels" depends on DRM && SPI diff --git a/drivers/gpu/drm/tiny/Makefile b/drivers/gpu/drm/tiny/Makefile index 48d30bf6152f..ed4602097fbb 100644 --- a/drivers/gpu/drm/tiny/Makefile +++ b/drivers/gpu/drm/tiny/Makefile @@ -14,4 +14,5 @@ obj-$(CONFIG_TINYDRM_ILI9341) += ili9341.o obj-$(CONFIG_TINYDRM_ILI9486) += ili9486.o obj-$(CONFIG_TINYDRM_MI0283QT) += mi0283qt.o obj-$(CONFIG_TINYDRM_REPAPER) += repaper.o +obj-$(CONFIG_DRM_RA8875) += ra8875.o obj-$(CONFIG_TINYDRM_SHARP_MEMORY) += sharp-memory.o diff --git a/drivers/gpu/drm/tiny/ra8875.c b/drivers/gpu/drm/tiny/ra8875.c new file mode 100644 index 000000000000..937bb7fdbd91 --- /dev/null +++ b/drivers/gpu/drm/tiny/ra8875.c @@ -0,0 +1,719 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * DRM driver for RAiO ra8875 controller + * + * Copyright 2026 Adam Azuddin + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include