Quantcast
Channel: Embedded Software (Read Only)
Viewing all articles
Browse latest Browse all 25965

Forum Post: RE: Linux/AM3352: integration of TFT Screen with parallel RGB interface needing SPI configuration

$
0
0
Hi hardware repaired so I am back trying to make some progress on this display. As it currently stands: In /dev/ I have two frame buffers: - /dev/fb0 from tilcdc [ 1.355895] tilcdc 4830e000.lcdc: fb0: frame buffer device [ 1.389772] [drm] Initialized tilcdc 1.0.0 20121205 on minor 0 - /dev/fb1 from fb_ili9340 (this driver is only being used to send the init commands to the display) [ 3.690003] graphics fb1: fb_ili9340 frame buffer, 240x320, 150 KiB video memory, 4 KiB DMA buffer memory, fps=33, spi2.0 at 24 MHz Within /sys/class/graphics/ I also see fbcon root@am335x-evm:/sys/class/graphics# ls -l /sys/class/graphics/ lrwxrwxrwx 1 root root 0 Oct 3 21:05 fb0 -> ../../devices/platform/ocp/4830e000.lcdc/graphics/fb0 lrwxrwxrwx 1 root root 0 Oct 3 21:05 fb1 -> ../../devices/platform/ocp/481a0000.spi/spi_master/spi2/spi2.0/graphics/fb1 lrwxrwxrwx 1 root root 0 Oct 3 21:05 fbcon -> ../../devices/virtual/graphics/fbcon Probing with the scope on my display lines I can see: HSYNC, VSYNC, PIXELCLOCK, DATAENABLE all with activity but all the data lines are low - even when I have random information in the /dev/fb0 (e.g. via cat /dev/random > /dev/fb0 ) - I can dump the contents of fb0 to console and see that they are random So it look as though the current issue is the conneciton from the /dev/fb0 to what is being put on the lcd lines The device tree entries look like: panel { compatible = "ti,tilcdc,panel"; label = "lcd"; pinctrl-names = "default"; pinctrl-0 = ; //backlight = ; status = "okay"; enable-gpios = ; panel-info { ac-bias = ; ac-bias-intrpt = ; dma-burst-sz = ; bpp = ; fdd = ; sync-edge = ; sync-ctrl = ; raster-order = ; fifo-th = ; }; display-timings { native-mode = ; timing0:240x320 { clock-frequency = ; /* 6.35 MHz */ hsync-len = ; hback-porch = ; hactive = ; hfront-porch = ; vsync-len = ; vback-porch = ; vactive = ; vfront-porch = ; hsync-active = ; vsync-active = ; de-active = ; pixelclk-active = ; }; }; }; }; &lcdc { status = "okay"; ti,allow-non-reduced-blanking-modes; }; modetest shows no frame buffers root@am335x-evm:/sys/class/graphics/fb0# modetest trying to open device 'i915'...failed trying to open device 'radeon'...failed trying to open device 'nouveau'...failed trying to open device 'vmwgfx'...failed trying to open device 'omapdrm'...failed trying to open device 'exynos'...failed trying to open device 'tilcdc'...done Encoders: id crtc type possible crtcs possible clones 25 24 LVDS 0x00000001 0x00000000 Connectors: id encoder status name size (mm) modes encoders 26 25 connected LVDS-1 0x0 1 25 modes: name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot) 240x320 69 240 250 260 280 320 324 326 328 flags: nhsync, nvsync; type: preferred, driver props: 1 EDID: flags: immutable blob blobs: value: 2 DPMS: flags: enum enums: On=0 Standby=1 Suspend=2 Off=3 value: 0 CRTCs: id fb pos size 24 29 (0,0) (240x320) 240x320 69 240 250 260 280 320 324 326 328 flags: nhsync, nvsync; type: preferred, driver props: Planes: id crtc fb CRTC x,y x,y gamma size possible crtcs 23 24 29 0,0 0,0 0 0x00000001 formats: XR24 AR24 props: 5 type: flags: immutable enum enums: Overlay=0 Primary=1 Cursor=2 value: 1 Frame buffers: id size pitch fbset shows root@am335x-evm:~# fbset mode "240x320" geometry 240 320 240 320 24 timings 0 0 0 0 0 0 0 accel true rgba 8/16,8/8,8/0,0/0 endmode / from the kernel menuconfig I cab confirm that: Symbol: FB_DA8XX [=n] Symbol: DRM [=y] Symbol: DRM_I2C_NXP_TDA998X [=y] Symbol: DRM_TILCDC [=y] Symbol: DRM_TILCDC_SLAVE_COMPAT [=y] Given I see the frame buffer, and I see control line activity I am thinking that I need to bind the panel to lcdc? The LCD Controller user guide mentions Documentation/devicetree/bindings/video/da8xx_fb.txt which I cannot find? I have been looking through the various resources in the wiki for clues: ​ processors.wiki.ti.com/.../Linux_Core_LCD_Controller_User_Guide ​ processors.wiki.ti.com/.../Graphics_Display_Getting_Started_Guide ​ processors.wiki.ti.com/index.php ​ processors.wiki.ti.com/index.php There are a variety of different possible implementations mentioned perhaps I need to use the older fbdev style drivers? Any suggestions for how to investigate the connection between the lcdc and the framebuffer (and why the data is not appearing on the lines) would be gratefully received. All the best, Richard

Viewing all articles
Browse latest Browse all 25965

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>