Thread (1 message) 1 message, 1 author, 2014-02-14

Re: How to select between different display timings?

From: Dirk Behme <hidden>
Date: 2014-02-14 17:35:25
Also in: linux-arm-kernel

Am 14.02.2014 15:02, schrieb Lothar Waßmann:
Hi,

Dirk Behme wrote:
quoted
Hi Lothar and Shawn,

On 08.08.2013 14:51, Lothar Waßmann wrote:
quoted
- add Copyright header
- use label references for better readability
- sort the entries alphabetically
- add some aliases used by U-Boot to edit the DT data

Signed-off-by: Lothar Waßmann <redacted>
---
   arch/arm/boot/dts/imx28-tx28.dts |  693 +++++++++++++++++++++++++++++++++-----
   1 files changed, 611 insertions(+), 82 deletions(-)
diff --git a/arch/arm/boot/dts/imx28-tx28.dts b/arch/arm/boot/dts/imx28-tx28.dts
index 37be532..866af60 100644
--- a/arch/arm/boot/dts/imx28-tx28.dts
+++ b/arch/arm/boot/dts/imx28-tx28.dts
...
quoted
+&lcdif {
+       pinctrl-names = "default";
+       pinctrl-0 = <&lcdif_24bit_pins_a &lcdif_sync_pins_a &lcdif_ctrl_pins_a>;
+       lcd-supply = <&reg_lcd>;
+       display = <&display>;
+       status = "okay";
+
+       display: display@0 {
+               bits-per-pixel = <32>;
+               bus-width = <24>;
+
+               display-timings {
+                       native-mode = <&timing5>;
                             ^^^^^^^^^^^^^^^^^^^^^^^^^
quoted
quoted
+                       timing0: timing0 {
[...]
quoted
quoted
+                       };
+               };
+       };
+};
Being no graphics expert, looking at above device tree change, I'd like
to understand how this can be used to switch between different display
timings?

In the kernel, I've found the code which selects the default/native-mode
(of_display_timing.c). But, as here, if there is a native/default mode,
there are alternative modes. I haven't understood how and who to select
these other modes? In this case, how could the alternative modes
timing0/1/2/3/4 be selected in the kernel?

Do you have any pointers regarding this?
You need to set the property 'native-mode' to the phandle of the
display-timings entry like marked above.
Hmm, let's see if we talk about the same thing ;) Let me rephrase my 
questions:

Using above example and booting a system with the resulting .dtb, 
timing5 is selected at boot time, correct?

Assuming I want to use timing1 instead: who would set when the 
property 'native-mode' to &timing1?

Can the switch to

native-mode = <&timing1>;

only be done at compile time of the dts -> dtb? Or can this be done at 
boot/kernel run time, too?

In the end, I'm looking for a way to have several timings like above 
in the device tree, and select one at kernel boot time based on the 
display detected. Would this be possible?

Many thanks and best regards

Dirk


--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help