Re: linux-next: build failure after merge of the amdgpu tree

From: Nathan Chancellor
Date: Thu May 05 2022 - 14:13:05 EST


Hi Stephen,

On Thu, May 05, 2022 at 07:47:17PM +1000, Stephen Rothwell wrote:
> Hi all,
>
> After merging the amdgpu tree, today's linux-next build (powerpc
> allyesconfig) failed like this:
>

<snip long error message>

>
> Caused by commit
>
> 028c3fb37e70 ("drm/amdgpu/mes11: initiate mes v11 support")
>
> This build has __BIG_ENDIAN set.
>
> I have applied the following patch for today.
>
> From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> Date: Thu, 5 May 2022 19:14:25 +1000
> Subject: [PATCH] mark CONFIG_DRM_AMDGPU as depending on CONFIG_CPU_LITTLE_ENDIAN
>
> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> ---
> drivers/gpu/drm/Kconfig | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
> index e88c497fa010..2aaa9ef1168d 100644
> --- a/drivers/gpu/drm/Kconfig
> +++ b/drivers/gpu/drm/Kconfig
> @@ -244,6 +244,7 @@ source "drivers/gpu/drm/radeon/Kconfig"
> config DRM_AMDGPU
> tristate "AMD GPU"
> depends on DRM && PCI && MMU
> + depends on CPU_LITTLE_ENDIAN
> select FW_LOADER
> select DRM_DISPLAY_DP_HELPER
> select DRM_DISPLAY_HDMI_HELPER
> --
> 2.35.1

This fixup makes CONFIG_DRM_AMDGPU unselectable on any architecture that
does not have CONFIG_CPU_LITTLE_ENDIAN, such as x86_64. I was rather
surprised when my AMD test system did not reach the login screen and
there were no error messages in dmesg, only to find that
CONFIG_DRM_AMDGPU had disappeared from my build.

If this is not fixed by the time you do next-20220506, would you
consider swapping the logic like so? This should allow all implicitly
little endian architectures to work (at least, I tested it with x86_64),
while preventing errors for CONFIG_CPU_BIG_ENDIAN configurations.

Cheers,
Nathan

diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index 2aaa9ef1168d..a57843733a96 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -244,7 +244,7 @@ source "drivers/gpu/drm/radeon/Kconfig"
config DRM_AMDGPU
tristate "AMD GPU"
depends on DRM && PCI && MMU
- depends on CPU_LITTLE_ENDIAN
+ depends on !CPU_BIG_ENDIAN
select FW_LOADER
select DRM_DISPLAY_DP_HELPER
select DRM_DISPLAY_HDMI_HELPER