Re: [PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-19 Thread Boris BREZILLON

On 19/06/2014 09:12, Bo Shen wrote:
> Hi Boris,
>
> On 06/10/2014 12:04 AM, Boris BREZILLON wrote:
>> diff --git a/arch/arm/boot/dts/sama5d33ek.dts
>> b/arch/arm/boot/dts/sama5d33ek.dts
>> index cbd6a3f..f2ab41d 100644
>> --- a/arch/arm/boot/dts/sama5d33ek.dts
>> +++ b/arch/arm/boot/dts/sama5d33ek.dts
>> @@ -36,9 +36,33 @@
>>   macb0: ethernet@f0028000 {
>>   status = "okay";
>>   };
>> +
>> +hlcdc: hlcdc@f003 {
>> +status = "okay";
>> +
>> +hlcdc-display-controller {
>> +atmel,panel = < 3 0>;
>
> One question here, in the driver code, it will configuration the frame
> buffer mode depends on this parameter.
> So, my question is if the framebuffer bits per pixel is different with
> output bits per pixel, how to setting it?
>
> For example, frame buffer use 16 bits/pixel, while output 24 bits/pixel.

Actually the HLCDC is responsible for converting input format (either
RGB or YUV) to output format (one of the four supported RGB formats).

AFAICT, the HLCDC always converts the input format in RGB888 and then
only use the relevant bits (i.e. if the output is RGB565, it will only
takes MSB for each color).

The REP field (available in all layer, e.g. LCDC_BASECFG4 for the base
layer) is here to tell how the HLCDC should expand to 24 bits format.

All this means that we don't have to bother about input to output format
conversion.

>
>> +};
>> +};
>>   };
>>   };
>>
>
> Best Regards,
> Bo Shen

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-19 Thread Bo Shen

Hi Boris,

On 06/10/2014 12:04 AM, Boris BREZILLON wrote:

diff --git a/arch/arm/boot/dts/sama5d33ek.dts b/arch/arm/boot/dts/sama5d33ek.dts
index cbd6a3f..f2ab41d 100644
--- a/arch/arm/boot/dts/sama5d33ek.dts
+++ b/arch/arm/boot/dts/sama5d33ek.dts
@@ -36,9 +36,33 @@
macb0: ethernet@f0028000 {
status = "okay";
};
+
+   hlcdc: hlcdc@f003 {
+   status = "okay";
+
+   hlcdc-display-controller {
+   atmel,panel = < 3 0>;


One question here, in the driver code, it will configuration the frame 
buffer mode depends on this parameter.
So, my question is if the framebuffer bits per pixel is different with 
output bits per pixel, how to setting it?


For example, frame buffer use 16 bits/pixel, while output 24 bits/pixel.


+   };
+   };
};
};



Best Regards,
Bo Shen
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-19 Thread Bo Shen

Hi Boris,

On 06/10/2014 12:04 AM, Boris BREZILLON wrote:

diff --git a/arch/arm/boot/dts/sama5d33ek.dts b/arch/arm/boot/dts/sama5d33ek.dts
index cbd6a3f..f2ab41d 100644
--- a/arch/arm/boot/dts/sama5d33ek.dts
+++ b/arch/arm/boot/dts/sama5d33ek.dts
@@ -36,9 +36,33 @@
macb0: ethernet@f0028000 {
status = okay;
};
+
+   hlcdc: hlcdc@f003 {
+   status = okay;
+
+   hlcdc-display-controller {
+   atmel,panel = panel 3 0;


One question here, in the driver code, it will configuration the frame 
buffer mode depends on this parameter.
So, my question is if the framebuffer bits per pixel is different with 
output bits per pixel, how to setting it?


For example, frame buffer use 16 bits/pixel, while output 24 bits/pixel.


+   };
+   };
};
};



Best Regards,
Bo Shen
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-19 Thread Boris BREZILLON

On 19/06/2014 09:12, Bo Shen wrote:
 Hi Boris,

 On 06/10/2014 12:04 AM, Boris BREZILLON wrote:
 diff --git a/arch/arm/boot/dts/sama5d33ek.dts
 b/arch/arm/boot/dts/sama5d33ek.dts
 index cbd6a3f..f2ab41d 100644
 --- a/arch/arm/boot/dts/sama5d33ek.dts
 +++ b/arch/arm/boot/dts/sama5d33ek.dts
 @@ -36,9 +36,33 @@
   macb0: ethernet@f0028000 {
   status = okay;
   };
 +
 +hlcdc: hlcdc@f003 {
 +status = okay;
 +
 +hlcdc-display-controller {
 +atmel,panel = panel 3 0;

 One question here, in the driver code, it will configuration the frame
 buffer mode depends on this parameter.
 So, my question is if the framebuffer bits per pixel is different with
 output bits per pixel, how to setting it?

 For example, frame buffer use 16 bits/pixel, while output 24 bits/pixel.

Actually the HLCDC is responsible for converting input format (either
RGB or YUV) to output format (one of the four supported RGB formats).

AFAICT, the HLCDC always converts the input format in RGB888 and then
only use the relevant bits (i.e. if the output is RGB565, it will only
takes MSB for each color).

The REP field (available in all layer, e.g. LCDC_BASECFG4 for the base
layer) is here to tell how the HLCDC should expand to 24 bits format.

All this means that we don't have to bother about input to output format
conversion.


 +};
 +};
   };
   };


 Best Regards,
 Bo Shen

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-09 Thread Boris BREZILLON
Enable LCD related nodes and reference panel node in the hlcdc (High
LCD Controller) controller on sama5d3xek boards.

Signed-off-by: Boris BREZILLON 
---
 arch/arm/boot/dts/sama5d31ek.dts | 24 
 arch/arm/boot/dts/sama5d33ek.dts | 24 
 arch/arm/boot/dts/sama5d34ek.dts | 24 
 arch/arm/boot/dts/sama5d36ek.dts | 24 
 4 files changed, 96 insertions(+)

diff --git a/arch/arm/boot/dts/sama5d31ek.dts b/arch/arm/boot/dts/sama5d31ek.dts
index 04eec0d..338f4c3 100644
--- a/arch/arm/boot/dts/sama5d31ek.dts
+++ b/arch/arm/boot/dts/sama5d31ek.dts
@@ -33,6 +33,14 @@
status = "okay";
};
 
+   hlcdc: hlcdc@f003 {
+   status = "okay";
+
+   hlcdc-display-controller {
+   atmel,panel = < 3 0>;
+   };
+   };
+
macb1: ethernet@f802c000 {
status = "okay";
};
@@ -46,6 +54,22 @@
};
};
 
+   bl_reg: backlight_regulator {
+   status = "okay";
+   };
+
+   panel_reg: panel_regulator {
+   status = "okay";
+   };
+
+   backlight: backlight {
+   status = "okay";
+   };
+
+   panel: panel {
+   status = "okay";
+   };
+
sound {
status = "okay";
};
diff --git a/arch/arm/boot/dts/sama5d33ek.dts b/arch/arm/boot/dts/sama5d33ek.dts
index cbd6a3f..f2ab41d 100644
--- a/arch/arm/boot/dts/sama5d33ek.dts
+++ b/arch/arm/boot/dts/sama5d33ek.dts
@@ -36,9 +36,33 @@
macb0: ethernet@f0028000 {
status = "okay";
};
+
+   hlcdc: hlcdc@f003 {
+   status = "okay";
+
+   hlcdc-display-controller {
+   atmel,panel = < 3 0>;
+   };
+   };
};
};
 
+   bl_reg: backlight_regulator {
+   status = "okay";
+   };
+
+   panel_reg: panel_regulator {
+   status = "okay";
+   };
+
+   backlight: backlight {
+   status = "okay";
+   };
+
+   panel: panel {
+   status = "okay";
+   };
+
sound {
status = "okay";
};
diff --git a/arch/arm/boot/dts/sama5d34ek.dts b/arch/arm/boot/dts/sama5d34ek.dts
index 878aa16..0d0049c 100644
--- a/arch/arm/boot/dts/sama5d34ek.dts
+++ b/arch/arm/boot/dts/sama5d34ek.dts
@@ -46,6 +46,14 @@
macb0: ethernet@f0028000 {
status = "okay";
};
+
+   hlcdc: hlcdc@f003 {
+   status = "okay";
+
+   hlcdc-display-controller {
+   atmel,panel = < 3 0>;
+   };
+   };
};
};
 
@@ -56,6 +64,22 @@
};
};
 
+   bl_reg: backlight_regulator {
+   status = "okay";
+   };
+
+   panel_reg: panel_regulator {
+   status = "okay";
+   };
+
+   backlight: backlight {
+   status = "okay";
+   };
+
+   panel: panel {
+   status = "okay";
+   };
+
sound {
status = "okay";
};
diff --git a/arch/arm/boot/dts/sama5d36ek.dts b/arch/arm/boot/dts/sama5d36ek.dts
index 59576c6..8350358 100644
--- a/arch/arm/boot/dts/sama5d36ek.dts
+++ b/arch/arm/boot/dts/sama5d36ek.dts
@@ -41,12 +41,36 @@
status = "okay";
};
 
+   hlcdc: hlcdc@f003 {
+   status = "okay";
+
+   hlcdc-display-controller {
+   atmel,panel = < 3 0>;
+   };
+   };
+
macb1: ethernet@f802c000 {
status = "okay";
};
};
};
 
+   bl_reg: backlight_regulator {
+   status = "okay";
+   };
+
+   panel_reg: panel_regulator {
+   status = "okay";
+   };
+
+   backlight: backlight {
+   status = "okay";
+   };
+
+   panel: panel {
+   status = "okay";
+   };
+
sound {
status = "okay";
};
-- 
1.8.3.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ 

[PATCH v2 7/7] ARM: at91/dt: enable the LCD panel on sama5d3xek boards

2014-06-09 Thread Boris BREZILLON
Enable LCD related nodes and reference panel node in the hlcdc (High
LCD Controller) controller on sama5d3xek boards.

Signed-off-by: Boris BREZILLON boris.brezil...@free-electrons.com
---
 arch/arm/boot/dts/sama5d31ek.dts | 24 
 arch/arm/boot/dts/sama5d33ek.dts | 24 
 arch/arm/boot/dts/sama5d34ek.dts | 24 
 arch/arm/boot/dts/sama5d36ek.dts | 24 
 4 files changed, 96 insertions(+)

diff --git a/arch/arm/boot/dts/sama5d31ek.dts b/arch/arm/boot/dts/sama5d31ek.dts
index 04eec0d..338f4c3 100644
--- a/arch/arm/boot/dts/sama5d31ek.dts
+++ b/arch/arm/boot/dts/sama5d31ek.dts
@@ -33,6 +33,14 @@
status = okay;
};
 
+   hlcdc: hlcdc@f003 {
+   status = okay;
+
+   hlcdc-display-controller {
+   atmel,panel = panel 3 0;
+   };
+   };
+
macb1: ethernet@f802c000 {
status = okay;
};
@@ -46,6 +54,22 @@
};
};
 
+   bl_reg: backlight_regulator {
+   status = okay;
+   };
+
+   panel_reg: panel_regulator {
+   status = okay;
+   };
+
+   backlight: backlight {
+   status = okay;
+   };
+
+   panel: panel {
+   status = okay;
+   };
+
sound {
status = okay;
};
diff --git a/arch/arm/boot/dts/sama5d33ek.dts b/arch/arm/boot/dts/sama5d33ek.dts
index cbd6a3f..f2ab41d 100644
--- a/arch/arm/boot/dts/sama5d33ek.dts
+++ b/arch/arm/boot/dts/sama5d33ek.dts
@@ -36,9 +36,33 @@
macb0: ethernet@f0028000 {
status = okay;
};
+
+   hlcdc: hlcdc@f003 {
+   status = okay;
+
+   hlcdc-display-controller {
+   atmel,panel = panel 3 0;
+   };
+   };
};
};
 
+   bl_reg: backlight_regulator {
+   status = okay;
+   };
+
+   panel_reg: panel_regulator {
+   status = okay;
+   };
+
+   backlight: backlight {
+   status = okay;
+   };
+
+   panel: panel {
+   status = okay;
+   };
+
sound {
status = okay;
};
diff --git a/arch/arm/boot/dts/sama5d34ek.dts b/arch/arm/boot/dts/sama5d34ek.dts
index 878aa16..0d0049c 100644
--- a/arch/arm/boot/dts/sama5d34ek.dts
+++ b/arch/arm/boot/dts/sama5d34ek.dts
@@ -46,6 +46,14 @@
macb0: ethernet@f0028000 {
status = okay;
};
+
+   hlcdc: hlcdc@f003 {
+   status = okay;
+
+   hlcdc-display-controller {
+   atmel,panel = panel 3 0;
+   };
+   };
};
};
 
@@ -56,6 +64,22 @@
};
};
 
+   bl_reg: backlight_regulator {
+   status = okay;
+   };
+
+   panel_reg: panel_regulator {
+   status = okay;
+   };
+
+   backlight: backlight {
+   status = okay;
+   };
+
+   panel: panel {
+   status = okay;
+   };
+
sound {
status = okay;
};
diff --git a/arch/arm/boot/dts/sama5d36ek.dts b/arch/arm/boot/dts/sama5d36ek.dts
index 59576c6..8350358 100644
--- a/arch/arm/boot/dts/sama5d36ek.dts
+++ b/arch/arm/boot/dts/sama5d36ek.dts
@@ -41,12 +41,36 @@
status = okay;
};
 
+   hlcdc: hlcdc@f003 {
+   status = okay;
+
+   hlcdc-display-controller {
+   atmel,panel = panel 3 0;
+   };
+   };
+
macb1: ethernet@f802c000 {
status = okay;
};
};
};
 
+   bl_reg: backlight_regulator {
+   status = okay;
+   };
+
+   panel_reg: panel_regulator {
+   status = okay;
+   };
+
+   backlight: backlight {
+   status = okay;
+   };
+
+   panel: panel {
+   status = okay;
+   };
+
sound {
status = okay;
};
-- 
1.8.3.2

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at