Thank you for your response!

I don't have any expansion header so I disabled the cape manager. I wonder
if this effects the behaviour of the tilcdc.

I'll check my pinmux against yours and add in the exclusive use and see if
it has an effect.

Thanks again,

Dave

On Tue, Oct 9, 2018, 14:38 <[email protected]> wrote:

> In my experience, the LCD driver runs great w/ a panel attached or not-
> you can probe the signals. tilcdc driver should be loading and you should
> see an /dev/fb0.
>
> Not sure what
> blue-and-red-wiring = "straight";
> is but that shouldn't be a big deal.
>
> I've checked your DT against mine, it's basically the same. I vaguely
> remember that error, but I can't remember if I got rid of it or what.
>
> That being said, can I see your lcd_pins node ("pinctrl-0") to make sure
> it's the same as mine? Mine' s called "bb_lcd_lcd_pins" but it's this:
>
>
> bb_lcd_lcd_pins: pinmux_bb_lcd_lcd_pins {
>     pinctrl-single,pins= <
>      0x0A0 (((1 << 3)) | 0)
>      0x0A4 (((1 << 3)) | 0)
>      0x0A8 (((1 << 3)) | 0)
>      0x0AC (((1 << 3)) | 0)
>      0x0B0 (((1 << 3)) | 0)
>      0x0B4 (((1 << 3)) | 0)
>      0x0B8 (((1 << 3)) | 0)
>      0x0BC (((1 << 3)) | 0)
>      0x0C0 (((1 << 3)) | 0)
>      0x0C4 (((1 << 3)) | 0)
>      0x0C8 (((1 << 3)) | 0)
>      0x0CC (((1 << 3)) | 0)
>      0x0D0 (((1 << 3)) | 0)
>      0x0D4 (((1 << 3)) | 0)
>      0x0D8 (((1 << 3)) | 0)
>      0x0DC (((1 << 3)) | 0)
>
>      0x0E0 (((1 << 3)) | 0)
>      0x0E4 (((1 << 3)) | 0)
>      0x0E8 (((1 << 3)) | 0)
>      0x0EC (((1 << 3)) | 0)
>     >;
>    };
>
> I also have "lcdc" in exclusive use.
>
>
> On Tuesday, October 9, 2018 at 9:38:22 AM UTC-4, David M wrote:
>>
>>
>> Hello,
>>
>> I designed a custom board based off of the OSD335x-SM. So, from the
>> kernel perspective, the board looks a lot like the pocket beaglebone. In
>> order to get the board to boot I did the following:
>>
>>
>>    - I reprogrammed the EEPROM so that U-Boot would boot
>>    - Installed the latest Beaglebone image
>>    <https://beagleboard.org/latest-images> on an SDCard
>>    - Configured the DTS to behave like a pocket beaglebone
>>    - Modified uEnv.txt to not load capes dynamically and use my DTS file
>>
>>
>> The board booted fine.
>>
>> I used Kernel build repo
>> <https://github.com/RobertCNelson/ti-linux-kernel-dev> developed by
>> Robert C Nelson to get a build-able version of the kernel. I can now create
>> a custom version of the kernel DTS.
>>
>> *Now I want to get the LCD screen working*
>>
>> I have an 5 Inch New Haven LCD screen
>> <http://www.newhavendisplay.com/specs/NHD-5.0-800480TF-ATXL-CTP.pdf>
>> attached to the board and I've connected only 16 of the 24-bit color in an
>> RGB565 format.
>>
>> I've modified my DTS file to include support for the LCD Panel following
>> the instructions in:
>>
>>
>>    -
>>    <Kernel>/Documentation/devicetree/bindings/display/tilcdc/tilcdc.txt,
>>    - <Kernel>/Documentation/devicetree/bindings/display/tilcdc/panel.txt
>>    - New Havel 5 Inch LCD Cape DTS File
>>    <http://www.cembsoft.com/user/lcdCape/nh5cape/BB-BONE-NH5C-02-A0.dts>
>>
>>
>> The relevant portions of my DTS file are here:
>>
>>
>> / {
>>
>>   lcd_backlight: backlight {
>>     status = "okay";
>>     compatible = "gpio-backlight";
>>     //brightness-levels = <0 51 53 56 62 75 101 152 255>;
>>     //default-brightness-level = <8>;
>>     //default-brightness-level = <0>;
>>     pinctrl-names = "default";
>>     pinctrl-0 = <&backlight_pin>;
>>     gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
>>     //default-on;
>>     //default-off;
>>   };
>>
>>
>>   lcd0:panel {
>>     compatible = "ti,tilcdc,panel";
>>         pinctrl-names = "default";
>>     pinctrl-0 = <&lcd_pins>;
>>     enable-gpios = <&gpio1 20 GPIO_ACTIVE_HIGH>;
>>     backlight = <&lcd_backlight>;
>>     status = "okay";
>>
>>     panel-info {
>>       ac-bias           = <255>;
>>       ac-bias-intrpt    = <0>;
>>       dma-burst-sz      = <16>;
>>       bpp               = <16>;
>>       fdd               = <0x80>;
>>       sync-edge         = <0>;
>>       sync-ctrl         = <1>;
>>       raster-order      = <0>;
>>       fifo-th           = <0>;
>>       //invert-pxl-clk;
>>     };
>>
>>     display-timings {
>>       native-mode=<&timing0>;
>>       timing0: 800x480 {
>>         clock-frequency = <45000000>;
>>         hactive         = <800>;
>>         vactive         = <480>;
>>
>>         hfront-porch    = <40>;
>>         hback-porch     = <40>;
>>         hsync-len       = <48>;
>>
>>         vfront-porch    = <13>;
>>         vback-porch     = <29>;
>>         vsync-len       = <3>;
>>
>>         hsync-active    = <0>;
>>         vsync-active    = <0>;
>>         //de-active       = <1>;
>>         //pixelclk-active = <1>;
>>       };
>>     };
>>   };
>> };
>>
>> &lcdc {
>>   status = "okay";
>>   blue-and-red-wiring = "straight";
>> };
>>
>>
>>
>>
>> *Results:*
>>
>>    - I do not see anything on the LCD screen
>>    - I do not see a fb0 in /dev directory
>>    - I have verified that the devicetree has been read correctly by
>>    looking into /proc/devicetree/ocp/lcdc@4830e000 as well as
>>    /proc/devicetree/panel/ and everything looks correct.
>>
>> Here is a dump of, what I think, is the most relevant parts of the kernel
>> boot dmesg output (I've added some extra messages within
>> <kernel>/driver/gpu/tilcdc_drv.c to help me debug this:
>>
>> ...
>> [    2.056859] [drm] Initialized vgem 1.0.0 20120112 for virtual device
>> on minor 0
>> [    2.064449] usbcore: registered new interface driver udl
>> [    2.071783] OF: graph: no port node found in /ocp/lcdc@4830e000
>> [    2.077961] OF: graph: no port node found in /ocp/lcdc@4830e000
>> [    2.084831] tilcdc 4830e000.lcdc: Check if componentized
>> [    2.090258] tilcdc 4830e000.lcdc: Not componentized
>> [    2.095191] tilcdc 4830e000.lcdc: Look for remote node
>> [    2.100384] OF: graph: no port node found in /ocp/lcdc@4830e000
>> [    2.106356] tilcdc 4830e000.lcdc: Return 0!
>> [    2.110583] tilcdc 4830e000.lcdc: no encoders/connectors found, failed
>> to initialize
>> ...
>> [    2.713767] panel panel: found backlight
>> ...
>> [    2.745671] panel panel: found enable GPIO
>> ...
>>
>>
>>
>> (I can attach the full dmesg if requested)
>>
>> *Analysis:*
>>
>> It looks like the tilcdc which is the driver that, I think, should create
>> the /dev/fb0 fails because it finds no 'encoder/connectors' I'm not sure
>> what this means and I can't find documentation on this.
>>
>> Within the
>> <Kernel>/Documentation/devicetree/bindings/display/tilcdc/tilcdc.txt it
>> makes a mention of the remote port but all the examples I've seen only make
>> reference to HDMI as a remote endpoint, so I do not think I need to add a
>> remote endpoint to the &lcdc entry. I've tried to add a remote port to my
>> panel but it just causes a kernel panic. It seems like the tilcdc should
>> automatically detect the panel and create an /dev/fb0.
>>
>> Is there something I'm doing wrong?
>> Should the tilcdc be initialized after the panel. Perhaps using something
>> like a deferred probe?
>>
>> Any help would be greatly appreciated.
>>
>> Dave
>>
> --
> For more options, visit http://beagleboard.org/discuss
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "BeagleBoard" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/beagleboard/XKH0M5_Q-Tk/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/beagleboard/f4e27d9b-b916-43b1-adb1-401ebaf8653a%40googlegroups.com
> <https://groups.google.com/d/msgid/beagleboard/f4e27d9b-b916-43b1-adb1-401ebaf8653a%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/CALRA8TM3T%2BSb%3DAL5bfhmyMQuA5qRXhqoDxDH5Tk16hxm5Sxbfg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to