[yocto] Kernel driver for Turbosight TBS6285 DVB card
Chris Tapp
opensource at keylevel.com
Thu Aug 21 01:17:02 PDT 2014
On 21 Aug 2014, at 05:08, Bruce Ashfield <bruce.ashfield at gmail.com> wrote:
> On Wed, Aug 20, 2014 at 4:11 PM, Chris Tapp <opensource at keylevel.com> wrote:
>> Hi Bruce,
>>
>> Thanks for the feedback.
>>
>> On 20 Aug 2014, at 03:08, Bruce Ashfield <bruce.ashfield at windriver.com> wrote:
>>
>>> On 2014-08-19, 5:26 PM, Chris Tapp wrote:
>>>> I need to include the kernel driver for the Turbosight TBS6285 DVB card in an image.
>>>>
>>>> The official bundle at http://www.tbsdtv.com/download/document/common/tbs-linux-drivers_v140707.zip includes the drivers and a load of other "stuff" (e.g. a full V4L build).
>>>>
>>>> LinuxTV.org have the drivers extracted into a .tar.bz2 at (e.g.) http://linuxtv.org/downloads/drivers/linux-media-LATEST.tar.bz2, so I plan to use this as the download source.
>>
>> This bit is wrong - I need to use the .tar.bz within the .zip.
>>
>>>>
>>>> So far I have a recipe which downloads from this URL and extracts the files into the work area and ${WORKAREA}/drivers/media includes a Makefile and Kconfig.
>>>>
>>>> I've looked at the Yocto documentation, but this doesn't seem to be a good match for the "Out of tree" kernel module case.
>>>
>>> Hmm. At a glance, I'd say that it does sound like a typical out of
>>> tree module build.
>>
>> Ah, ok - to my (untrained) eye the use-case looked completely different based on the example.
>>
>>> Did you try adopting the meta-skeleton hello-mod recipe and point it
>>> at that source directory ?
>>
>> I have now (with the above change). However, it looks as if something within the build is referencing the host file system when building.
>>
>> I'm building for ValleyIsland 32-bit:
>>
>> 1) If I configure the drivers for 32-bit there is a linker error complaining that elf 32 and elf 64 aren't compatible (host is 64 bit);
>
> Hmm. The target arch should be used for this build. Are you enabling a
> multi lib config
> as well ?
Not that I know of ;-)
The build uses a .version file to specify the kernel. The top makefile creates this using 'uname -r' by default. I can run 'make dir DIR="..." in do_configure() to specify the path to the yocto kernel files, which seems to fix this (after modifying another makefile, which prepends "../" to the DIR path).
> 2) Everything appears to build if I target 64-bit, but the installer tries to modify /lib/modules/3.2.0-67/..., which is also part of the host.
>
> Do the Makefile's that come in that archive (I haven't gone to look)
> have a custom
> install rule ? If so, that's likely the problem. If the kernel's build
> system is triggered
> (i.e. the makefile follows the conventions), everything will be
> installed to the proper
> location.
The installer uses DESTDIR to select the installation path - I've not worked out how this gets set yet or how I can set it from within my recipe.
Is there a trick I can use to get the kernel's build system to manage things?
>
> Bruce
>
>>
>> Looks like I need a patch ;-) Any pointers to where I should be looking would be appreciated as this isn't my normal area...
>>
>> --
>>
>> Chris Tapp
>> opensource at keylevel.com
>> www.keylevel.com
>>
>>
>>
>>
>> --
>> _______________________________________________
>> yocto mailing list
>> yocto at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/yocto
>
>
>
> --
> "Thou shalt not follow the NULL pointer, for chaos and madness await
> thee at its end"
--
Chris Tapp
opensource at keylevel.com
www.keylevel.com
More information about the yocto
mailing list