On Sat, Feb 17, 2018 at 7:06 PM, David Lechner <da...@lechnology.com> wrote:
> Hi Drew,
>
> I haven't used it with a BeagleBone. Creating a device tree overlay should
> be easy though.
>
> If you want to use the backlight, you need to create a node at the root
> level like this:
>
>
>     backlight: backlight {
>         compatible = "gpio-backlight";
>         gpios = <&gpio 44 GPIO_ACTIVE_HIGH>;
>     };
>
> Then add a child node to the SPI device for the display kind of like this:
>
> &spi1 {
>     status = "okay";
>     pinctrl-0 = <&ev3_lcd_pins>;
>     pinctrl-names = "default";
>
>     display@0{
>         status = "okay";
>         compatible = "jianda,jd-t18003-t01", "sitronix,st7735r";
>         reg = <0>;
>         spi-max-frequency = <32000000>;
>         dc-gpios = <&gpio 43 GPIO_ACTIVE_HIGH>;
>         reset-gpios = <&gpio 80 GPIO_ACTIVE_HIGH>;
>         backlight = &backlight;
>         rotation = <270>;
>     };
> };
>
> Obviously you will need to change some things and put it in DT overlay
> format, but it should get you pointed in the right direction.

Thanks for the insights, David.

For comparison, this is how I load fbtft for this 1.8" Adafruit ST7735R TFT LCD:

sudo modprobe fbtft_device busnum=1 name=adafruit18 gpios=dc:48,reset:60

I can then use fbi to display an image on the display.

For TinyDRM, I have now added the display node from your example to
BB-SPIDEV1-00A0.dts:

+
+                       display@0{
+                               status = "okay";
+                               compatible = "jianda,jd-t18003-t01",
"sitronix,st7735r";
+                               reg = <0>;
+                               spi-max-frequency = <16000000>;
+                               /*
https://elinux.org/Beagleboard:Cape_Expansion_Headers */
+                               dc-gpios = <&gpio1 28 0>;    /* dc:48
  P9.15 GPIO1_16 */
+                               reset-gpios = <&gpio1 16 0>; /*
reset:60 P9.12 GPIO1_28 */
+                               rotation = <270>;
+                       };
+

I then added that overlay to /boot/uEnv.txt:

uname_r=4.16.0-rc2-bone3
enable_uboot_overlays=1
uboot_overlay_addr4=/lib/firmware/BB-SPIDEV1-00A0.dtbo
disable_uboot_overlay_emmc=1
disable_uboot_overlay_video=1
disable_uboot_overlay_audio=1
disable_uboot_overlay_wireless=1
disable_uboot_overlay_adc=1
cmdline=coherent_pool=1M net.ifnames=0 quiet

I now see this in dmesg after booting up:

[    0.980709] omap2_mcspi 481a0000.spi: chipselect 0 already in use
[    0.986882] spi_master spi1: spi_device register error
/ocp/spi@481a0000/channel@0
[    0.994544] spi_master spi1: Failed to create SPI device for
/ocp/spi@481a0000/channel@0

[   21.028802] [drm] Initialized st7735r 1.0.0 20171128 for spi1.0 on minor 0
[   22.568816] random: crng init done
[   22.902358] Console: switching to colour frame buffer device 20x16
[   22.902817] st7735r spi1.0: fb0:  frame buffer device

I was quite excited to see it get this far.  However, I've been unable
to get anything to appear on the LCD.

Here is some basic exploration I've done:

debian@beaglebone:~/libdrm$ find /dev/dri/
/dev/dri/
/dev/dri/card0

debian@beaglebone:~/libdrm$ sudo fbi -d /dev/dri/card0 -i
using "DejaVu Sans Mono-16", pixelsize=16.67
file=/usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf
ioctl VT_GETSTATE: Inappropriate ioctl for device (not a linux console?)

debian@beaglebone:~$ ls -ltar /dev/fb*
crw-rw---- 1 root video 29, 0 Feb 20 07:27 /dev/fb0

I do see many lines like this in dmesg:

[ 1260.017213] [drm:mipi_dbi_fb_dirty [mipi_dbi]] Flushing [FB:34]
x1=144, x2=152, y1=72, y2=80
[ 1260.017247] [drm:mipi_dbi_typec3_command [mipi_dbi]] cmd=2a, par=00 90 00 97
[ 1260.017325] [drm:mipi_dbi_typec3_command [mipi_dbi]] cmd=2b, par=00 48 00 4f
[ 1260.017359] [drm:mipi_dbi_typec3_command [mipi_dbi]] cmd=2c, len=128

More information in this gist where I am keeping notes:
https://gist.github.com/pdp7/b1cc9b5a25a0c25153b24e0e75964db0


Any suggestions on how I should troubleshoot this display?


Thanks,
Drew

-- 
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 beagleboard+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/CAPgEAj4EXgPG1dxP%2BSOYG0tU82HzGf1%2BmBbfvRYrnu9gjsrGNg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to