diff mbox series

dt-bindings: display: add missing simple-framebuffer formats

Message ID 20210828110206.142899-1-luca@z3ntu.xyz (mailing list archive)
State New, archived
Headers show
Series dt-bindings: display: add missing simple-framebuffer formats | expand

Commit Message

Luca Weiss Aug. 28, 2021, 11:02 a.m. UTC
Document all formats currently present in include/linux/platform_data/
simplefb.h

Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
---
 .../bindings/display/simple-framebuffer.yaml         | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Rob Herring (Arm) Aug. 31, 2021, 9:30 p.m. UTC | #1
On Sat, Aug 28, 2021 at 01:02:05PM +0200, Luca Weiss wrote:
> Document all formats currently present in include/linux/platform_data/
> simplefb.h
> 
> Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> ---
>  .../bindings/display/simple-framebuffer.yaml         | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> index c2499a7906f5..c1acd2859ae8 100644
> --- a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> +++ b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> @@ -83,13 +83,25 @@ properties:
>    format:
>      description: >
>        Format of the framebuffer:
> +        * `a1r5g5b5` - 16-bit pixels, d[15]=a, d[14:10]=r, d[9:5]=g, d[4:0]=b
> +        * `a2r10g10b10` - 32-bit pixels, d[31:30]=a, d[29:20]=r, d[19:10]=g, d[9:0]=b

Not a new problem, but are these 32-bit big or little endian words? That 
should be figured out before we add more.

>          * `a8b8g8r8` - 32-bit pixels, d[31:24]=a, d[23:16]=b, d[15:8]=g, d[7:0]=r
> +        * `a8r8g8b8` - 32-bit pixels, d[31:24]=a, d[23:16]=r, d[15:8]=g, d[7:0]=b
>          * `r5g6b5` - 16-bit pixels, d[15:11]=r, d[10:5]=g, d[4:0]=b
> +        * `r5g5b5a1` - 16-bit pixels, d[15:11]=r, d[10:6]=g, d[5:1]=b, d[0]=a
> +        * `r8g8b8` - 24-bit pixels, d[23:16]=r, d[15:8]=g, d[7:0]=b
> +        * `x1r5g5b5` - 16-bit pixels, d[14:10]=r, d[9:5]=g, d[4:0]=b
>          * `x2r10g10b10` - 32-bit pixels, d[29:20]=r, d[19:10]=g, d[9:0]=b
>          * `x8r8g8b8` - 32-bit pixels, d[23:16]=r, d[15:8]=g, d[7:0]=b
>      enum:
> +      - a1r5g5b5
> +      - a2r10g10b10
>        - a8b8g8r8
> +      - a8r8g8b8
>        - r5g6b5
> +      - r5g5b5a1
> +      - r8g8b8
> +      - x1r5g5b5
>        - x2r10g10b10
>        - x8r8g8b8
>  
> -- 
> 2.33.0
> 
>
Luca Weiss Sept. 1, 2021, 7:29 p.m. UTC | #2
Hi Rob,

On Dienstag, 31. August 2021 23:30:15 CEST Rob Herring wrote:
> On Sat, Aug 28, 2021 at 01:02:05PM +0200, Luca Weiss wrote:
> > Document all formats currently present in include/linux/platform_data/
> > simplefb.h
> > 
> > Signed-off-by: Luca Weiss <luca@z3ntu.xyz>
> > ---
> > 
> >  .../bindings/display/simple-framebuffer.yaml         | 12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> > 
> > diff --git
> > a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> > b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml index
> > c2499a7906f5..c1acd2859ae8 100644
> > --- a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> > +++ b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
> > 
> > @@ -83,13 +83,25 @@ properties:
> >    format:
> >      description: >
> >      
> >        Format of the framebuffer:
> > +        * `a1r5g5b5` - 16-bit pixels, d[15]=a, d[14:10]=r, d[9:5]=g,
> > d[4:0]=b +        * `a2r10g10b10` - 32-bit pixels, d[31:30]=a,
> > d[29:20]=r, d[19:10]=g, d[9:0]=b
> Not a new problem, but are these 32-bit big or little endian words? That
> should be figured out before we add more.

As I'm neither involved in the driver nor really have any knowledge on pixel 
formats, maybe the maintainers of the binding can help out here?
(Bartlomiej Zolnierkiewicz & Hans de Goede, both are CC'ed)

I can probably dig through the sources and guess but documentation should be 
written without guessing :)

Regards
Luca
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
index c2499a7906f5..c1acd2859ae8 100644
--- a/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
+++ b/Documentation/devicetree/bindings/display/simple-framebuffer.yaml
@@ -83,13 +83,25 @@  properties:
   format:
     description: >
       Format of the framebuffer:
+        * `a1r5g5b5` - 16-bit pixels, d[15]=a, d[14:10]=r, d[9:5]=g, d[4:0]=b
+        * `a2r10g10b10` - 32-bit pixels, d[31:30]=a, d[29:20]=r, d[19:10]=g, d[9:0]=b
         * `a8b8g8r8` - 32-bit pixels, d[31:24]=a, d[23:16]=b, d[15:8]=g, d[7:0]=r
+        * `a8r8g8b8` - 32-bit pixels, d[31:24]=a, d[23:16]=r, d[15:8]=g, d[7:0]=b
         * `r5g6b5` - 16-bit pixels, d[15:11]=r, d[10:5]=g, d[4:0]=b
+        * `r5g5b5a1` - 16-bit pixels, d[15:11]=r, d[10:6]=g, d[5:1]=b, d[0]=a
+        * `r8g8b8` - 24-bit pixels, d[23:16]=r, d[15:8]=g, d[7:0]=b
+        * `x1r5g5b5` - 16-bit pixels, d[14:10]=r, d[9:5]=g, d[4:0]=b
         * `x2r10g10b10` - 32-bit pixels, d[29:20]=r, d[19:10]=g, d[9:0]=b
         * `x8r8g8b8` - 32-bit pixels, d[23:16]=r, d[15:8]=g, d[7:0]=b
     enum:
+      - a1r5g5b5
+      - a2r10g10b10
       - a8b8g8r8
+      - a8r8g8b8
       - r5g6b5
+      - r5g5b5a1
+      - r8g8b8
+      - x1r5g5b5
       - x2r10g10b10
       - x8r8g8b8