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

From: Nathan Chancellor <[email-masked]>
Date: Thu, 5 May 2022 11:12:49 -0700

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 <[email-masked]>
> 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 <[email-masked]>
> ---
>  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