From nobody Tue Dec 16 08:51:44 2025 Received: from mail-lf1-f45.google.com (mail-lf1-f45.google.com [209.85.167.45]) (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 15054313529 for ; Mon, 15 Dec 2025 09:47:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.45 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765792078; cv=none; b=SnIM14sG0wp9KTLkNz8B7bE+Zho5JFeBM8nd7tEglnmsjjR63AVW8/UOxv7hCCyY+V0+93szvPnFG/k+WuxUO94sYyOrVD5kvV7aNUVWK6qOoyeyctcx2YmcjiLXTJhUiWmb7IbQNEaeqvo9a3U/p0rMhxL4F+6w88TdkZwUQkQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765792078; c=relaxed/simple; bh=PtkQ8cxlVLxYbiwCQdi4LyZt11sZIEDQg+LL4QGkS6o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=ovbs6kpmEGhtHZwzqf54fREPNqq0domuNFU0CbtLk/WHSVzO1oOFNSA2rw/updqyJ0RKEIiLv4TzLM9pxzYyQVppHK3oGdd6ovZVu5ReXIvV0jQi2E9wMmKIHZceCvUSiarBs+Nv0w3z+KUWqE0e88PMRgMOm9ZlvbBF/Wfaiug= 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=Xv8GRMtx; arc=none smtp.client-ip=209.85.167.45 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="Xv8GRMtx" Received: by mail-lf1-f45.google.com with SMTP id 2adb3069b0e04-5958931c9c7so3970127e87.2 for ; Mon, 15 Dec 2025 01:47:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1765792072; x=1766396872; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=ULz9VU5o0MdwA1X8N8G/YXi2ODe2cqVFIpVphG493WM=; b=Xv8GRMtxob9W627pWJG9xVnJDZlKUkJ1ODJK3aK/hTDhBllRe9THcCEC9Db9RQuh5f nIv1VF7U0+YMxRHjgW2B1kejc5OSRb3fCFP3fmWpA6DuwGk89zwbDHutk9bPBn4HX9oA SdY6IM+HAVr2ZU+7ZIIn0ctW/62SytCfO/m3YxN8Qj5hYqB1sQ/Lw5GRisCK2Nhmw7ax xOpQZIhWQuxvCIOx47cMLw9AM/ks59LS7m+xrobYhpdL98mKGl+w4m4CfMTHy7BTVsYA uq95CsPwl9DeuECPGgxLRJWMusycuYK3JND5uTaPsR89Y75c/N7BzpoKu8xP/mzENadR pclw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765792072; x=1766396872; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ULz9VU5o0MdwA1X8N8G/YXi2ODe2cqVFIpVphG493WM=; b=QP18eGrP+KrH8JP6WgkcSOsN2cIj/DBoK5VzUuzEGsNcc/UMU+3DNmmQxNJsw9qTvK UyoV2jDkj67HNBY1YBspIR2Nl+c+OO89yL5bJnqrjYZuSOrPGKKXAiCEpS168y8+5OxQ G3mx3VeJUCFLhUt2mPqDAIz7yqQuWHp4s7zm8iF0w15VzmUWrw1Li52nfypZg9Q4PE/7 mW/loQwrHOTuQ3TuWIBzZm2aEU0AhpeYaW61BaoAiaoGdF91DaszDAWLFbbXbW6niVe2 Qiz7y2WCgxc8mWAbm1u1Q1e+IOVgnNvGJOTyxNewnfbuAVCSu4YoI0E7Z/TVg0CK87kK yx5Q== X-Forwarded-Encrypted: i=1; AJvYcCV3vSTT2EG9UV9VacB64AsAqk1fBh7o2gpM2+m/LcEE67E6M5ZoYiXfatAdj3yIfpgYNN/xGp19Kk04NsY=@vger.kernel.org X-Gm-Message-State: AOJu0Yxu3OOeGe/wjNAK2b9V553DYlI91z9nUilx/DITrBDvMr/ne/wi asabk3GHFjQjv9B10arz4NSX/NsldoPswj3HXiQC0UM8hHMBZVQAGRlC X-Gm-Gg: AY/fxX6LD0HYctXkkjisqDu96Ic62P4ZMkkwwAnL/Fz4UmIqIVvOgTyYJCx29Q9U5yK /gm3uTqo9iuOp39kLlSIQ/FaQ6n1z2MljW7qhp18tg/Qaqpy8A8bS/pLzANxCc6IHqKpMgeq34q BwEa60XtCVAFPaHTcdEfQbaUHOiaAtuyfrIzCZkPc27PWOKtDCwTdEIfrdRLQpNR6x1JwuVs4PW 7Kjp++rxZRMpMA45+skgtxYEeIXicpsbuBm34m5JDRko2v16ybPzA6Wi+EQytjLguPw8/aae36k F5GqZzIBC3vDguxzlAsMu8V5IUHd4jBRG3JCiNxEGedW2tVWUZdVtMvuHwIXlRZWIVF51xHIU20 Shlwe5ENZgQnqgjGGkG98ie3zofUVTURhpf/gDudP8NP3qiGz3v4raT7tzWkzJCEWODnqBPZzmo B7ow0bgYOSuI2E7K8rUUlTu3oBcu0ZKUJt8O9bIk8nxmTCxAoJRpeJStI/ X-Google-Smtp-Source: AGHT+IHVBfKudMwQ8CpT0/2/BWnUs8jO96xEJf5FMs860j4klQlF3yr4y/4wyPW8wd8V/MWasBAT3Q== X-Received: by 2002:a05:6512:230e:b0:577:3ccf:cdee with SMTP id 2adb3069b0e04-598faa8f00emr3486857e87.41.1765792071834; Mon, 15 Dec 2025 01:47:51 -0800 (PST) Received: from [192.168.1.168] (83-233-6-197.cust.bredband2.com. [83.233.6.197]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-598f2f37ae8sm5397546e87.15.2025.12.15.01.47.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Dec 2025 01:47:51 -0800 (PST) From: Marcus Folkesson Date: Mon, 15 Dec 2025 10:46:47 +0100 Subject: [PATCH v3 5/7] drm/sitronix/st7571: split up the driver into a common and an i2c part 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: <20251215-st7571-split-v3-5-d5f3205c3138@gmail.com> References: <20251215-st7571-split-v3-0-d5f3205c3138@gmail.com> In-Reply-To: <20251215-st7571-split-v3-0-d5f3205c3138@gmail.com> To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Javier Martinez Canillas , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Marcus Folkesson X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=60872; i=marcus.folkesson@gmail.com; h=from:subject:message-id; bh=PtkQ8cxlVLxYbiwCQdi4LyZt11sZIEDQg+LL4QGkS6o=; b=owEBbQKS/ZANAwAKAYiATm9ZXVIyAcsmYgBpP9kvhvTFgq5RuioQ1vR6N8G5U+TjGcSq0mLYp mEbXrhF+gOJAjMEAAEKAB0WIQQFUaLotmy1TWTBLGWIgE5vWV1SMgUCaT/ZLwAKCRCIgE5vWV1S MmLpD/985qu3mmgtdJWORQlYqXyYCvEjooTuYeTYCnmi6e4YP6a2VUMQl83/p92FFNyhr1QXFx3 5aUsFOEauvV8e2brql0jrdBlir35Vl6TPjh/kIXALqg9njM1PApepSx0llKUCvfAR1uiH6q8dua gcyE8agAqm1PyEVYRxNHj2LRH2sh5no/Rj6xHrtoPdXThSSFneASaD+7ipgpbAVhrTapxNjiWEU DMfECv5fqqC3/SWSgOUjTa7BhEpuMZav8o6SjyCIKqowU9KO2DsYoX0JOVNFlANuAYCZYWto7yN 9i3ktMeMx3I3+TFKMorB5NxZ7S2eiV0QGoWc1G5/O1vv7MGPRBKWZch8zR4moSX6fAl4blw8PC1 BTMD79zoqU5/8Uh/fGaTVa7OFh9QnaWhUyD+Mc6Ws6f5APYq7CrLPsETYHiIQUu6rrvJuT5u88W l8gwRFK6ri0OvhuTMcqjpdM9lQrCnmMi1X530UKAvM5cpp4yKY57a2l4V1Kt0yb857xxG5IAi/K 7fC+XK9HovCiqIRdkD8q7weahz60ykuU5VDuF22zSw1HibtyWmyMh3WEjbvf/CIlwLRmqVygJyr 24mwYQ6sJkjV40XKYstFYmlZAhXRA7aBrKLzPCpsaVhmadj/6cnfRoCpwXu0GCQKw63M6tfgbP2 zShDixZhYEz8+Uw== X-Developer-Key: i=marcus.folkesson@gmail.com; a=openpgp; fpr=AB91D46C7E0F6E6FB2AB640EC0FE25D598F6C127 Split up the driver to make it possible to add support for hw interfaces other than I2C. Reviewed-by: Javier Martinez Canillas Signed-off-by: Marcus Folkesson --- MAINTAINERS | 1 + drivers/gpu/drm/sitronix/Kconfig | 26 +- drivers/gpu/drm/sitronix/Makefile | 1 + drivers/gpu/drm/sitronix/st7571-i2c.c | 925 +-----------------------------= ---- drivers/gpu/drm/sitronix/st7571.c | 918 ++++++++++++++++++++++++++++++= +++ drivers/gpu/drm/sitronix/st7571.h | 6 + 6 files changed, 960 insertions(+), 917 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index ac4293d5089c..4b59960fa3a9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8106,6 +8106,7 @@ S: Maintained F: Documentation/devicetree/bindings/display/sitronix,st7567.yaml F: Documentation/devicetree/bindings/display/sitronix,st7571.yaml F: drivers/gpu/drm/sitronix/st7571-i2c.c +F: drivers/gpu/drm/sitronix/st7571.c F: drivers/gpu/drm/sitronix/st7571.h =20 DRM DRIVER FOR SITRONIX ST7701 PANELS diff --git a/drivers/gpu/drm/sitronix/Kconfig b/drivers/gpu/drm/sitronix/Kc= onfig index 6de7d92d9b74..203c53fff402 100644 --- a/drivers/gpu/drm/sitronix/Kconfig +++ b/drivers/gpu/drm/sitronix/Kconfig @@ -1,13 +1,29 @@ -config DRM_ST7571_I2C - tristate "DRM support for Sitronix ST7571 display panels (I2C)" - depends on DRM && I2C && MMU +config DRM_ST7571 + tristate "DRM support for Sitronix ST7567/ST7571 display panels" + depends on DRM && MMU select DRM_CLIENT_SELECTION select DRM_GEM_SHMEM_HELPER select DRM_KMS_HELPER - select REGMAP_I2C select VIDEOMODE_HELPERS help - DRM driver for Sitronix ST7571 panels controlled over I2C. + Sitronix ST7571 is a driver and controller for 4-level gray + scale and monochrome dot matrix LCD panels. + + DRM driver for Sitronix ST7567/ST7571 panels. + This is only the core driver, a driver for the appropriate bus + transport in your chip also must be selected. + + if M is selected the module will be called st7571. + +config DRM_ST7571_I2C + tristate "DRM support for Sitronix ST7567/ST7571 display panels (I2C)" + depends on DRM_ST7571 && I2C + select REGMAP + help + Sitronix ST7571 is a driver and controller for 4-level gray + scale and monochrome dot matrix LCD panels. + + DRM driver for Sitronix ST7565/ST7571 panels connected via I2C bus. =20 if M is selected the module will be called st7571-i2c. =20 diff --git a/drivers/gpu/drm/sitronix/Makefile b/drivers/gpu/drm/sitronix/M= akefile index bd139e5a6995..8073bb776ff9 100644 --- a/drivers/gpu/drm/sitronix/Makefile +++ b/drivers/gpu/drm/sitronix/Makefile @@ -1,3 +1,4 @@ +obj-$(CONFIG_DRM_ST7571) +=3D st7571.o obj-$(CONFIG_DRM_ST7571_I2C) +=3D st7571-i2c.o obj-$(CONFIG_DRM_ST7586) +=3D st7586.o obj-$(CONFIG_DRM_ST7735R) +=3D st7735r.o diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitron= ix/st7571-i2c.c index f994ace40739..44bc94be33d6 100644 --- a/drivers/gpu/drm/sitronix/st7571-i2c.c +++ b/drivers/gpu/drm/sitronix/st7571-i2c.c @@ -1,85 +1,16 @@ // SPDX-License-Identifier: GPL-2.0-or-later /* - * Driver for Sitronix ST7571, a 4 level gray scale dot matrix LCD control= ler + * Driver for Sitronix ST7571 connected via I2C bus. * * Copyright (C) 2025 Marcus Folkesson */ =20 -#include -#include -#include #include #include #include =20 -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include