Error in xserver-xorg after "mesa: Limit OSMesa to DRM and remove swrast"


Peter Bergin
 

Hi,

when using the commit 47394d05017483e7fd0cba5b927c76198bdfa062 (https://github.com/Freescale/meta-freescale/commit/47394d05017483e7fd0cba5b927c76198bdfa062), set IMX_DEFAULT_BSP="nxp" and the distro fsl-xwayland-distro I see error of configuration of mesa. This is reproduces on latest master of meta-freescale.

This is the error I see in do_configure step of xserver-xorg:

    No package 'dri' found

The root cause of this is that dri.pc file is not produced and put in to sysroot by mesa. Mesa does not provide this as the configuration option '-Ddri-drivers' is empty. In the recipe it is set as:

    PACKAGECONFIG[dri] = "-Ddri-drivers=${@strip_comma('${DRIDRIVERS}')}, -Ddri-drivers='', xorgproto libdrm"

Before commit 47394d050 DRIDRIVERS was set to swrast but after the variable is empty. Can someone help out  with a way forward?

Steps to reproduce:

    $ MACHINE=imx8mp-evk DISTRO=fslc-xwayland EULA=1 . ./setup-environment build_imx8mp-evk
    $ echo "IMX_DEFAULT_BSP = 'nxp'" >> conf/auto.conf
    $ bitbake xserver-xorg -cconfigure

    Build Configuration:
    BB_VERSION           = "1.49.0"
    BUILD_SYS            = "x86_64-linux"
    NATIVELSBSTRING      = "ubuntu-20.10"
    TARGET_SYS           = "aarch64-fslc-linux"
    MACHINE              = "imx8mp-evk"
    DISTRO               = "fslc-xwayland"
    DISTRO_VERSION       = "3.3-snapshot-20210129"
    TUNE_FEATURES        = "aarch64 armv8a crc cortexa53 crypto"
    TARGET_FPU           = ""
    meta
    meta-poky            = "master:24e95b9a0b0610dd82aa85f0c0c6fb4f347bc3e9"
    meta-oe
    meta-multimedia
    meta-python          = "master:fd123c9bb2b86455ca2622b6b166243f7d582d94"
    meta-freescale       = "master:9a90b21cbe32231fee51c7f38e541b3be3aff6b3"
    meta-freescale-3rdparty = "master:d46200f43537083762dca518dc2ba7f20d15f44f"
    meta-freescale-distro = "master:e83f54d0b763826f076e8aed1fc16dbf5b2739e5"

Thanks,
/Peter


Tom Hochstein
 

Hi Peter,

You are inconsistent in saying which DISTRO you are using. I'm not sure if fslc-xwayland is supposed to be compatible with NXP BSP. Are you having a problem wth fsl-xwayland as well?

Tom

-----Original Message-----
From: Peter Bergin <peter@berginkonsult.se>
Sent: Friday, January 29, 2021 7:43 AM
To: meta-freescale@lists.yoctoproject.org
Cc: Tom Hochstein <tom.hochstein@nxp.com>
Subject: Error in xserver-xorg after "mesa: Limit OSMesa to DRM and remove swrast"

Hi,

when using the commit 47394d05017483e7fd0cba5b927c76198bdfa062
(https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FFreescale%2Fmeta-
freescale%2Fcommit%2F47394d05017483e7fd0cba5b927c76198bdfa062&amp;data=04%7C01%7Ctom.hochstein%40nxp.com%7C2f53cae
33de2407f477b08d8c45bd47d%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637475245981939996%7CUnknown%7CTWFpbGZs
b3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=Jute8q%2FcbK2QsM8t87S9meVp
2aTF2c8Z0SaaT8rIsjY%3D&amp;reserved=0),
set IMX_DEFAULT_BSP="nxp" and the distro fsl-xwayland-distro I see error
of configuration of mesa. This is reproduces on latest master of
meta-freescale.

This is the error I see in do_configure step of xserver-xorg:

    No package 'dri' found

The root cause of this is that dri.pc file is not produced and put in to
sysroot by mesa. Mesa does not provide this as the configuration option
'-Ddri-drivers' is empty. In the recipe it is set as:

    PACKAGECONFIG[dri] =
"-Ddri-drivers=${@strip_comma('${DRIDRIVERS}')}, -Ddri-drivers='',
xorgproto libdrm"

Before commit 47394d050 DRIDRIVERS was set to swrast but after the
variable is empty. Can someone help out  with a way forward?

Steps to reproduce:

    $ MACHINE=imx8mp-evk DISTRO=fslc-xwayland EULA=1 .
./setup-environment build_imx8mp-evk
    $ echo "IMX_DEFAULT_BSP = 'nxp'" >> conf/auto.conf
    $ bitbake xserver-xorg -cconfigure

    Build Configuration:
    BB_VERSION           = "1.49.0"
    BUILD_SYS            = "x86_64-linux"
    NATIVELSBSTRING      = "ubuntu-20.10"
    TARGET_SYS           = "aarch64-fslc-linux"
    MACHINE              = "imx8mp-evk"
    DISTRO               = "fslc-xwayland"
    DISTRO_VERSION       = "3.3-snapshot-20210129"
    TUNE_FEATURES        = "aarch64 armv8a crc cortexa53 crypto"
    TARGET_FPU           = ""
    meta
    meta-poky            =
"master:24e95b9a0b0610dd82aa85f0c0c6fb4f347bc3e9"
    meta-oe
    meta-multimedia
    meta-python          =
"master:fd123c9bb2b86455ca2622b6b166243f7d582d94"
    meta-freescale       =
"master:9a90b21cbe32231fee51c7f38e541b3be3aff6b3"
    meta-freescale-3rdparty =
"master:d46200f43537083762dca518dc2ba7f20d15f44f"
    meta-freescale-distro =
"master:e83f54d0b763826f076e8aed1fc16dbf5b2739e5"

Thanks,
/Peter


Peter Bergin
 

Hi Tom,

On 2021-01-29 17:55, Tom Hochstein wrote:
Hi Peter,

You are inconsistent in saying which DISTRO you are using. I'm not sure if fslc-xwayland is supposed to be compatible with NXP BSP. Are you having a problem wth fsl-xwayland as well?
sorry for the inconsistence. Yes, I see the exact same error in DISTRO=fsl-xwayland and DISTRO=fslc-xwayland (when using IMX_DEFAULT_BSP="nxp").

I found http://mesa3d.sourceforge.net/autoconf.html as reference. But I don't have knowledge here how this should be configured. I guess MESA does not support vivante driver and don't have configuration option for it. Then if some dri driver should be configured I guess it should be swrast, or should we remove dri from PACKAGECONFIG for mesa? How is mesa hw-accelerated and conected to vivante driver?

Best regards,
/Peter


Tom Hochstein
 

I'm told it's okay to include swrast in mesa, so I made a PR to restore that.

https://github.com/Freescale/meta-freescale/pull/623

Tom

-----Original Message-----
From: Peter Bergin <peter@berginkonsult.se>
Sent: Friday, January 29, 2021 11:16 AM
To: Tom Hochstein <tom.hochstein@nxp.com>; meta-freescale@lists.yoctoproject.org
Subject: Re: Error in xserver-xorg after "mesa: Limit OSMesa to DRM and remove swrast"

Hi Tom,

On 2021-01-29 17:55, Tom Hochstein wrote:
Hi Peter,

You are inconsistent in saying which DISTRO you are using. I'm not sure if fslc-xwayland is supposed to be compatible with NXP BSP. Are
you having a problem wth fsl-xwayland as well?

sorry for the inconsistence. Yes, I see the exact same error in
DISTRO=fsl-xwayland and DISTRO=fslc-xwayland (when using
IMX_DEFAULT_BSP="nxp").

I found
https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fmesa3d.sourceforge.net%2Fautoconf.html&;data=04%7C01%7C
tom.hochstein%40nxp.com%7C7fbe479f6a0045db424308d8c4798581%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637475373
499258214%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;
sdata=51Th9csZolIj4Fs0mPaWVQwS6jorgQIZpD6e4CIBZQ0%3D&amp;reserved=0 as reference. But I
don't have knowledge here how this should be configured. I guess MESA
does not support vivante driver and don't have configuration option for
it. Then if some dri driver should be configured I guess it should be
swrast, or should we remove dri from PACKAGECONFIG for mesa? How is mesa
hw-accelerated and conected to vivante driver?

Best regards,
/Peter