dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/6] Add display support on the stm32f746-disco board
@ 2023-06-19 16:55 Dario Binacchi
  2023-06-19 16:55 ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property Dario Binacchi
  2023-06-19 16:55 ` [PATCH v4 6/6] drm/stm: set framebuffer bit depth through DTS property Dario Binacchi
  0 siblings, 2 replies; 6+ messages in thread
From: Dario Binacchi @ 2023-06-19 16:55 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maxime Coquelin, Conor Dooley, Dario Binacchi,
	Krzysztof Kozlowski, Raphael Gallais-Pou, Yannick Fertre,
	Alexandre Torgue, dri-devel, devicetree, Rob Herring,
	Philippe Cornu, michael, Amarula patchwork, linux-stm32,
	linux-arm-kernel

The series adds support for the display on the stm32f746-disco board,
along with a generic patch that adds the "bpp" parameter to the stm-drm
module. The intention is to allow users to size, within certain limits,
the memory footprint required by the framebuffer.

Changes in v4:
- Use DTS property instead of module parameter to set the framebuffer bit depth.

Changes in v3:
- rename ltdc-pins-a-0 to ltdc-0.
- drop [4/6] dt-bindings: display: simple: add Rocktech RK043FN48H
  Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next):
  https://cgit.freedesktop.org/drm/drm-misc/commit/?id=c42a37a27c777d63961dd634a30f7c887949491a
- drop [5/6] drm/panel: simple: add support for Rocktech RK043FN48H panel
  Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)
  https://cgit.freedesktop.org/drm/drm-misc/commit/?id=13cdd12a9f934158f4ec817cf048fcb4384aa9dc

Dario Binacchi (6):
  ARM: dts: stm32: add ltdc support on stm32f746 MCU
  ARM: dts: stm32: add pin map for LTDC on stm32f7
  ARM: dts: stm32: support display on stm32f746-disco board
  dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property
  ARM: dts: stm32: set framebuffer bit depth on stm32f746-disco
  drm/stm: set framebuffer bit depth through DTS property

 .../bindings/display/st,stm32-ltdc.yaml       |  6 +++
 arch/arm/boot/dts/stm32f7-pinctrl.dtsi        | 35 +++++++++++++
 arch/arm/boot/dts/stm32f746-disco.dts         | 52 +++++++++++++++++++
 arch/arm/boot/dts/stm32f746.dtsi              | 10 ++++
 drivers/gpu/drm/stm/drv.c                     |  6 ++-
 5 files changed, 108 insertions(+), 1 deletion(-)

-- 
2.32.0


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

* [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property
  2023-06-19 16:55 [PATCH v4 0/6] Add display support on the stm32f746-disco board Dario Binacchi
@ 2023-06-19 16:55 ` Dario Binacchi
  2023-06-19 17:17   ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property Rob Herring
  2023-06-19 20:18   ` Conor Dooley
  2023-06-19 16:55 ` [PATCH v4 6/6] drm/stm: set framebuffer bit depth through DTS property Dario Binacchi
  1 sibling, 2 replies; 6+ messages in thread
From: Dario Binacchi @ 2023-06-19 16:55 UTC (permalink / raw)
  To: linux-kernel
  Cc: Maxime Coquelin, Conor Dooley, Dario Binacchi,
	Krzysztof Kozlowski, Raphael Gallais-Pou, Yannick Fertre,
	Alexandre Torgue, dri-devel, devicetree, Rob Herring,
	Philippe Cornu, michael, Amarula patchwork, linux-stm32,
	linux-arm-kernel

Boards that use the STM32F{4,7} series have limited amounts of RAM. The
added property allows to size, within certain limits, the memory footprint
required by the framebuffer.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---

(no changes since v1)

 .../devicetree/bindings/display/st,stm32-ltdc.yaml          | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml b/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
index d6ea4d62a2cf..1c3a3653579f 100644
--- a/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
+++ b/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
@@ -42,6 +42,12 @@ properties:
       - for internal dpi input of the MIPI DSI host controller.
       Note: These 2 endpoints cannot be activated simultaneously.
 
+  st,fb-bpp:
+    $ref: /schemas/types.yaml#/definitions/uint32
+    description: |
+      bit depth of framebuffer (8, 16 or 32)
+    maxItems: 1
+
 required:
   - compatible
   - reg
-- 
2.32.0


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

* [PATCH v4 6/6] drm/stm: set framebuffer bit depth through DTS property
  2023-06-19 16:55 [PATCH v4 0/6] Add display support on the stm32f746-disco board Dario Binacchi
  2023-06-19 16:55 ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property Dario Binacchi
@ 2023-06-19 16:55 ` Dario Binacchi
  1 sibling, 0 replies; 6+ messages in thread
From: Dario Binacchi @ 2023-06-19 16:55 UTC (permalink / raw)
  To: linux-kernel
  Cc: Dario Binacchi, Maxime Coquelin, Raphael Gallais-Pou,
	Yannick Fertre, Alexandre Torgue, dri-devel, Philippe Cornu,
	michael, Amarula patchwork, linux-stm32, linux-arm-kernel

The patch, which is backwards compatible, sets the bit depth of the
framebuffer using the optional property 'st,fb-bpp' in the DTS.

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>

---

Changes in v4:
- Use DTS property instead of module parameter to set the framebuffer bit depth.

Changes in v3:
- drop [4/6] dt-bindings: display: simple: add Rocktech RK043FN48H
  Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next):
  https://cgit.freedesktop.org/drm/drm-misc/commit/?id=c42a37a27c777d63961dd634a30f7c887949491a
- drop [5/6] drm/panel: simple: add support for Rocktech RK043FN48H panel
  Applied to https://anongit.freedesktop.org/git/drm/drm-misc.git (drm-misc-next)
  https://cgit.freedesktop.org/drm/drm-misc/commit/?id=13cdd12a9f934158f4ec817cf048fcb4384aa9dc

 drivers/gpu/drm/stm/drv.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/stm/drv.c b/drivers/gpu/drm/stm/drv.c
index 422220df7d8c..7a61a3c63469 100644
--- a/drivers/gpu/drm/stm/drv.c
+++ b/drivers/gpu/drm/stm/drv.c
@@ -180,7 +180,9 @@ static const struct dev_pm_ops drv_pm_ops = {
 static int stm_drm_platform_probe(struct platform_device *pdev)
 {
 	struct device *dev = &pdev->dev;
+	struct device_node *np = pdev->dev.of_node;
 	struct drm_device *ddev;
+	u32 fb_bpp = 16;
 	int ret;
 
 	DRM_DEBUG("%s\n", __func__);
@@ -203,7 +205,9 @@ static int stm_drm_platform_probe(struct platform_device *pdev)
 	if (ret)
 		goto err_put;
 
-	drm_fbdev_dma_setup(ddev, 16);
+	of_property_read_u32(np, "st,fb-bpp", &fb_bpp);
+
+	drm_fbdev_dma_setup(ddev, fb_bpp);
 
 	return 0;
 
-- 
2.32.0


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

* Re: [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property
  2023-06-19 16:55 ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property Dario Binacchi
@ 2023-06-19 17:17   ` Rob Herring
  2023-06-19 20:18   ` Conor Dooley
  1 sibling, 0 replies; 6+ messages in thread
From: Rob Herring @ 2023-06-19 17:17 UTC (permalink / raw)
  To: Dario Binacchi
  Cc: devicetree, Conor Dooley, Raphael Gallais-Pou, Maxime Coquelin,
	Amarula patchwork, Yannick Fertre, Alexandre Torgue, dri-devel,
	linux-kernel, Rob Herring, Philippe Cornu, Krzysztof Kozlowski,
	michael, linux-stm32, linux-arm-kernel


On Mon, 19 Jun 2023 18:55:23 +0200, Dario Binacchi wrote:
> Boards that use the STM32F{4,7} series have limited amounts of RAM. The
> added property allows to size, within certain limits, the memory footprint
> required by the framebuffer.
> 
> Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
> ---
> 
> (no changes since v1)
> 
>  .../devicetree/bindings/display/st,stm32-ltdc.yaml          | 6 ++++++
>  1 file changed, 6 insertions(+)
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml: properties:st,fb-bpp:maxItems: False schema does not allow 1
	from schema $id: http://devicetree.org/meta-schemas/core.yaml#

doc reference errors (make refcheckdocs):

See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20230619165525.1035243-5-dario.binacchi@amarulasolutions.com

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


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

* Re: [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property
  2023-06-19 16:55 ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property Dario Binacchi
  2023-06-19 17:17   ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property Rob Herring
@ 2023-06-19 20:18   ` Conor Dooley
  2023-06-19 22:11     ` Rob Herring
  1 sibling, 1 reply; 6+ messages in thread
From: Conor Dooley @ 2023-06-19 20:18 UTC (permalink / raw)
  To: Dario Binacchi
  Cc: Maxime Coquelin, Conor Dooley, Krzysztof Kozlowski,
	Raphael Gallais-Pou, Yannick Fertre, Alexandre Torgue, dri-devel,
	linux-kernel, devicetree, Rob Herring, Philippe Cornu, michael,
	Amarula patchwork, linux-stm32, linux-arm-kernel

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

Hey,

On Mon, Jun 19, 2023 at 06:55:23PM +0200, Dario Binacchi wrote:
> Boards that use the STM32F{4,7} series have limited amounts of RAM. The
> added property allows to size, within certain limits, the memory footprint
> required by the framebuffer.

Hmm, this sounds quite a lot like "software policy", since the actual
display doesn't have these limitations. Rob, Krzysztof?

> 
> Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
> ---
> 
> (no changes since v1)

Really?
https://lore.kernel.org/all/?q=dfn:st,stm32-ltdc.yaml%20

You sure this shouldn't be "new in v4"?

>  .../devicetree/bindings/display/st,stm32-ltdc.yaml          | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml b/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
> index d6ea4d62a2cf..1c3a3653579f 100644
> --- a/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
> +++ b/Documentation/devicetree/bindings/display/st,stm32-ltdc.yaml
> @@ -42,6 +42,12 @@ properties:
>        - for internal dpi input of the MIPI DSI host controller.
>        Note: These 2 endpoints cannot be activated simultaneously.
>  
> +  st,fb-bpp:

Is there not a more understandable property name than this?
Maybe I just had to think about it because fbdev stuff aint something
I've worked with...

> +    $ref: /schemas/types.yaml#/definitions/uint32
> +    description: |
> +      bit depth of framebuffer (8, 16 or 32)
> +    maxItems: 1

Why not make it an enum, since there are only 4 values?

Cheers,
Conor.

> +
>  required:
>    - compatible
>    - reg
> -- 
> 2.32.0
> 

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

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

* Re: [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property
  2023-06-19 20:18   ` Conor Dooley
@ 2023-06-19 22:11     ` Rob Herring
  0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2023-06-19 22:11 UTC (permalink / raw)
  To: Conor Dooley
  Cc: Maxime Coquelin, Conor Dooley, michael, Krzysztof Kozlowski,
	Raphael Gallais-Pou, Yannick Fertre, linux-kernel, dri-devel,
	Alexandre Torgue, devicetree, Philippe Cornu, Dario Binacchi,
	Amarula patchwork, linux-stm32, linux-arm-kernel

On Mon, Jun 19, 2023 at 09:18:25PM +0100, Conor Dooley wrote:
> Hey,
> 
> On Mon, Jun 19, 2023 at 06:55:23PM +0200, Dario Binacchi wrote:
> > Boards that use the STM32F{4,7} series have limited amounts of RAM. The
> > added property allows to size, within certain limits, the memory footprint
> > required by the framebuffer.
> 
> Hmm, this sounds quite a lot like "software policy", since the actual
> display doesn't have these limitations. Rob, Krzysztof?

Indeed. This doesn't belong in DT.

Rob


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

end of thread, other threads:[~2023-06-19 22:11 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-19 16:55 [PATCH v4 0/6] Add display support on the stm32f746-disco board Dario Binacchi
2023-06-19 16:55 ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st, fb-bpp property Dario Binacchi
2023-06-19 17:17   ` [PATCH v4 4/6] dt-bindings: display: stm32-ltdc: add optional st,fb-bpp property Rob Herring
2023-06-19 20:18   ` Conor Dooley
2023-06-19 22:11     ` Rob Herring
2023-06-19 16:55 ` [PATCH v4 6/6] drm/stm: set framebuffer bit depth through DTS property Dario Binacchi

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