[yocto] Kernel header missing for specific Target

Bruce Ashfield bruce.ashfield at windriver.com
Thu Jul 23 06:33:49 PDT 2015


On 15-07-23 09:31 AM, Gorny Krystian wrote:
> So my drv_iointerrupt.c is a standard *.ko driver. It's still missing the include files asm/atomic.h and linux/cdev.h when I try to build it ($bitbake iointerrupt).
>
> Can I compile and install the driver module to the kernel with normal *.bb files (like a normal recipe)? I'm still not sure about this.
>

If the driver follows kernel conventions, then yes, you can write a
recipe that builds and packages the modules.

If you look in meta-skeleton, there is a hello-mod example of a kmod
recipe.

Bruce

> Many Thanks
> Krystian
>
> _____________________________________________________________________
>
> Krystian Gorny
> Research & Development
>
> Wipotec GmbH
> Adam-Hoffmann-Str. 26
> 67657 Kaiserslautern
>
> T +49.631.34146-0
> F +49.631.34146-8640
> http://www.wipotec.com
>
>
> _____________________________________________________________________
>
> Weigh Cells | Weighing systems
>
> See our solutions. Visit us at our events
> http://www.wipotec.com/de/aktuelles/veranstaltungen/
>
> _____________________________________________________________________
>
> Legal information:
> Wipotec Wiege- und Positioniersysteme GmbH
> HRB 2317 Kaiserslautern, Management: T. D?ppre, U. Wagner
>
> This e-mail may contain confidential and/or privileged information.
> If you are not the intended recipient (or have received this e-mail in error)
> please notify the sender immediately and delete this e-mail. Any unauthorized
> copying, disclosure or distribution of the material in this e-mail is strictly
> forbidden.
>
> -----Original Message-----
> From: Bruce Ashfield [mailto:bruce.ashfield at windriver.com]
> Sent: Friday, July 17, 2015 5:40 PM
> To: Gorny Krystian; yocto at yoctoproject.org
> Subject: Re: [yocto] Kernel header missing for specific Target
>
> On 15-07-17 09:55 AM, Gorny Krystian wrote:
>> I'm using the fido branch. My iointerrupt.bb file looks as follow:
>>
>>
>> DESCRIPTION = "Simple IO-interrupt driver"
>> SECTION = "iointerrupt"
>> LICENSE = "MIT"
>> LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
>> PR = "r0"
>>
>> SRC_URI = "file://drv_iointerrupt.c"
>> S = "${WORKDIR}"
>> do_compile() {
>>                ${CC} drv_iointerrupt.c -o iointerrupt }
>
> And so I'm clear .. this is a standard .ko ? Or a userspace kernel driver ?
>
> If you are looking for the internal kernel sources to be on the include path, you need to reference STAGING_KERNEL_DIR (and something has to depend on the kernel do_shared_workdir task to get the right bits in place).
>
>    recipes-kernel/lttng/lttng-modules_2.6.1.bb
>
> Is an example of both.
>
> Bruce
>
>> do_install() {
>>                install -d ${D}${bindir}
>>                install -m 0755 iointerrupt ${D}${bindir} }
>>
>> Thanks,
>> Krystian
>>
>> _____________________________________________________________________
>>
>> Krystian Gorny
>> Research & Development
>>
>> Wipotec GmbH
>> Adam-Hoffmann-Str. 26
>> 67657 Kaiserslautern
>>
>> T +49.631.34146-0
>> F +49.631.34146-8640
>> http://www.wipotec.com
>>
>>
>> _____________________________________________________________________
>>
>> Weigh Cells | Weighing systems
>>
>> See our solutions. Visit us at our events
>> http://www.wipotec.com/de/aktuelles/veranstaltungen/
>>
>> _____________________________________________________________________
>>
>> Legal information:
>> Wipotec Wiege- und Positioniersysteme GmbH HRB 2317 Kaiserslautern,
>> Management: T. D?ppre, U. Wagner
>>
>> This e-mail may contain confidential and/or privileged information.
>> If you are not the intended recipient (or have received this e-mail in
>> error) please notify the sender immediately and delete this e-mail.
>> Any unauthorized copying, disclosure or distribution of the material
>> in this e-mail is strictly forbidden.
>>
>> -----Original Message-----
>> From: Bruce Ashfield [mailto:bruce.ashfield at windriver.com]
>> Sent: Friday, July 17, 2015 3:32 PM
>> To: Gorny Krystian; yocto at yoctoproject.org
>> Subject: Re: [yocto] Kernel header missing for specific Target
>>
>> On 15-07-17 08:47 AM, Gorny Krystian wrote:
>>> Hi
>>>
>>> I try add to my core-image-rt image on a x86 arch my own IO driver. I
>>> have already my own recipe, for normal user space programs everything
>>> is working fine.
>>>
>>> For the kernel space driver Yocto is missing at do_comile task the
>>> asm/atomic.h header file. I have searched for the atomic.h file and
>>> found a lot of them in the ./build/tmp/work folder. Yocto should use
>>> one of them for the right hardware architecture right? Or is the a
>>> something else I have forget to do?
>>
>> What Yocto branch are you using ?
>>
>> atomic.h is placed in the right location by the kernel build, assuming that your driver recipe has the proper dependencies.  Without seeing that recipe, it is hard to say more.
>>
>> Cheers,
>>
>> Bruce
>>
>>>
>>> Many thanks
>>>
>>> Krystian
>>>
>>>
>>> _____________________________________________________________________
>>>
>>> *Krystian Gorny*
>>> Research & Development
>>>
>>> Wipotec GmbH
>>> Adam-Hoffmann-Str. 26
>>> 67657 Kaiserslautern
>>>
>>> T +49.631.34146-0
>>> F +49.631.34146-8640
>>> http://www.wipotec.com
>>>
>>>
>>>
>>> <http://www.wipotec.com>
>>>
>>> Legal information:
>>> Wipotec Wiege- und Positioniersysteme GmbH HRB 2317 Kaiserslautern,
>>> Management: T. Düppre, U. Wagner
>>>
>>> This e-mail may contain confidential and/or privileged information.
>>> If you are not the intended recipient (or have received this e-mail
>>> in
>>> error)
>>> please notify the sender immediately and delete this e-mail. Any
>>> unauthorized copying, disclosure or distribution of the material in
>>> this e-mail is strictly forbidden.
>>>
>>>
>>
>>
>
>




More information about the yocto mailing list