> > I'm surprised that code would compile at all without a compiler error. As > &variable[0] probably is not what you think it is. > I see no issue here. Can you elaborate?
> Also, for the record, infinitely allocating an arbitrary amount of dynamic > memory, in a loop, without any kind of a pause is going to eat up an > incredible amount of CPU cycles. As in that code will very likely use as > close to 100% CPU as the system will allow it. Which again, is no wonder > you're "flickering" . . . > The code is not allocating anything in a loop. > You lucky your program does not randomly crash for using malloc() on the > same dynamic memory over, and over, without using free(), or instead using > realloc() . . . > Because it's not calling malloc() over and over... The issue here is that if you run memset() in a tight loop (which at least one gstreamer1.6 audio decoder plugins does), it seems to clog up the data bus enough for the DMA to fail. > On Tue, Mar 8, 2016 at 10:16 AM, Radek Dostál <[email protected] > <javascript:>> wrote: > >> Hi Michael, >> >> we had very similar issue, which we encountered when updating to >> gstreamer 1.6. Using git bisect we were able to find a root cause and >> prepare simple test program, which reliably reproduces the issue: >> >> #include <string.h> >> #include <stdint.h> >> #include <stdlib.h> >> >> int main(int argc, char **argv) >> { >> int size; >> uint8_t *memblock; >> >> if (argc < 2) >> return -1; >> >> size = atoi(argv[1]); >> >> memblock = malloc(size); >> >> while (1) >> { >> memset(&memblock[0], 0, size); >> } >> >> free(memblock); >> >> return 0; >> } >> >> starting this program will cause crazy flickering, ... >> >> We were able to reproduce the issue with >> >> 1) debian originally provided on beaglebone using memtest utility for >> carlos. Kernel version was: >> >> Linux version 3.8.13-bone70 (root@a5-imx6q-wandboard-2gb) (gcc version >> 4.6.3 (Debian 4.6.3-14) ) #1 SMP Fri Jan 23 02:15:42 UTC 2015 >> >> 2) latest version of debian from beaglebone website Kernel version was: >> >> Linux version 4.1.15-ti-rt-r43 (root@a4-imx6q-wandboard-2gb) (gcc version >> 4.9.2 (Debian 4.9.2-10) ) #1 SMP PREEMPT RT Thu Jan 21 20:13:58 UTC 2016 >> >> so it seems to be existing for ages. >> >> Did you in the mean time managed to find a solution for your problem? >> >> Thanks, >> Radek >> >> On Monday, February 8, 2016 at 1:18:50 PM UTC+1, Michael Liesenberg wrote: >>> >>> Hi there, >>> >>> >>> i was able to get my 10.1 custom Display to work with the RGB Pins on >>> the beaglebone black. >>> >>> I am using the latest Debian Jessie image from beagleboard.org and the >>> X11 Desktop has the right colors and the right size. >>> >>> So i assume that the Timings from my display are correct. >>> >>> >>> panel { >>> >>> status = "okay"; >>> >>> compatible = "ti,tilcdc,panel"; >>> >>> pinctrl-names = "default"; >>> >>> pinctrl-0 = <&bb_lcd_lcd_pins>; >>> >>> panel-info { >>> >>> ac-bias = <255>; >>> >>> ac-bias-intrpt = <0>; >>> >>> dma-burst-sz = <16>; >>> >>> bpp = <32>; >>> >>> fdd = <0x80>; >>> >>> tft-alt-mode = <0>; >>> >>> stn-565-mode = <0>; >>> >>> mono-8bit-mode = <0>; >>> >>> sync-edge = <0>; >>> >>> sync-ctrl = <1>; >>> >>> raster-order = <0>; >>> >>> fifo-th = <0>; >>> >>> }; >>> >>> display-timings { >>> >>> native-mode = <&timing0>; >>> >>> timing0: 1280x800 { >>> >>> clock-frequency = >>> <70000000>; >>> >>> hactive = <1280>; >>> >>> vactive = <800>; >>> >>> hfront-porch = <80>; >>> >>> hback-porch = <60>; >>> >>> hsync-len = <20>; >>> >>> vback-porch = <12>; >>> >>> vfront-porch = <8>; >>> >>> vsync-len = <3>; >>> >>> hsync-active = <0>; >>> >>> vsync-active = <0>; >>> >>> }; >>> >>> }; >>> >>> }; >>> >>> >>> But when i play a video or when i have many frames on the display i get >>> some screen flickers. >>> >>> >>> On the log via UART i see the following: >>> >>> >>> 1- When booting up: of_graph_get_next_endpoint(): no port node found in >>> /ocp/lcdc@4830e000 >>> >>> 2- When video or many frames are displayed: >>> >>> tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow >>> >>> tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000004): Sync lost >>> >>> >>> Any idea? >>> >>> >>> Is the DDR flash rate to slow? Or the DMA buffer not big enougth? >>> >>> >>> -- >> 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] <javascript:>. >> 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]. For more options, visit https://groups.google.com/d/optout.
