[poky] [PATCH] genericx86: tune for i586 instead of atom
Jonathan Liu
net147 at gmail.com
Tue Sep 3 21:12:01 PDT 2013
On 4 September 2013 13:56, Jonathan Liu <net147 at gmail.com> wrote:
> On 4 September 2013 13:44, Bruce Ashfield <bruce.ashfield at gmail.com> wrote:
>> On Tue, Sep 3, 2013 at 11:30 PM, Jonathan Liu <net147 at gmail.com> wrote:
>>> Hi Bruce,
>>>
>>> The kernel output is the following:
>>> Loading /vmlinuz.........ready.
>>> This kernel requires the following features not present on the CPU:
>>> movbe
>>> Unable to boot - please use a kernel appropriate for your CPU.
>>>
>>> It stops at that stage and the kernel doesn't boot at all. I started
>>> having this issue after switching my BSP to Linux 3.10.
>>
>> I take it your BSP is based on the genericx86 BSP/configuration ? The entire
>> kernel build is done with:
>>
>> oe_runmake ${KERNEL_IMAGETYPE_FOR_MAKE} ${KERNEL_ALT_IMAGETYPE}
>> CC="${KERNEL_CC}" LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS}
>>
>> And unless you've put something in KERNEL_EXTRA_ARGS, that means
>> the kernel configuration and its own Makefiles determine all compile flags and
>> optimizations.
>>
>> So switching that config file should have no impact on the build.
>>
>> To confirm .. you are saying after that change you can boot again ? Best to
>> hear from Darren/Tom or Ross on this one.
>>
>> Bruce
>
> You're right. It doesn't seem to have any impact.
> Please disregard this patch.
>
> I will try to look into this further to work out what is enabling the
> use of movbe in the kernel.
I suspect it is CONFIG_MATOM=y in the kernel config (see
http://git.kernel.org/cgit/linux/kernel/git/tip/tip.git/commit/?id=2b9b6d8c715b23fa119261c32ad360681f4464a9).
I am rebuilding my image to test.
Regards,
Jonathan
>
> Regards,
> Jonathan
>
>>
>>>
>>> Regards,
>>> Jonathan
>>>
>>> On 4 September 2013 13:23, Bruce Ashfield <bruce.ashfield at gmail.com> wrote:
>>>> On Tue, Sep 3, 2013 at 9:43 PM, Jonathan Liu <net147 at gmail.com> wrote:
>>>>> Tuning for Intel Atom CPU can in result instructions being used that are
>>>>> not compatible with older x86 CPUs such as Intel Pentium Dual-Core
>>>>> E2200. This can result in Linux 3.10 failing to boot with:
>>>>> "This kernel requires the following features not present on the CPU:
>>>>> movbe
>>>>> Unable to boot - please use a kernel appropriate for your CPU.".
>>>>
>>>> That's a bit surprising, do you have a bootlog to share ? This tune
>>>> file shouldn't
>>>> impact the kernel build options, and if it is, that's a bug.
>>>>
>>>> If the error shows up on the switch to userspace, then that's a different story.
>>>>
>>>> Bruce
>>>>
>>>>>
>>>>> Signed-off-by: Jonathan Liu <net147 at gmail.com>
>>>>> ---
>>>>> meta-yocto-bsp/conf/machine/genericx86.conf | 2 +-
>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/meta-yocto-bsp/conf/machine/genericx86.conf b/meta-yocto-bsp/conf/machine/genericx86.conf
>>>>> index ff5cbc9..f5d9cd5 100644
>>>>> --- a/meta-yocto-bsp/conf/machine/genericx86.conf
>>>>> +++ b/meta-yocto-bsp/conf/machine/genericx86.conf
>>>>> @@ -3,7 +3,7 @@
>>>>>
>>>>> #@DESCRIPTION: Machine configuration for generic X86 (32-bit) PCs. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
>>>>>
>>>>> -include conf/machine/include/tune-atom.inc
>>>>> +include conf/machine/include/tune-i586.inc
>>>>>
>>>>> MACHINE_FEATURES = "screen keyboard pci usbhost ext2 ext3 x86 wifi acpi alsa"
>>>>>
>>>>> --
>>>>> 1.8.4
>>>>>
>>>>> _______________________________________________
>>>>> poky mailing list
>>>>> poky at yoctoproject.org
>>>>> https://lists.yoctoproject.org/listinfo/poky
>>>>
>>>>
>>>>
>>>> --
>>>> "Thou shalt not follow the NULL pointer, for chaos and madness await
>>>> thee at its end"
>>
>>
>>
>> --
>> "Thou shalt not follow the NULL pointer, for chaos and madness await
>> thee at its end"
More information about the poky
mailing list