lkml.org 
[lkml]   [2021]   [Apr]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: PPC_FPU, ALTIVEC: enable_kernel_fp, put_vr, get_vr
From
Date


Le 17/04/2021 à 22:17, Randy Dunlap a écrit :
> Hi,
>
> kernel test robot reports:
>
>>> drivers/cpufreq/pmac32-cpufreq.c:262:2: error: implicit declaration of function 'enable_kernel_fp' [-Werror,-Wimplicit-function-declaration]
> enable_kernel_fp();
> ^
>
> when
> # CONFIG_PPC_FPU is not set
> CONFIG_ALTIVEC=y
>
> I see at least one other place that does not handle that
> combination well, here:
>
> ../arch/powerpc/lib/sstep.c: In function 'do_vec_load':
> ../arch/powerpc/lib/sstep.c:637:3: error: implicit declaration of function 'put_vr' [-Werror=implicit-function-declaration]
> 637 | put_vr(rn, &u.v);
> | ^~~~~~
> ../arch/powerpc/lib/sstep.c: In function 'do_vec_store':
> ../arch/powerpc/lib/sstep.c:660:3: error: implicit declaration of function 'get_vr'; did you mean 'get_oc'? [-Werror=implicit-function-declaration]
> 660 | get_vr(rn, &u.v);
> | ^~~~~~
>
>
> Should the code + Kconfigs/Makefiles handle that kind of
> kernel config or should ALTIVEC always mean PPC_FPU as well?

As far as I understand, Altivec is completely independant of FPU in Theory. So it should be possible
to use Altivec without using FPU.

However, until recently, it was not possible to de-activate FPU support on book3s/32. I made it
possible in order to reduce unneccessary processing on processors like the 832x that has no FPU.
As far as I can see in cputable.h/.c, 832x is the only book3s/32 without FPU, and it doesn't have
ALTIVEC either.

So we can in the future ensure that Altivec can be used without FPU support, but for the time being
I think it is OK to force selection of FPU when selecting ALTIVEC in order to avoid build failures.

>
> I have patches to fix the build errors with the config as
> reported but I don't know if that's the right thing to do...
>

Lets see them.

Christophe

\
 
 \ /
  Last update: 2021-04-18 18:25    [W:0.060 / U:0.416 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site