From nobody Sun Feb 8 11:43:55 2026 Received: from mail-lj1-f175.google.com (mail-lj1-f175.google.com [209.85.208.175]) (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 9D5853164A9 for ; Fri, 24 Oct 2025 10:57:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.175 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761303464; cv=none; b=ZQT9tuv0u8MqL4qnhePx1xCqNwAmPXKMdex2Z1Mjwr11e30RuG40gRgM1Hr/51SClPIkpYanQoULMHZS8LY+yQwj7CHx4CDsf9HJsvv9tq4kA4+gQbu0cDgF9tIk7IiDcjH5a9um9StIGGi8QJ5DjQIsVIC+NYd1WzXIFiIcPPI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761303464; c=relaxed/simple; bh=gJN0GEdqYr0c0BapdenxjcnbYYDcPc4cwpfni50UD+M=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DyTKXIqGowfG+1k1RrYIUYKtVaw/BebJnz/fJmh1T3NszX6l7AIPKcsTZcheKEYXi+WxunVaCmfANkb5J3ZB7DnOSqcRFKpLGr+8yQeeIVNnSnN5uqlIiUKUzG9aGaWgfgzeWV82iZ7H26a3Wf08kze7BxTpy9O8oV/AW9K2qgU= 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=TYUSBhYy; arc=none smtp.client-ip=209.85.208.175 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="TYUSBhYy" Received: by mail-lj1-f175.google.com with SMTP id 38308e7fff4ca-378de7d3057so15489751fa.1 for ; Fri, 24 Oct 2025 03:57:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1761303459; x=1761908259; 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=yUW4+j9/V+Wyad1S0i56oa2Dd5YkXuZcdsGGN8zCGY4=; b=TYUSBhYywKeS00jwNhhj//q+RGhQFS4FcS1UarvN8x4aspsgLAhMGLyOSSvOBDfHFc NvSSd3AJk353qjW7vuzAzeHzFe5ybPqYWpmOvd+1tXh3ir8Ios2L7zz9jTQCH4JDshwq /f9SNAmk2+E3bDtrvaxY7+Oj1OGSbTvVOFKLBiq8tu3jXBrYITsIymUGJcIK8RMJrgz6 SipZzB4QqR1RSp0cSfIdFlYZwK/jPqmGYSFwrlVZQo6CnN2KBqJQ/mcdHTYUqeOceu4Y YvexklXRSeyro7GX2nHzHGDxYSxJwOfbZqlXtBGgPmhkaJTyGGWxogXcSMw7FeFC7UBU 1nIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1761303459; x=1761908259; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yUW4+j9/V+Wyad1S0i56oa2Dd5YkXuZcdsGGN8zCGY4=; b=VBSCGkbvuKZPWir24tOKTvFt29ShjkVqbW6FDkldwcLyNa6u3pGGM9ekLgcUD0j4NX OimDn2d0waX+0wmi/zgOgeoP6iZJ0tAhnDG0Z+KdPND6NQ2cDP9Mw7qJZ3Sc3SsH63gA 32b6u6P4gRekw+paqB4kJxEbPVdnwT4/F8TsnQWywRc8uXC+gS5M5HvqxRNq2X3OXBZv +eu7IcQ0Ws6t79DfJPSnEtVhLATemzp8JgmfHJOg8tXLdTNg8fXMvh2iIqdSOlA+e6hr gAyTFkgw52aFTfOncKgSW8v6b8ax4wOQAHyXpN3b0ucijpb1DNDD6Q5t4G4vf343WeC8 Ee7A== X-Forwarded-Encrypted: i=1; AJvYcCX3ah8l4DtRy9JR+lhCbjvf1KvQQH8gyQR+z3crgGBLPAz43tsZbGCTJHTj4xColzgPX2zowmZyKGcpZ2A=@vger.kernel.org X-Gm-Message-State: AOJu0YxEhlK4psChDkiLymc2VQE/6hP1NinIv7TUtdL8AVEulgQQXfY5 E41733kuFwt+GB6Jd+BsMq+dCZbsr32rXvpEtEd0BEUtY9eKZrZnnkXk X-Gm-Gg: ASbGncuahTjW2tI8cdPs8v+ebGZirGn/XQqwA27U06ja8e4vJPq03wMkK+iNtpxdFGT x0LfQsDOQ/3NomJv87egYqfcXUkIOAcfvq0T0oPnRDe8IDukSqQRI8ADLn2opAnpXKGuKKMvQuy IO+cjPEhDQhR73CHRVxxI+9Z6OrtsHqcK0n6EGpoq+2S6IcpsuHCyIU9fTQyMR7EHuATUxza+yu U3z55gV+B8bFQvB12OntExRzDLyNbJd2AA75HL7O8PuSEfiazjlnOJna3tPeGPGSXhI8jHhv/qb JyU4VRSp+K/w7x9c/iY/IGoUY35jyQhS6RodrZyhHdlCOuu5yg0NWDF/VZ5k5DlIX0giW5yOyh1 aBnUXTHJEvxzwWcSLmxixrvOar5Fin1kL6q1cKH2oe2kb5kMALgmZ29r6VEBmHC7tOUct7/QkhZ i8H1a9weVX3gJGZbiiPabUGMab0J1AyhnK9DLaWu4QS1bK X-Google-Smtp-Source: AGHT+IEZbNa1n0TdR6sj7s2uokI9dgaq0qRrt2pnOsuSToenq1P2ZXiAOSdf1CItbWZaR+yrqd3T8Q== X-Received: by 2002:a05:651c:908:b0:372:8c3e:2641 with SMTP id 38308e7fff4ca-3779782d19bmr71060111fa.10.1761303458230; Fri, 24 Oct 2025 03:57:38 -0700 (PDT) Received: from [192.168.1.168] (83-233-6-197.cust.bredband2.com. [83.233.6.197]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-378d67db8fesm10375671fa.38.2025.10.24.03.57.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Oct 2025 03:57:37 -0700 (PDT) From: Marcus Folkesson Date: Fri, 24 Oct 2025 12:56:56 +0200 Subject: [PATCH 5/6] 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: <20251024-st7571-split-v1-5-d3092b98130f@gmail.com> References: <20251024-st7571-split-v1-0-d3092b98130f@gmail.com> In-Reply-To: <20251024-st7571-split-v1-0-d3092b98130f@gmail.com> To: Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Cc: dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Marcus Folkesson X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=61118; i=marcus.folkesson@gmail.com; h=from:subject:message-id; bh=gJN0GEdqYr0c0BapdenxjcnbYYDcPc4cwpfni50UD+M=; b=owEBbQKS/ZANAwAKAYiATm9ZXVIyAcsmYgBo+1uQAgiOQfrTYCZmeD/SEhowu5Bh9NiQ+HhgZ saNJ95snh+JAjMEAAEKAB0WIQQFUaLotmy1TWTBLGWIgE5vWV1SMgUCaPtbkAAKCRCIgE5vWV1S MnxxEADFmFVVGJrG1okprDvh9Jo3NHhp6h4ya2FErLoPdl/AjRhCOoGlmzgfdav1zsk+KuUadJT ricQfSWXGFBaRWM60mk+tZlEGRIY3bH/4sqqKKjZ6di/oUEe8VSGnNPAtXSNAXQ30EKJ6LcpXf6 NzdPWbQIwiJ7vlyMsptXnKK6V/NjMJa2SksmHGDR5ZAqgdAom223gXpX+liSIdF814quQx2PU3e 6za6ByI82uzeW66Kj+wFgRi+Lxv+PKw2TVp2bkSX2SIhHHBUChyWN2Kjh+YtjvbwleKcu0m//2x F29ecAFEZL9PJfau5lxQxGtqsjHdXQP6IYD2S/1R6W5sPIoSQ0rR9jNuOZelZiEDZXucW91ZZf3 rjwEMOtBd9rj/iW93PNg6zl7+HzYvAPZEgWY2xpnc+aE6w4prIbGCRBd0NQpHAdSZlNq9iYsn8k EOZu0TMsvAhe2I4flFZMiz5cPCuTOlYbinSgZPu95tvTzC5kYU7pEqYDa6OgBIAl4gDQtIGcCWu Hlw7VWvJGqcXxGLwwd0HkWiAsv3EAmh3nrXToXJeBRZ4uAfPinmbrLpCMBDQeHfbHPfke85I+D1 R8n4gB4ilzDFOEUbfOGFkYRjmAO/HacnuWE+dxzZgRGYd7WeM5SIczeRh4ONw94ipC7teuu4ArL y/HOrJo2oAjrW9w== 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. 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 | 924 +-----------------------------= ---- drivers/gpu/drm/sitronix/st7571.c | 918 ++++++++++++++++++++++++++++++= +++ drivers/gpu/drm/sitronix/st7571.h | 6 + 6 files changed, 959 insertions(+), 917 deletions(-) diff --git a/MAINTAINERS b/MAINTAINERS index 2814faae61eceecae1bccaaf92010e22dca81376..66e9ffb757c8bb19dbb894eb51f= 88f589ee83af6 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -8083,6 +8083,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 6de7d92d9b74c72746915b945869dba91f161d2b..0676a86661caa4ab81f226ff2e9= 90a3e2526f74d 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_I2C + 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 bd139e5a6995fa026cc635b3c29782473d1efad7..8073bb776ff94de750f350b636f= d9db3d54fdd46 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 f994ace407390dba30c0968ca99f437382badfab..038a7c2b6f26169f40305a382da= ce7031d9efc43 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