mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Philippe Leduc <ledphilippe@gmail.com>
To: Sascha Hauer <s.hauer@pengutronix.de>
Cc: barebox@lists.infradead.org
Subject: Re: Help configuring i.MX6 IPUv3 with a parrallel display
Date: Tue, 23 Feb 2016 12:47:46 +0100	[thread overview]
Message-ID: <CABQt-U=+f_5EJvw=9FFbw2cR2A54te6WN3Dgn4jtyuoPvC+CzQ@mail.gmail.com> (raw)
In-Reply-To: <20160223083236.GA3939@pengutronix.de>

> Parallel display support for IPUv3 is not yet implemented.
I could have searched a long time ^^' (Fortunately there is the mailing list!)

I tried to add the simple panel but I do not get any framebuffer?

Here is the output of devinfo panel.13:
Driver: simple-panel
Bus: platform
Device node: /panel
panel {
        compatible = "simple-panel";
        status = "okay";
        display-timings {
                clock-frequency = <0x895440 0xe4e1c0>;
                hactive = <0x1e0>;
                vactive = <0x110>;
                hfront-porch = <0x2 0x2 0x52>;
                hback-porch = <0x2 0x2 0x29>;
                hsync-len = <0x2 0x29 0x29>;
                vback-porch = <0x1 0x2 0xb>;
                vfront-porch = <0x1 0x2 0xe3>;
                vsync-len = <0x1 0xa 0xb>;
                pixelclk-active = <0x1>;
                hsync-active = <0x0>;
                vsync-active = <0x0>;
                de-active = <0x1>;
        };
        port {
                enpoint {
                        remote-endpoint = <0x3d>;
                        linux,phandle = <0x2b>;
                        phandle = <0x2b>;
                };
        };
};

So it seems that the driver is loaded, but there is no entry point for
the 'userspace'.


> Note that this binding is not compatible with the kernel
since the maintainer refuses to let display timings into the device tree
for simple panels.
OK, good to know.


Philippe LEDUC
ledphilippe@gmail.com


2016-02-23 9:32 GMT+01:00 Sascha Hauer <s.hauer@pengutronix.de>:
> On Mon, Feb 22, 2016 at 05:41:01PM +0100, Philippe Leduc wrote:
>> Hello,
>>
>> I would like to use the barebox framebuffer on a iMX6S chip. My goal
>> is to display a splashscreen. However, I can't manage to use the
>> framebuffer for now...
>>
>> Here is the output of "devinfo fb0":
>> Resources:
>>   num: 0
>>   start: 0x00000000
>>   size: 0x00000000
>> Available modes:
>> Parameters:
>>   enable: 0
>>   mode_name: invalid:0
>>   shadowfb: 1
>>
>> Is this a correct behavior that there is NO availables modes? I do not
>> manage to add one through the DTS.
>>
>> If I try to enable the framebuffer (fb0.enable=1), barebox hangs:
>> fb0.enable=1
>> unable to handle NULL pointer dereference at address 0x0000001d
>> pc : [<2ff1ab1c>]    lr : [<2ff17f41>]
>> sp : 2ffffa3c  ip : 2ff1a3fa  fp : 2ffffa78
>> r10: 20212d0c  r9 : 00000000  r8 : 00000000
>> r7 : 20024210  r6 : f57fffff  r5 : 0c000000  r4 : 0000001d
>> r3 : 2ff1a1e5  r2 : 0c000000  r1 : 0000005c  r0 : 00000022
>> Flags: nzcv  IRQs off  FIQs off  Mode SVC_32
>> [<2ff1ab1c>] (clk_is_enabled+0x34/0x38) from [<7f8d1fc0>] (0x7f8d1fc0)
>>
>> [<2ff389d9>] (unwind_backtrace+0x1/0x58) from [<2ff00d19>] (panic+0x1d/0x34)
>> [<2ff00d19>] (panic+0x1d/0x34) from [<2ff38e7d>] (do_exception+0xd/0x10)
>> [<2ff38e7d>] (do_exception+0xd/0x10) from [<2ff38edd>] (do_data_abort+0x21/0x2c)
>> [<2ff38edd>] (do_data_abort+0x21/0x2c) from [<2ff38bd4>] (do_abort_6+0x48/0x54)
>> Switch to console [serial0]
>>
>> Here is what I put in the DTS to enable the display:
>>
>> display0: display@di0 {
>>       compatible = "fsl,imx-parallel-display";
>> //      crtcs = <&ipu1 0>;
>>       interface-pix-fmt = "rgb24";
>>       pinctrl-names = "default";
>>       pinctrl-0 = <&pinctrl_ipu_disp>;
>>       status = "okay";
>>
>>       display-timings {
>>         rk043fn07h {
>>           native-mode;
>>           clock-frequency = <9000000 15000000>;
>>           hactive = <480>;
>>           vactive = <272>;
>>           hfront-porch = <2 2 82>;
>>           hback-porch = <2 2 41>;
>>           hsync-len = <2 41 41>;
>>           vback-porch = <1 2 11>;
>>           vfront-porch = <1 2 227>;
>>           vsync-len = <1 10 11>;
>>           pixelclk-active = <1>;
>>           hsync-active = <0>;
>>           vsync-active = <0>;
>>           de-active = <1>;
>>         };
>>       };
>>
>>       port {
>>         display0_in: endpoint {
>>           remote-endpoint = <&ipu1_di0_disp0>;
>>         };
>>       };
>>
>>
>> &ipu1_di0_disp0 {
>>   remote-endpoint = <&display0_in>;
>> };
>
> Parallel display support for IPUv3 is not yet implemented. What's
> missing is a driver that matches to "fsl,imx-parallel-display", calls
> vpl_register on its own node and returns the display timings parsed from
> device tree in the VPL_GET_VIDEOMODES callback.
>
> You could try the following binding instead. It doesn't use the
> "fsl,imx-parallel-display" compatible but the "simple-panel" binding
> instead. Since IPU parallel display support is a no-op anyway this
> should work. Note that this binding is not compatible with the kernel
> since the maintainer refuses to let display timings into the device tree
> for simple panels.
>
> panel {
>         compatible = "simple-panel";
>
>         display-timings {
>                 /* your timings here */
>         };
>
>         port {
>                 display0_in: enpoint {
>                         remote-endpoint = <&ipu1_di0_disp0>;
>                 };
>         };
> };
>
> &ipu1_di0_disp0 {
>         interface-pix-fmt = "rgb24";
>         remote-endpoint = <&display0_in>;
> };
>
> Sascha
>
> --
> Pengutronix e.K.                           |                             |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2016-02-23 11:48 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-22 16:41 Philippe Leduc
2016-02-23  8:32 ` Sascha Hauer
2016-02-23 11:47   ` Philippe Leduc [this message]
2016-02-24  8:22     ` Philippe Leduc
2016-02-24 11:15       ` Sascha Hauer
2016-02-24 12:39         ` Philippe Leduc
2016-02-24 12:43           ` Sascha Hauer
2016-02-24 12:50             ` Philippe Leduc
2016-02-24 13:46               ` Philippe Leduc
2016-02-24 18:15                 ` Sascha Hauer
2016-02-25  8:44                   ` Philippe Leduc
2016-02-25  9:16                 ` Holger Schurig

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CABQt-U=+f_5EJvw=9FFbw2cR2A54te6WN3Dgn4jtyuoPvC+CzQ@mail.gmail.com' \
    --to=ledphilippe@gmail.com \
    --cc=barebox@lists.infradead.org \
    --cc=s.hauer@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox