"Daniel Kolesa" <daniel@xxxxxxxxxxxxx> writes: > Commit c653c591789b ("drm/amdgpu: Re-enable DCN for 64-bit powerpc") > introduced this check as a workaround for the driver not building > with toolchains that default to 64-bit long double. ... > In mainline, this work is now fully done, so this check is fully > redundant and does not do anything except preventing AMDGPU DC > from being built on systems such as those using musl libc. The > last piece of work to enable this was commit c92b7fe0d92a > ("drm/amd/display: move remaining FPU code to dml folder") > and this has since been backported to 6.1 stable (in 6.1.7). > > Relevant issue: https://gitlab.freedesktop.org/drm/amd/-/issues/2288 I looked to pick this up for 6.3 but was still seeing build errors with some compilers. I assumed that was due to some fixes coming in linux-next that I didn't have. But applying the patch on v6.3-rc4 I still see build errors. This is building allyesconfig with the kernel.org GCC 12.2.0 / binutils 2.39 toolchain: powerpc64le-linux-gnu-ld: drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.o uses hard float, arch/powerpc/lib/test_emulate_step.o uses soft float powerpc64le-linux-gnu-ld: failed to merge target specific data of file drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.o etc. All the conflicts are between test_emulate_step.o and some file in drivers/gpu/drm/amd/display/dc/dml. So even with all the hard-float code isolated in the dml folder, we still hit build errors, because allyesconfig wants to link those hard-float using objects with soft-float objects from elsewhere in the kernel. It seems like the only workable fix is to force the kernel build to use 128-bit long double. I'll send a patch doing that. cheers