U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig
@ 2025-03-14  6:47 Svyatoslav Ryhel
  2025-03-14  6:47 ` [PATCH v1 1/1] " Svyatoslav Ryhel
  2025-03-14 16:21 ` [PATCH v1 0/1] " Tom Rini
  0 siblings, 2 replies; 5+ messages in thread
From: Svyatoslav Ryhel @ 2025-03-14  6:47 UTC (permalink / raw)
  To: Tom Rini, Anatolij Gustschin, Svyatoslav Ryhel, Marek Vasut,
	Jonas Schwöbel, Simon Glass, Anton Bambura
  Cc: u-boot

Since EDID only indicates supported standard timings, a large table with
detailed timing information is necessary, consuming significant space. To
mitigate this, the table is made configurable via kconfig, allowing it to
be excluded when not needed.

Svyatoslav Ryhel (1):
  video: edid: guard standard timings EDID expansion behind kconfig

 common/edid.c         | 6 ++++++
 drivers/video/Kconfig | 6 ++++++
 2 files changed, 12 insertions(+)

-- 
2.43.0


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH v1 1/1] video: edid: guard standard timings EDID expansion behind kconfig
  2025-03-14  6:47 [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig Svyatoslav Ryhel
@ 2025-03-14  6:47 ` Svyatoslav Ryhel
  2025-03-14 16:21 ` [PATCH v1 0/1] " Tom Rini
  1 sibling, 0 replies; 5+ messages in thread
From: Svyatoslav Ryhel @ 2025-03-14  6:47 UTC (permalink / raw)
  To: Tom Rini, Anatolij Gustschin, Svyatoslav Ryhel, Marek Vasut,
	Jonas Schwöbel, Simon Glass, Anton Bambura
  Cc: u-boot

Since EDID only indicates supported standard timings, a large table with
detailed timing information is necessary, consuming significant space. To
mitigate this, the table is made configurable via kconfig, allowing it to
be excluded when not needed.

Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
---
 common/edid.c         | 6 ++++++
 drivers/video/Kconfig | 6 ++++++
 2 files changed, 12 insertions(+)

diff --git a/common/edid.c b/common/edid.c
index e2ac7100a88..e5aa4ca494f 100644
--- a/common/edid.c
+++ b/common/edid.c
@@ -16,6 +16,7 @@
 #include <linux/ctype.h>
 #include <linux/string.h>
 
+#if CONFIG_IS_ENABLED(I2C_EDID_STANDARD)
 #define TIMING(c, ha, hfp, hbp, hsl, va, vfp, vbp, vsl, f)	\
 	.pixelclock = { (c), (c), (c) },			\
 	.hactive = { (ha), (ha), (ha) },			\
@@ -206,6 +207,7 @@ static const struct display_timing dmt_timings[] = {
 	{ TIMING(556188000, 4096, 8, 32, 40, 2160, 48, 8, 6,
 		 DISPLAY_FLAGS_HSYNC_HIGH | DISPLAY_FLAGS_VSYNC_LOW) },
 };
+#endif
 
 int edid_check_info(struct edid1_info *edid_info)
 {
@@ -417,6 +419,7 @@ static bool edid_get_standard_timing(struct edid1_info *edid, int i, unsigned in
 	return false;
 }
 
+#if CONFIG_IS_ENABLED(I2C_EDID_STANDARD)
 static bool edid_find_valid_standard_timing(struct edid1_info *buf,
 					    struct display_timing *timing,
 					    bool (*mode_valid)(void *priv,
@@ -446,6 +449,7 @@ static bool edid_find_valid_standard_timing(struct edid1_info *buf,
 
 	return found;
 }
+#endif
 
 int edid_get_timing_validate(u8 *buf, int buf_size,
 			     struct display_timing *timing,
@@ -493,10 +497,12 @@ int edid_get_timing_validate(u8 *buf, int buf_size,
 		}
 	}
 
+#if CONFIG_IS_ENABLED(I2C_EDID_STANDARD)
 	/* Look for timing in Standard Timings */
 	if (!found)
 		found = edid_find_valid_standard_timing(edid, timing, mode_valid,
 							mode_valid_priv);
+#endif
 
 	if (!found)
 		return -EINVAL;
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index b1ef73f3e5c..11d17076a96 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -721,6 +721,12 @@ config I2C_EDID
 	help
 	   This enables library for accessing EDID data from an LCD panel.
 
+config I2C_EDID_STANDARD
+	bool "Enable standard timings EDID library expansion"
+	depends on I2C_EDID
+	help
+	   This enables standard timings expansion for EDID data from an LCD panel.
+
 config DISPLAY
 	bool "Enable Display support"
 	depends on DM
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig
  2025-03-14  6:47 [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig Svyatoslav Ryhel
  2025-03-14  6:47 ` [PATCH v1 1/1] " Svyatoslav Ryhel
@ 2025-03-14 16:21 ` Tom Rini
  2025-03-14 16:47   ` Svyatoslav Ryhel
  1 sibling, 1 reply; 5+ messages in thread
From: Tom Rini @ 2025-03-14 16:21 UTC (permalink / raw)
  To: Svyatoslav Ryhel
  Cc: Anatolij Gustschin, Marek Vasut, Jonas Schwöbel, Simon Glass,
	Anton Bambura, u-boot

[-- Attachment #1: Type: text/plain, Size: 697 bytes --]

On Fri, Mar 14, 2025 at 08:47:19AM +0200, Svyatoslav Ryhel wrote:

> Since EDID only indicates supported standard timings, a large table with
> detailed timing information is necessary, consuming significant space. To
> mitigate this, the table is made configurable via kconfig, allowing it to
> be excluded when not needed.
> 
> Svyatoslav Ryhel (1):
>   video: edid: guard standard timings EDID expansion behind kconfig
> 
>  common/edid.c         | 6 ++++++
>  drivers/video/Kconfig | 6 ++++++
>  2 files changed, 12 insertions(+)

To be clear, when the flag is not enabled do we have something similar
to the old behavior, at least in the correctly functions case?

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig
  2025-03-14 16:21 ` [PATCH v1 0/1] " Tom Rini
@ 2025-03-14 16:47   ` Svyatoslav Ryhel
  2025-03-14 16:57     ` Tom Rini
  0 siblings, 1 reply; 5+ messages in thread
From: Svyatoslav Ryhel @ 2025-03-14 16:47 UTC (permalink / raw)
  To: Tom Rini
  Cc: Anatolij Gustschin, Marek Vasut, Jonas Schwöbel, Simon Glass,
	Anton Bambura, u-boot

пт, 14 бер. 2025 р. о 18:21 Tom Rini <trini@konsulko.com> пише:
>
> On Fri, Mar 14, 2025 at 08:47:19AM +0200, Svyatoslav Ryhel wrote:
>
> > Since EDID only indicates supported standard timings, a large table with
> > detailed timing information is necessary, consuming significant space. To
> > mitigate this, the table is made configurable via kconfig, allowing it to
> > be excluded when not needed.
> >
> > Svyatoslav Ryhel (1):
> >   video: edid: guard standard timings EDID expansion behind kconfig
> >
> >  common/edid.c         | 6 ++++++
> >  drivers/video/Kconfig | 6 ++++++
> >  2 files changed, 12 insertions(+)
>
> To be clear, when the flag is not enabled do we have something similar
> to the old behavior, at least in the correctly functions case?
>

As long as I2C_EDID_STANDARD is disabled the old behavior isn't
changed, there were performed a bit of code refactoring, in the
previous patch by Jonas, to simplify readability but nothing more then
that. Significant size increase is not detected as well, as long as
I2C_EDID_STANDARD=n

> --
> Tom

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig
  2025-03-14 16:47   ` Svyatoslav Ryhel
@ 2025-03-14 16:57     ` Tom Rini
  0 siblings, 0 replies; 5+ messages in thread
From: Tom Rini @ 2025-03-14 16:57 UTC (permalink / raw)
  To: Svyatoslav Ryhel
  Cc: Anatolij Gustschin, Marek Vasut, Jonas Schwöbel, Simon Glass,
	Anton Bambura, u-boot

[-- Attachment #1: Type: text/plain, Size: 1253 bytes --]

On Fri, Mar 14, 2025 at 06:47:26PM +0200, Svyatoslav Ryhel wrote:
> пт, 14 бер. 2025 р. о 18:21 Tom Rini <trini@konsulko.com> пише:
> >
> > On Fri, Mar 14, 2025 at 08:47:19AM +0200, Svyatoslav Ryhel wrote:
> >
> > > Since EDID only indicates supported standard timings, a large table with
> > > detailed timing information is necessary, consuming significant space. To
> > > mitigate this, the table is made configurable via kconfig, allowing it to
> > > be excluded when not needed.
> > >
> > > Svyatoslav Ryhel (1):
> > >   video: edid: guard standard timings EDID expansion behind kconfig
> > >
> > >  common/edid.c         | 6 ++++++
> > >  drivers/video/Kconfig | 6 ++++++
> > >  2 files changed, 12 insertions(+)
> >
> > To be clear, when the flag is not enabled do we have something similar
> > to the old behavior, at least in the correctly functions case?
> >
> 
> As long as I2C_EDID_STANDARD is disabled the old behavior isn't
> changed, there were performed a bit of code refactoring, in the
> previous patch by Jonas, to simplify readability but nothing more then
> that. Significant size increase is not detected as well, as long as
> I2C_EDID_STANDARD=n

Great, thanks for clarifying.

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-03-14 16:57 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-14  6:47 [PATCH v1 0/1] video: edid: guard standard timings EDID expansion behind kconfig Svyatoslav Ryhel
2025-03-14  6:47 ` [PATCH v1 1/1] " Svyatoslav Ryhel
2025-03-14 16:21 ` [PATCH v1 0/1] " Tom Rini
2025-03-14 16:47   ` Svyatoslav Ryhel
2025-03-14 16:57     ` Tom Rini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox