From nobody Tue Oct 7 05:24:03 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (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 AA2392459CD for ; Mon, 14 Jul 2025 10:44:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489884; cv=none; b=XBZFmNXrzugk1DrzWAT6VwmZI4gQEU/lsw1erS7oOGxU99A+Xakm5vHgy8UuAb+Y/cRWNgXehCItS6gptXbaMiK1cdBHs/awzIXpzRfW7VI/yPo7Yf2uT+coLVaeIuijxpAfnsuMSNBl+JsOOiqE8TKOY+PxQnHoFFnAhWVtq20= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489884; c=relaxed/simple; bh=rIGyUZ9LVAbBaIPfC/oyomOqbL1G/CfPPKXddygm5jU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=aMCxJs2EqXJc7Bp3T2X4hgCZzXOt8KoeuSuwgyDPds7uafNpH9rSM/xb7XWHmGEAd+SG5qZqSs7bqpgk/LSzhCWgrHJfhQ2yesRRuUqmYuKgiRp3MhR59Z9JMM3AKr7tCUBmSp+lAqpmDDpRoD6SWNYcWNO3q33CRwQPCy+K7Y8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=MtklcR1+; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="MtklcR1+" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752489881; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=HNUt6/bURNRe9U6oU/7WSlTHdeKZKLnldCNgh0UMvWk=; b=MtklcR1+W9pHszbXOJ2Oms2xyP9XjPmtY8NtxH7V7UrnkAJu3YNydK51uJKPQpSszB1Eiq 74gEBxB3DSPC0/b2+oWeEMZZ78cHA76qvvGkVQQgcqarOa+0SHeIEOjq/Et8CtIbNKj5Zj rYTucIFJa+1abW2wkJgJFu2ZKcoSCnY= Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-173-IMVqQeYVPB-vaHYMYgYRKA-1; Mon, 14 Jul 2025 06:44:40 -0400 X-MC-Unique: IMVqQeYVPB-vaHYMYgYRKA-1 X-Mimecast-MFC-AGG-ID: IMVqQeYVPB-vaHYMYgYRKA_1752489880 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-3a4f8192e2cso2382226f8f.3 for ; Mon, 14 Jul 2025 03:44:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752489879; x=1753094679; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HNUt6/bURNRe9U6oU/7WSlTHdeKZKLnldCNgh0UMvWk=; b=R311YE4wzWZQrDmZFo1JT4W2dz6flFMBcuXb0AFTUIdydJDrFq+0kvU1CV/stJ7sXj sHYiE0QDFMZyNwTjuiXt90dDXxSJFTkIjGeQI9c8Rh4ICmhJyK0Zk7hP8FnnUUQWKSwA 0Cn7aAdfDYI6eyRD+B7h0yQijC2zrsRCr3pdnatV1N10+MQ0Ocl4Vmam/K0cDsOuazyB jVF8hbjDJ/kYSEIhXsIIPVezg0rsQypUE+GhyvusjFT1LKDe4AI01vwy2zBOfMnMRGCR nH53lIYwHazi31IGKzBAFsES/jvwx0j+XHpSjgwGVaeEBC6Cq8M3qiBDKspZHDjUWdrQ XjKw== X-Gm-Message-State: AOJu0Yz4QpjN5Cv1XYRbmg+w6FedOEKOzQe0OcaCnv2qBx7I05nuJJje XaV5klp9Z4ShxsG1ZW52wBxzE+3bPupzLDKfysDvkExhPnt+xUkrk0xWVzCRuF0k+cmOoW2GY1u c7D1+MAmKjv9iAMtKcrAsk62/ubOWretoOdsxHejNrY8Wpp4k1w4YYuzc7EMsvj4DLH1+LMn71e cUSFfT5RI6xijWorFwNLFElsbHB6odP3M3u17WErsItHD1b13Q X-Gm-Gg: ASbGncvuzjDnEdSxQHaw9XDJV6h2Q5fEOXdzzvpldJ9m6TM/Fzjpks0ox3KZ1JeucxW QBESdnWlsOxoUDczo0YY6S/HnMhkyommvqHq1u35q5/6wiBnVaGak0fgbumzNhtv0psHiKn+ZBP 8hMb5awmbqSA/yCRynIPFpT5aEWy4H66DFzO1nHv4G7lG7FdBAkfP3uTb/xiB4vUSJ6aP3IzwUy MdkvR9m4wkQ+POgm4Km7FKVNBFClaBDkWHUanRA2npXMwKoINIMrswnLCac0hLM7snzC5fD3d8j ypyBzdHHS3PE3iVNSVQOyZvatmUcJY2/ X-Received: by 2002:a05:6000:2f81:b0:3a3:7baf:f06a with SMTP id ffacd0b85a97d-3b5f2dfdd45mr9421896f8f.37.1752489878934; Mon, 14 Jul 2025 03:44:38 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE2W3lgSoiGCAE5rXtFzBHRvbFoJu2axAL5r6zaGdYjc6OVX8whs77OvmSuJ9iTy/37bnR2pA== X-Received: by 2002:a05:6000:2f81:b0:3a3:7baf:f06a with SMTP id ffacd0b85a97d-3b5f2dfdd45mr9421846f8f.37.1752489878111; Mon, 14 Jul 2025 03:44:38 -0700 (PDT) Received: from localhost ([89.128.88.54]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8e1f4edsm11880604f8f.83.2025.07.14.03.44.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 03:44:37 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: ipedrosa@redhat.com, Javier Martinez Canillas , David Airlie , Maarten Lankhorst , Marcus Folkesson , Maxime Ripard , Simona Vetter , Thomas Zimmermann , dri-devel@lists.freedesktop.org Subject: [PATCH v2 1/5] drm/sitronix/st7571-i2c: Fix encoder callbacks function names Date: Mon, 14 Jul 2025 12:44:00 +0200 Message-ID: <20250714104421.323753-2-javierm@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250714104421.323753-1-javierm@redhat.com> References: <20250714104421.323753-1-javierm@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" It seems the driver took some inspiration from ssd130x and some of the functions (encoder callbacks) were not renamed to use a st7571_ prefix. Signed-off-by: Javier Martinez Canillas Reviewed-by: Marcus Folkesson --- (no changes since v1) drivers/gpu/drm/sitronix/st7571-i2c.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitron= ix/st7571-i2c.c index eec846892962..634b426e2874 100644 --- a/drivers/gpu/drm/sitronix/st7571-i2c.c +++ b/drivers/gpu/drm/sitronix/st7571-i2c.c @@ -550,8 +550,8 @@ static const struct drm_crtc_funcs st7571_crtc_funcs = =3D { * Encoder */ =20 -static void ssd130x_encoder_atomic_enable(struct drm_encoder *encoder, - struct drm_atomic_state *state) +static void st7571_encoder_atomic_enable(struct drm_encoder *encoder, + struct drm_atomic_state *state) { struct drm_device *drm =3D encoder->dev; struct st7571_device *st7571 =3D drm_to_st7571(drm); @@ -565,8 +565,8 @@ static void ssd130x_encoder_atomic_enable(struct drm_en= coder *encoder, st7571_send_command_list(st7571, &command, 1); } =20 -static void ssd130x_encoder_atomic_disable(struct drm_encoder *encoder, - struct drm_atomic_state *state) +static void st7571_encoder_atomic_disable(struct drm_encoder *encoder, + struct drm_atomic_state *state) { struct drm_device *drm =3D encoder->dev; struct st7571_device *st7571 =3D drm_to_st7571(drm); @@ -581,8 +581,8 @@ static const struct drm_encoder_funcs st7571_encoder_fu= ncs =3D { }; =20 static const struct drm_encoder_helper_funcs st7571_encoder_helper_funcs = =3D { - .atomic_enable =3D ssd130x_encoder_atomic_enable, - .atomic_disable =3D ssd130x_encoder_atomic_disable, + .atomic_enable =3D st7571_encoder_atomic_enable, + .atomic_disable =3D st7571_encoder_atomic_disable, }; =20 /* --=20 2.49.0 From nobody Tue Oct 7 05:24:03 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (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 4066B246781 for ; Mon, 14 Jul 2025 10:44:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489886; cv=none; b=lTLCPXw7rU1l2C7pI6E4wVWMlju0ytFWUSduEfkla8H+fNunbeq4tUzYddOAExVWqM/Ktpf458gdVz728jrcLPtWohFuvYhUZPhXrqu6SxXeB5Mct04d2gLN7esKtbpDzWjZj5TTkShYrX9Ie6BXOVSpH3c+LRzI9gmFGkt2dWA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489886; c=relaxed/simple; bh=gAYY9GhSyI8+jlIBzY3deK5w6OvU3C3Ju6zsK6OEtoA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BF6Q4wZ1E/RnFQmCzcDGrfA/MkAI2tpAS9jTpAK6jloOk1U9kUscrjRrOwjoLPayQBaPPMHS9lYaA5IKPqS+NhSNtls9aLecRvA7uAj0HByCPYY46aQJi+ZR7mDAIeN0nkILBkUWeya/PcAt1tIYWN5+E0D563dlubhYvVsc860= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=EZ2nXUow; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="EZ2nXUow" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752489884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=L2gdjIwVeQi8Hoq0lCLi65nVhLbR8gpg8luFAFpWgHM=; b=EZ2nXUowgSlGkhuW4xXsTValjd9BG5W6LyA4nf59/kTO+FUySUSBNIBtqPw8q5b5p2XmMP d0I2aJyGvVf3ALCPiRc8gJwa6FgDjxQSfzZvqBSRNCE/269lnr0h0Ejp6/bC3Gm8ptdPT4 hsh1RkXwhdBJ6Kw1GYT5mAuqmBG+r6E= Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-660-mGrk9tXrOueiTXFqs_WJZg-1; Mon, 14 Jul 2025 06:44:43 -0400 X-MC-Unique: mGrk9tXrOueiTXFqs_WJZg-1 X-Mimecast-MFC-AGG-ID: mGrk9tXrOueiTXFqs_WJZg_1752489882 Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-3a4eee2398bso2017951f8f.1 for ; Mon, 14 Jul 2025 03:44:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752489881; x=1753094681; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=L2gdjIwVeQi8Hoq0lCLi65nVhLbR8gpg8luFAFpWgHM=; b=nyLR9sXS00TXnfrmanhZRMp5NbfFXqCVPG/7aQgGcMwXktKdpGgFnsSeG86iFd93qO NKEgG6q2no2tohq1Q2U457ExKhzz/THiEedZ+EkdVlPoH7fBGILWqAoWbTqjHtQ49h5Q evSM/ZXdc9lkxeuV8Nr/iNJrAd4MVhBrhF/59KXLNQX8GbboPQepsz7N+dQQ3ebMaW9s yuitQWXDAh/ZiWJIR0nJckiS2/9FUYD7t9UvZncDaWCxvfCngSG4EyU211Qc3uvHvLRj gm4ApHv8C6vi+aQLIYS5nMZKuahuqs8WScBRS/+mbbkX4nBUbTjaOq9oBkF+75d6bWcG Ym8w== X-Gm-Message-State: AOJu0YzRd4/jIJ1l5RiUjVdOPtc5v+W3+whA84J8qJZpE/qXG1fxJ0Y5 AJhaR80z+zcJpe4eLBnDfkgZ8buOinBzKcUCMWyrCXk1kUpR+CmMQNDCSFMxvbUB/CKyGfw4/M2 l3QNNyFiNVBiCsB9vFVTlg058QLDTtTFNFn98PFstT0rfwWSNTfkCj6r7+L8iAfsy1LfU9wRv0h J0ltisaDAjX+D5CoSsmhg7GrOxzMnG+soUplvyPaWa+BOiMC/t X-Gm-Gg: ASbGncsVHjsXh3bNRTmRgn/Ap7YQKKHIrc6fEFFbdei9CeElLkiFGZqPr6ZwWvopSsX HLkA5y2Dqh0nxyCowc0HrXuZubkiNWJGtPdRWjgjOywh2h6+SQCs9vEz+/gDxT351u7pdzS5Hay Y2eg3aJxBAPtbaRWeQ9u3cKFVARvLPkg296z7ZGIc8zaGTyblMEgUAtNWPieOJioZXxxe0xT3dt 2f/CCrdGLNjQCogsEctnd9KAbCLy+V5gUQf2Qv5Wz4UjW/cj7Y4puSkv4QxQkiz2JAcfjR746xP 0G4Vq0Za/yvqLRk7dj6raAreS/p+Smkx X-Received: by 2002:a05:6000:290b:b0:3b3:9c75:acc6 with SMTP id ffacd0b85a97d-3b5f359d08dmr9051352f8f.59.1752489881143; Mon, 14 Jul 2025 03:44:41 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGtxVKiRxB+FpXzE5cW+k4F38kh1q3AFLo1SgxCi5sV67WZgIsGuQ18ILpi+whjo1m/+jvI2Q== X-Received: by 2002:a05:6000:290b:b0:3b3:9c75:acc6 with SMTP id ffacd0b85a97d-3b5f359d08dmr9051312f8f.59.1752489880604; Mon, 14 Jul 2025 03:44:40 -0700 (PDT) Received: from localhost ([89.128.88.54]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8e1e1a5sm11873559f8f.74.2025.07.14.03.44.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 03:44:39 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: ipedrosa@redhat.com, Javier Martinez Canillas , David Airlie , Maarten Lankhorst , Marcus Folkesson , Maxime Ripard , Simona Vetter , Thomas Zimmermann , dri-devel@lists.freedesktop.org Subject: [PATCH v2 2/5] drm/sitronix/st7571-i2c: Log probe deferral cause for GPIO get failure Date: Mon, 14 Jul 2025 12:44:01 +0200 Message-ID: <20250714104421.323753-3-javierm@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250714104421.323753-1-javierm@redhat.com> References: <20250714104421.323753-1-javierm@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The driver already uses the dev_err_probe() helper (that only prints error messages for the -EPROBE_DEFER case) when fails to get any other resource. Also do the same when it fails to obtain the rest GPIO. Signed-off-by: Javier Martinez Canillas Reviewed-by: Marcus Folkesson --- (no changes since v1) drivers/gpu/drm/sitronix/st7571-i2c.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitron= ix/st7571-i2c.c index 634b426e2874..fd9d6c701cc4 100644 --- a/drivers/gpu/drm/sitronix/st7571-i2c.c +++ b/drivers/gpu/drm/sitronix/st7571-i2c.c @@ -804,7 +804,9 @@ static int st7571_parse_dt(struct st7571_device *st7571) =20 st7571->reset =3D devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH); if (IS_ERR(st7571->reset)) - return PTR_ERR(st7571->reset); + return dev_err_probe(dev, PTR_ERR(st7571->reset), + "Failed to get reset gpio\n"); + =20 return 0; } --=20 2.49.0 From nobody Tue Oct 7 05:24:03 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (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 BEAB223BCFA for ; Mon, 14 Jul 2025 10:44:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489889; cv=none; b=a7/qwlSgBJlm7GxlRiBvZ25jPxfOoNYlpkU+bIUX+62y6f1qEOIVxNfWuvS2xXjkjO5LPZvYXu1dIxHcRoqbue+eCKZfG7zKXiDV7SlicJFIaDHLiTP9A4bd0IZR1hG4nNKII+kekzsHrs4W4pk3PCbzmkLu+Aykz3ryxIlR8B4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489889; c=relaxed/simple; bh=nC6iSVG2Uu5Y97rCmVPPdK8QJYizHSKOadqIan5utxQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tQuO9KkjDKxWWXVukw3oyAWxceVKGl0asX+dzXIcsWfxwVr8P+Iszod+Z8vwQB6o9zPFPj5w+D2dg2fvf0wADJnZ7ySX8cT5AZSDlLfHTaPcnTCjjWmBsasAgzGHCoICuHVVwo0zHJ8hu9WcX2QWOlSEPhlHJ3S72SeJpyFly74= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=KV/WzHgl; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="KV/WzHgl" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752489886; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=J+dRbh0w0ssR7z7SffOey6CZ9oYNydtq8EHITGU1RKY=; b=KV/WzHglCnJDMhLvfMdPc00engTWYIKbAe8vMOWOYMeq8WLFXVpi2/WQcNIg2QQIHYeG4l Alm2w1exhs2MHazwS0mRyO4EszKYtpx8oCcO6hU7FUUFglOBleBOdWySZOgO9huKIEeolT fGWHxHwLBKa0kDOUCvZckb/IErf6Tpw= Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-534-8lAtqKbuNeqVtlFAr_i7Xg-1; Mon, 14 Jul 2025 06:44:45 -0400 X-MC-Unique: 8lAtqKbuNeqVtlFAr_i7Xg-1 X-Mimecast-MFC-AGG-ID: 8lAtqKbuNeqVtlFAr_i7Xg_1752489884 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-455f7b86aeeso12184005e9.0 for ; Mon, 14 Jul 2025 03:44:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752489884; x=1753094684; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=J+dRbh0w0ssR7z7SffOey6CZ9oYNydtq8EHITGU1RKY=; b=K7GaRqvwzzpUZmdNv+t9HmLImpGol09qLseEfhFcJweLgxr4//5KXceKb/XFUqC5xD 8wFawC4xPajf9/LZ3PXhcCzw+fwwn1+KaRJ9FUDEtr6Jw/UUVqJc5v2PM4/4HdCr9A7Q jQnLH2rDbbP5g0KzqiPjb9qp2HkvffTUK2zXlyGVdA9W7ddAcXXkvlQe6zxcRgEbH6ox 0Vqe0ylmfF2fdQ1C3q0l5aaMAL3yB3hYeLzPshfq3+W2SyAo9H2gjBhpGlhjuLB4aEsX CsxWp7M8rahnpzm0Am6gmTNDO8OGH6XOSA1YcVvgOaWddm3JvU9VgK2hsXdCq5K8+e7P HDdA== X-Gm-Message-State: AOJu0Ywo+3mZsRbW6f7lr/QB6ObEhuyRGc9cLEagGYWIQ5Th5ZRyX/r0 6VpviBzMIid3B3Dypt48do6s5OX4dcLWKiL2Ev6q4xwzFhNqM8sjDf9IYVNB9TNqU4sMYZZW4D6 6pc5Fwk0+OGzxj1du8a3yIbZYdhZQalEvQVm7ykgBA+aieVwKW4yclGa8YmFGwiYlcNCFP3UItm ExMCpmoWRQyMlG/Lqv4l+qCcnEdGEW5PlYKjAyW7UgiJeXdK30 X-Gm-Gg: ASbGncsPWv3DSySTWYRBhekaRbCC3z66TftZfChOpmYOzcwF4O/LeKvuXwpteQ4wfD9 4+SXw6xoJUNMnYKaP2ySRXB6dGEv7HYQy+i6G99NJNPHGmjM+C2M3O0bEYcLaKEMEO+P3UUGwcQ 60SiKJ8C7WGOupDnL6OCcirRwXuWr0xQrBpCz5CM5wRPCcDU3DNMuoMovSHyRjoqyKj8+u1mmVm PC7X+xqCRXR7S2B7WYNf5sK4hBFG4NAx+zXCRWVTjo5WTMMAb4S+zBVt8QwiMni1j6ETCtOW8N1 JsnJcyIrQMmS+v3rypjV/44HIkv7ikc3 X-Received: by 2002:a05:600c:3155:b0:454:ab87:a0a0 with SMTP id 5b1f17b1804b1-454f4257f20mr127692555e9.17.1752489883572; Mon, 14 Jul 2025 03:44:43 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFv7Rff2pEBanvuCvIAGuf8+StdSH/j+ARZxyQfPyHplKgidfrfHXUUtXua8aJ+zq7YriSdEg== X-Received: by 2002:a05:600c:3155:b0:454:ab87:a0a0 with SMTP id 5b1f17b1804b1-454f4257f20mr127692145e9.17.1752489883089; Mon, 14 Jul 2025 03:44:43 -0700 (PDT) Received: from localhost ([89.128.88.54]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4560d019f1esm64813235e9.10.2025.07.14.03.44.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 03:44:42 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: ipedrosa@redhat.com, Javier Martinez Canillas , Thomas Zimmermann , David Airlie , Maarten Lankhorst , Marcus Folkesson , Maxime Ripard , Simona Vetter , dri-devel@lists.freedesktop.org Subject: [PATCH v2 3/5] drm/sitronix/st7571-i2c: Add an indirection level to parse DT Date: Mon, 14 Jul 2025 12:44:02 +0200 Message-ID: <20250714104421.323753-4-javierm@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250714104421.323753-1-javierm@redhat.com> References: <20250714104421.323753-1-javierm@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Other Sitronix display controllers might need a different parsing DT logic, so lets add a .parse_dt callback to struct st7571_panel_data. Suggested-by: Thomas Zimmermann Signed-off-by: Javier Martinez Canillas Reviewed-by: Marcus Folkesson --- (no changes since v1) drivers/gpu/drm/sitronix/st7571-i2c.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitron= ix/st7571-i2c.c index fd9d6c701cc4..f9c4fedb3cca 100644 --- a/drivers/gpu/drm/sitronix/st7571-i2c.c +++ b/drivers/gpu/drm/sitronix/st7571-i2c.c @@ -92,6 +92,7 @@ struct st7571_panel_constraints { =20 struct st7571_panel_data { int (*init)(struct st7571_device *st7571); + int (*parse_dt)(struct st7571_device *st7571); struct st7571_panel_constraints constraints; }; =20 @@ -881,7 +882,7 @@ static int st7571_probe(struct i2c_client *client) i2c_set_clientdata(client, st7571); st7571->pdata =3D device_get_match_data(&client->dev); =20 - ret =3D st7571_parse_dt(st7571); + ret =3D st7571->pdata->parse_dt(st7571); if (ret) return ret; =20 @@ -964,6 +965,7 @@ static void st7571_remove(struct i2c_client *client) =20 struct st7571_panel_data st7571_config =3D { .init =3D st7571_lcd_init, + .parse_dt =3D st7571_parse_dt, .constraints =3D { .min_nlines =3D 1, .max_nlines =3D 128, --=20 2.49.0 From nobody Tue Oct 7 05:24:03 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (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 6093E24728B for ; Mon, 14 Jul 2025 10:44:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489891; cv=none; b=MmSQNQw/OTbuuROp5BEZvmEir4QQswOjUFAarOSS2b61Nnqz6sbGc3lx1h+hTFKADn+8Gr63HEX6dB/CqRBebRI2t9iHSfStupKEIl1qPJjyBuqDd0+KS5OS5ktbbdUiQJl5iQBWNZk48FpObgiWOW79vFD7Z9OfqRbKG4xZKjo= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752489891; c=relaxed/simple; bh=2WLJKOVAuaJt4QnmoXL1k44Atj4Pe1QbpaUPyStODjM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=dzhI4Xut+b7aToOmpS+SVKicWvbVnLoTx1DxHerobY1gG95pPVEAZlFd4/CizxI4GlwpK7Gf1FAB34jewElUE3fWioPZYrsDkUdVqp/vm1OgZO/nCOuWmH84a9wEZbkmv6Ih8eMDXXEuXt9bnvy+yYnUuhjY234lxu2BE+b8GB0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=N3juzJ8w; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="N3juzJ8w" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752489889; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=UXL9y7xBlAhc4AXFCXGCZMpy7EHZFtBhXWeACly5wqo=; b=N3juzJ8wmQIidWod65p7pIvgM5xULcO86BO+GP7h+x+Ylk3AxZBC58gEM0sST/7idc88np dpnzWWNYzPX1hsv7pG379LP9r9eZA0X0eMlawix7/ytXy7cBM+KcyGNxH6QD64HLIuoYx7 xubAlUZ4jyVrFq4ya2UAo0kw+gc/MfY= Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-372-0_TLK5nLPLiIwvcTLeQ-Zw-1; Mon, 14 Jul 2025 06:44:48 -0400 X-MC-Unique: 0_TLK5nLPLiIwvcTLeQ-Zw-1 X-Mimecast-MFC-AGG-ID: 0_TLK5nLPLiIwvcTLeQ-Zw_1752489887 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-3af3c860ed7so1830053f8f.1 for ; Mon, 14 Jul 2025 03:44:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752489886; x=1753094686; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=UXL9y7xBlAhc4AXFCXGCZMpy7EHZFtBhXWeACly5wqo=; b=glQDhC0aCN45Iav2rmjBx2K+cjrSW+VzaGm+/qI6bCJZft1OQKnJ92KXjWl4DynzuP 9XlJov2iPomcET9cmwEh6OBUx6ikSNZCBBILx0dtUrW8zM+h08zJXTlA8qnRY+TPK5oH 9+1ZMY3cxYQEvK/f8s3Zw+J/9DjgmlnLLcjNRy8iq20bvVs0ulrKDSTWMak6S+Dcr44+ WgbCxRNrcgIxKcH4eePh6JBqIXRRdnK8ss3Kkb6FdI//eu6+MLsnrfnJIGOWbodSLQYH UupbuFs3L2CfoOHV6UU8kJB3x31DR2tw98zOacJSNLZSY47dzIViGrvHTghY6mKL+XTH MCAA== X-Gm-Message-State: AOJu0YzCFG1QfjdY0JA3HjdhW7VY9XhxQQrul1i5TI+SR3Jm5IYnC1B6 VYp8B+S1rd3mA/PPW26WlpIvMUqOL85ue1BIBr3bqDBJqa3pz0uHwpArxxeJsEUMOAfhq/on47L RQn+YF6/IaNlRX39snJr7CNldpr39lWArtMzae6zQ8QLo67RT8xWRNpTWTspKju52xxPuolvl7r BxyoQa+I3Hi1txSBo/Yc1XPFw3j907A/Q+Ce1qvv7FuqG8Mf2G X-Gm-Gg: ASbGncvNFYb8ctT9sIlHM+qiu1YqkQFN6fyHXjyn/CS3Idwkt1XpXZm6UDe4JIzw/FN NRCIs6Bryj6B9tesJ4LSdcrZldN/Q0knzmo0r8IQHQAYoiLN4YebLnbJ2NgtB9aX3fXJ3WCrjbs LQ5R8dsO6sbXFlgbQlSAcRL/tTd/ZaehXZ4dKT4z9PtJltnhdCVCbJ07tmCsPFVhy8Lx51G+bX+ LUqwqS2yVeIL3G43I4BueRpnf1TOzIlziNAzSqHUYSHVSpmGCJJaJAnFNG2Asq9uYzKhGnVUhbh Ti3M6HM/vJVJkESRpcVf4onu8d/IGYY+ X-Received: by 2002:a5d:64ec:0:b0:3a4:f6ba:51da with SMTP id ffacd0b85a97d-3b5f2dc2868mr9964335f8f.15.1752489886452; Mon, 14 Jul 2025 03:44:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHgeEBunGgrYdyyx1Q7dxCaPxvUeX/pPehKrFaYxcQS3TFsh9G8Baoie8ftqyWxl1dIxeb+qQ== X-Received: by 2002:a5d:64ec:0:b0:3a4:f6ba:51da with SMTP id ffacd0b85a97d-3b5f2dc2868mr9964292f8f.15.1752489885942; Mon, 14 Jul 2025 03:44:45 -0700 (PDT) Received: from localhost ([89.128.88.54]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8bd1792sm12294623f8f.13.2025.07.14.03.44.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 03:44:44 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: ipedrosa@redhat.com, Javier Martinez Canillas , "Rob Herring (Arm)" , Marcus Folkesson , Conor Dooley , David Airlie , Krzysztof Kozlowski , Maarten Lankhorst , Maxime Ripard , Simona Vetter , Thomas Zimmermann , devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org Subject: [PATCH v2 4/5] dt-bindings: display: Add Sitronix ST7567 LCD Controller Date: Mon, 14 Jul 2025 12:44:03 +0200 Message-ID: <20250714104421.323753-5-javierm@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250714104421.323753-1-javierm@redhat.com> References: <20250714104421.323753-1-javierm@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Sitronix ST7567 is a monochrome Dot Matrix LCD Controller. Signed-off-by: Javier Martinez Canillas Reviewed-by: Rob Herring (Arm) Reviewed-by: Marcus Folkesson --- (no changes since v1) .../bindings/display/sitronix,st7567.yaml | 63 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 64 insertions(+) create mode 100644 Documentation/devicetree/bindings/display/sitronix,st75= 67.yaml diff --git a/Documentation/devicetree/bindings/display/sitronix,st7567.yaml= b/Documentation/devicetree/bindings/display/sitronix,st7567.yaml new file mode 100644 index 000000000000..e8a5b8ad18fe --- /dev/null +++ b/Documentation/devicetree/bindings/display/sitronix,st7567.yaml @@ -0,0 +1,63 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/display/sitronix,st7567.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Sitronix ST7567 Display Controller + +maintainers: + - Javier Martinez Canillas + +description: + Sitronix ST7567 is a driver and controller for monochrome + dot matrix LCD panels. + +allOf: + - $ref: panel/panel-common.yaml# + +properties: + compatible: + const: sitronix,st7567 + + reg: + maxItems: 1 + + width-mm: true + height-mm: true + panel-timing: true + +required: + - compatible + - reg + - width-mm + - height-mm + - panel-timing + +additionalProperties: false + +examples: + - | + i2c { + #address-cells =3D <1>; + #size-cells =3D <0>; + + display@3f { + compatible =3D "sitronix,st7567"; + reg =3D <0x3f>; + width-mm =3D <37>; + height-mm =3D <27>; + + panel-timing { + hactive =3D <128>; + vactive =3D <64>; + hback-porch =3D <0>; + vback-porch =3D <0>; + clock-frequency =3D <0>; + hfront-porch =3D <0>; + hsync-len =3D <0>; + vfront-porch =3D <0>; + vsync-len =3D <0>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index ee2ef9d9db2a..d97e091b1742 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -7835,6 +7835,7 @@ F: drivers/gpu/drm/sitronix/st7586.c DRM DRIVER FOR SITRONIX ST7571 PANELS M: Marcus Folkesson 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 =20 --=20 2.49.0 From nobody Tue Oct 7 05:24:03 2025 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (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 59D1545009 for ; Mon, 14 Jul 2025 10:53:11 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.129.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752490393; cv=none; b=kXMnLDMs9sJJMxJWDaHQr4J9PfPKwdjipXJ187YPrVDEMsQstCEudSpop+uzlUX/x+YSL5ND/4VDw0lyZT+NSnXW+0ZPB5yEH6NuP9JglXvHgvwH+P+SMz+n9CERumgYhdovocHVQrAxgX0okKzn67fRiGREwAz2VxkPAlVlmwQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1752490393; c=relaxed/simple; bh=QKCkOsCK6Zy5Qaj116PD8xxOQLfC9pstaPGQA20Sjog=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=fXZsOqVz91JNEdxJTlbgPvUHzdsaBorrNF/USSfX/V8rfyCsKd26z8pQhRShORUjC31fMVQuESFlQe9r9L8VcIHWEg0aFnQRDfqi/2tdro1G/ZlAgmdit5ujJQ8hgkrf8nwSFuB3dwJNSbGsULPp2QtVllpTBsUwf6ZeN5/2Fww= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=TfG6mxll; arc=none smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="TfG6mxll" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1752490390; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=QcePExROBkGmXTd3pzyFFPMJePKoh9BWUTzEsDl2zWY=; b=TfG6mxll01c+qBz5L5dKBFWswdyu809Eqq1wPsOkpHWYBokSqCr3eH2hxTI8rGEZWUQ1pG zuMBl3nmlPTnQQWN5LdLIeQKhagmcrq35DtW0i5x0H9rwVa+rFIlYO462REiayfXEHc6/v V6j4On/WvBCWc65tVUr85drzAWV42rQ= Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-455-wC9xIjc3NxSFPQE2xLtp1A-1; Mon, 14 Jul 2025 06:44:50 -0400 X-MC-Unique: wC9xIjc3NxSFPQE2xLtp1A-1 X-Mimecast-MFC-AGG-ID: wC9xIjc3NxSFPQE2xLtp1A_1752489890 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-454dee17a91so31360745e9.3 for ; Mon, 14 Jul 2025 03:44:50 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752489889; x=1753094689; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QcePExROBkGmXTd3pzyFFPMJePKoh9BWUTzEsDl2zWY=; b=SnnZzkVQUsHNwlFEd+4Yi3uJLqx8fgoG58/Vj4MEcMve7AcMe87U95tJUIT+R4xxKI irUse5OGDGocOZLjjUqWHaLj+FFlz49vtgJ6PClBm81iJJFvwibypdIddGXXuM0stHsb 7dleOy0h2kElTLyPEsKYojlxc/0GQ/LfF/g71ho7Ao2bW1Iuegjs5LviSNMJA4Le5J2H gbU7gfJaMmrBF07EtCa0yPrUvx3eE7wmrr9GG5a2Z0VBKC4dSavYJK01s6KgAJuekF2D jCv9szT89aWfw0TF23juoiXvp2hUhRsxLFFGW53W0DFxHKEvNTH+0OVvYOL3Ca3p4pj6 tXnQ== X-Gm-Message-State: AOJu0YxBzNijWMJWt6CCLPI9Vyl64zmnb1QmTYh1xAShTEqN7SUHy+/1 uLiefiACQ2MyFp/SG2z0hXvF/hkpHeYC1srz77rtJtDWp9MO/cFtp/sugx2n3pJ1rkddJmPcro+ J1Tb23NUOyrJvqGd7CvU8LWTtK7GbIXHs/kmyyzF4Mqy3+7M5/zxAGc5tR+CABPu7bbG0GcpJ/c F1KijA8vJoTH2oHip+/TIYNdCkz6bp13uEUFSITlTehsW/jE3p X-Gm-Gg: ASbGncsw6bwKLI1m3R5/a9r8IIZAfhy8v4AxcJyTSgqudPLxG4CfQMLyoU3fX/3JHX5 jc1jqfXyUNTh0n+0mmczKOWOYJaCQ/AYLFacnXvN60L9rt6ToQ9sNkCY0HwgReO9eS3Mz4BMgXc I8MihyxaKDHkIs5x9BsSjs8dejfwsgM2n6zse4gekKyiR6mEY6B1ISYJBn7DNEN1KsZI/E0KO4O vwlHZD7Sko1ubDhtwLwlcpXrZnb4IbRfeUnpEvkcpkHxVujYMUetAUrbYuzidT8wysikDrENIu+ nvSnUo9VwN0TJTFg05fIFWg4Ow6OiHfb X-Received: by 2002:a05:600c:1da7:b0:456:1b8b:b8c6 with SMTP id 5b1f17b1804b1-4561b8bbbf3mr26660005e9.14.1752489889192; Mon, 14 Jul 2025 03:44:49 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHGnLmL3APGndfptepWrP7aJt58jFVF0xV99rnqtzmW+5CMr6NcUHBMolv58MpEYfVkZQpmmQ== X-Received: by 2002:a05:600c:1da7:b0:456:1b8b:b8c6 with SMTP id 5b1f17b1804b1-4561b8bbbf3mr26659605e9.14.1752489888714; Mon, 14 Jul 2025 03:44:48 -0700 (PDT) Received: from localhost ([89.128.88.54]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-3b5e8e14ce6sm12240314f8f.68.2025.07.14.03.44.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 14 Jul 2025 03:44:47 -0700 (PDT) From: Javier Martinez Canillas To: linux-kernel@vger.kernel.org Cc: ipedrosa@redhat.com, Javier Martinez Canillas , Marcus Folkesson , David Airlie , Maarten Lankhorst , Maxime Ripard , Simona Vetter , Thomas Zimmermann , dri-devel@lists.freedesktop.org Subject: [PATCH v2 5/5] drm/sitronix/st7571-i2c: Add support for the ST7567 Controller Date: Mon, 14 Jul 2025 12:44:04 +0200 Message-ID: <20250714104421.323753-6-javierm@redhat.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250714104421.323753-1-javierm@redhat.com> References: <20250714104421.323753-1-javierm@redhat.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The Sitronix ST7567 is a monochrome Dot Matrix LCD Controller that has SPI, I2C and parallel interfaces. The st7571-i2c driver only has support for I2C so displays using other transport interfaces are currently not supported. The DRM_FORMAT_R1 pixel format and data commands are the same than what is used by the ST7571 controller, so only is needed a different callback that implements the expected initialization sequence for the ST7567 chip. Signed-off-by: Javier Martinez Canillas Reviewed-by: Marcus Folkesson Reviewed-by: Thomas Zimmermann --- Changes in v2: - Use a different parse DT function (Thomas Zimmermann). drivers/gpu/drm/sitronix/st7571-i2c.c | 74 +++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/drivers/gpu/drm/sitronix/st7571-i2c.c b/drivers/gpu/drm/sitron= ix/st7571-i2c.c index f9c4fedb3cca..1b820ff6a9dd 100644 --- a/drivers/gpu/drm/sitronix/st7571-i2c.c +++ b/drivers/gpu/drm/sitronix/st7571-i2c.c @@ -68,6 +68,9 @@ #define ST7571_SET_COLOR_MODE(c) (0x10 | FIELD_PREP(GENMASK(0, 0), (c))) #define ST7571_COMMAND_SET_NORMAL (0x00) =20 +/* ST7567 commands */ +#define ST7567_SET_LCD_BIAS(m) (0xa2 | FIELD_PREP(GENMASK(0, 0), (m))) + #define ST7571_PAGE_HEIGHT 8 =20 #define DRIVER_NAME "st7571" @@ -774,6 +777,32 @@ static int st7571_validate_parameters(struct st7571_de= vice *st7571) return 0; } =20 +static int st7567_parse_dt(struct st7571_device *st7567) +{ + struct device *dev =3D &st7567->client->dev; + struct device_node *np =3D dev->of_node; + struct display_timing dt; + int ret; + + ret =3D of_get_display_timing(np, "panel-timing", &dt); + if (ret) { + dev_err(dev, "Failed to get display timing from DT\n"); + return ret; + } + + of_property_read_u32(np, "width-mm", &st7567->width_mm); + of_property_read_u32(np, "height-mm", &st7567->height_mm); + + st7567->pformat =3D &st7571_monochrome; + st7567->bpp =3D 1; + + st7567->startline =3D dt.vfront_porch.typ; + st7567->nlines =3D dt.vactive.typ; + st7567->ncols =3D dt.hactive.typ; + + return 0; +} + static int st7571_parse_dt(struct st7571_device *st7571) { struct device *dev =3D &st7571->client->dev; @@ -819,6 +848,37 @@ static void st7571_reset(struct st7571_device *st7571) gpiod_set_value_cansleep(st7571->reset, 0); } =20 +static int st7567_lcd_init(struct st7571_device *st7567) +{ + /* + * Most of the initialization sequence is taken directly from the + * referential initial code in the ST7567 datasheet. + */ + u8 commands[] =3D { + ST7571_DISPLAY_OFF, + + ST7567_SET_LCD_BIAS(1), + + ST7571_SET_SEG_SCAN_DIR(0), + ST7571_SET_COM_SCAN_DIR(1), + + ST7571_SET_REGULATOR_REG(4), + ST7571_SET_CONTRAST_MSB, + ST7571_SET_CONTRAST_LSB(0x20), + + ST7571_SET_START_LINE_MSB, + ST7571_SET_START_LINE_LSB(st7567->startline), + + ST7571_SET_POWER(0x4), /* Power Control, VC: ON, VR: OFF, VF: OFF */ + ST7571_SET_POWER(0x6), /* Power Control, VC: ON, VR: ON, VF: OFF */ + ST7571_SET_POWER(0x7), /* Power Control, VC: ON, VR: ON, VF: ON */ + + ST7571_SET_ENTIRE_DISPLAY_ON(0), + }; + + return st7571_send_command_list(st7567, commands, ARRAY_SIZE(commands)); +} + static int st7571_lcd_init(struct st7571_device *st7571) { /* @@ -963,6 +1023,18 @@ static void st7571_remove(struct i2c_client *client) drm_dev_unplug(&st7571->dev); } =20 +struct st7571_panel_data st7567_config =3D { + .init =3D st7567_lcd_init, + .parse_dt =3D st7567_parse_dt, + .constraints =3D { + .min_nlines =3D 1, + .max_nlines =3D 64, + .min_ncols =3D 128, + .max_ncols =3D 128, + .support_grayscale =3D false, + }, +}; + struct st7571_panel_data st7571_config =3D { .init =3D st7571_lcd_init, .parse_dt =3D st7571_parse_dt, @@ -976,12 +1048,14 @@ struct st7571_panel_data st7571_config =3D { }; =20 static const struct of_device_id st7571_of_match[] =3D { + { .compatible =3D "sitronix,st7567", .data =3D &st7567_config }, { .compatible =3D "sitronix,st7571", .data =3D &st7571_config }, {}, }; MODULE_DEVICE_TABLE(of, st7571_of_match); =20 static const struct i2c_device_id st7571_id[] =3D { + { "st7567", 0 }, { "st7571", 0 }, { } }; --=20 2.49.0