[Buildroot] Using the new Ti-gfx with Qt5

Charles Krinke charles.krinke at gmail.com
Fri Aug 2 13:38:44 UTC 2013


Dear parbu:

I am not on any kernel, but rather am trying to find a recipe that
will allow ti-gfx to successfully compile. The 3.10 kernel is merely
the default option when the arago toolchain is selected.

I think we can make progress if we had a default, known working
.config for buildroot for the AM3517 with Qt5 and ti-gfx with
*whatever* kernel TI feels comfortable with.

Can someone at TI provide a default, known working .config for
buildroot? This is not the .config for the kernel, but rather for
buildroot. For the kernel, I assume TI recommends "omap2_plus".

Perhaps as some other boards and variations have a readme.txt or
default configuration in buildroot's board directory, it might be to
our advantage to have such a file or files for TI's 356X and 3517
SOC's and their respective reference designs from LogicPD and others.

Charles

On 8/1/13, Sundareson, Prabindh <prabu at ti.com> wrote:
> I see you are on 3.10 kernel, the SDK has been tested so far with 3.8 and
> might need minor patches for looking at the right header files with later
> kernels.
>
> regards,
> Prabu
>
>
> -----Original Message-----
> From: buildroot-bounces at busybox.net [mailto:buildroot-bounces at busybox.net]
> On Behalf Of Charles Krinke
> Sent: Thursday, August 01, 2013 10:45 PM
> To: Thomas Petazzoni
> Cc: buildroot at busybox.net
> Subject: Re: [Buildroot] Using the new Ti-gfx with Qt5
>
> Dear Thomas:
>
> Thank you for your kind words as usual as I try to understand the new
> additions to buildroot.
>
> I did find in "hardware handling" an enable for ti-gfx and enabled it along
> with the kernel and was able to get all the way to the compilation of the
> ti-gfx stuff until it errored in compilation.
>
> So, at this point, I cannot quite tell if this is a mis-configuration or a
> missing patch in the ti-gfx stuff.
>
> I did get this all working 2 months ago with some hand tweaking before
> Spenser added his patches and am circling back to test the new stuff to see
> if I can move to it.
>
> I am including the .config file currently being used with the
> buildroot-20130731 test for reference. I totally understand you are very
> busy keeping all the rest of this together so I will keep studying in the
> background and look forward to any advice you can offer.
>
> Charles
>
>
>
> make[1]: Leaving directory
> `/home/ckrinke/buildroot-20130731/output/build/linux-3.10.4'
> # Installing dtc (device tree compiler) as host tool, if selected if grep -q
> "CONFIG_DTC=y"
> /home/ckrinke/buildroot-20130731/output/build/linux-3.10.4/.config;
> then /usr/bin/install -D -m 0755
> /home/ckrinke/buildroot-20130731/output/build/linux-3.10.4/scripts/dtc/dtc
> /home/ckrinke/buildroot-20130731/output/host/usr/bin/dtc ; fi
>>>> linux 3.10.4 Installing to images directory
> cp /home/ckrinke/buildroot-20130731/output/build/linux-3.10.4/vmlinux
> /home/ckrinke/buildroot-20130731/output/images
>>>> ti-gfx 4_09_00_01 Configuring
>>>> ti-gfx 4_09_00_01 Building
> /usr/bin/make -j9 HOSTCC="/usr/bin/gcc" HOSTCFLAGS="" ARCH=arm
> INSTALL_MOD_PATH=/home/ckrinke/buildroot-20130731/output/target
> CROSS_COMPILE="
> /home/ckrinke/buildroot-20130731/output/host/usr/bin/arm-arago-linux-gnueabi-"
> DEPMOD=/home/ckrinke/buildroot-20130731/output/host/usr/sbin/depmod
> BUILD=debug TI_PLATFORM=omap3 OMAPES=3.x SUPPORT_XORG=0
> KERNELDIR=/home/ckrinke/buildroot-20130731/output/build/linux-3.10.4
> -C
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM
> all
> make[1]: Entering directory
> `/home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM'
> /usr/bin/make -C
> /home/ckrinke/buildroot-20130731/output/build/linux-3.10.4 M=`pwd`
> make[2]: Entering directory
> `/home/ckrinke/buildroot-20130731/output/build/linux-3.10.4'
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/queue.o
>   LD
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/built-in.o
>   LD
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/built-in.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_displayclass.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/hash.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/bc_cat.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/perproc.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/mem.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/power.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/deviceclass.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/metrics.o
>   LD [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb.o
>   LD [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/3rdparty/bufferclass_ti/bufferclass_ti.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/resman.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/buffer_manager.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/pvrsrv.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/handle.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/lists.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/ra.o
>   CC [M]
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/devicemem.o
> In file included from
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/common/queue.c:75:0:
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:84:48:
> error: expected declaration specifiers or '...' before 'read_proc_t'
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:84:70:
> error: expected declaration specifiers or '...' before 'write_proc_t'
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:86:58:
> error: expected declaration specifiers or '...' before 'read_proc_t'
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:86:80:
> error: expected declaration specifiers or '...' before 'write_proc_t'
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:110:9:
> error: expected declaration specifiers or '...' before 'write_proc_t'
> /home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/env/linux/proc.h:120:9:
> error: expected declaration specifiers or '...' before 'write_proc_t'
> make[3]: ***
> [/home/ckrinke/buildroot-20130731/output/build/ti-gfx-4_09_00_01/GFX_Linux_KM/services4/srvkm/c
>
> On 7/31/13, Thomas Petazzoni <thomas.petazzoni at free-electrons.com> wrote:
>> Dear Charles Krinke,
>>
>> On Wed, 31 Jul 2013 13:26:20 -0700, Charles Krinke wrote:
>>> I am trying to get ti-gfx to configure with last nights build, that
>>> is, buildroot-20130731.
>>>
>>> I see enabling the kernel compile is necessary and I assume
>>> "omap2plus_defconfig" is appropriate for an AM3517EVM board.
>>>
>>> I am having trouble finding the combination of settings to get
>>> buildroot to configure OPENGL_ES and OPENGL_EGL so that ti-gfx will
>>> become operational.
>>>
>>> Would someone be willing to give me a pointer on the error of my
>>> ways, please
>>
>> A defconfig as below should work (for just ti-gfx, qt5 is not enabled) :
>>
>> BR2_arm=y
>> BR2_cortex_a8=y
>> BR2_TOOLCHAIN_EXTERNAL=y
>> BR2_TOOLCHAIN_EXTERNAL_ARAGO_ARMV7A_201109=y
>> BR2_PACKAGE_TI_GFX=y
>> BR2_LINUX_KERNEL=y
>> BR2_LINUX_KERNEL_DEFCONFIG="omap2plus_defconfig"
>>
>> The critical part for ti-gfx is that you need to have a (e)glibc
>> toolchain, not an uClibc toolchain.
>>
>> Remember that you can discover dependencies of packages by searching
>> them in menuconfig using '/', and typing the package name. This would
>> give you the following information:
>>
>> Symbol: BR2_PACKAGE_TI_GFX [=n]
>>   │ Type  : boolean
>>   │ Prompt: ti-gfx
>>   │   Defined at package/ti-gfx/Config.in:1
>>   │   Depends on: BR2_LINUX_KERNEL [=n] && BR2_TOOLCHAIN_USES_GLIBC [=n]
>> &&
>> BR2_arm [=y]
>>   │   Location:
>>   │     -> Package Selection for the target
>>   │ (6)   -> Hardware handling
>>   │   Selects: BR2_PACKAGE_HAS_OPENGL_EGL [=n] &&
>> BR2_PACKAGE_HAS_OPENGL_ES
>> [=n] && BR2_PACKAGE_HAS_POWERVR [=n]
>>
>> This tells you that the ti-gfx package is available only on ARM (which
>> is already selected), requires a Linux kernel to be built (not
>> selected
>> yet) and a toolchain based on glibc (not selected yet).
>>
>> As far as Qt5 is concerned, I got it running on top of ti-gfx, but I
>> don't remember if patches were needed. I can dig through my archives
>> if you're interested.
>>
>> Best regards,
>>
>> Thomas
>> --
>> Thomas Petazzoni, Free Electrons
>> Kernel, drivers, real-time and embedded Linux development, consulting,
>> training and support.
>> http://free-electrons.com
>>
>
>
> --
> Charles Krinke
>


-- 
Charles Krinke



More information about the buildroot mailing list