Issue with GL driver on Raspbian Stretch

Followed this tutorial with Raspbian Stretch 2019-04-08, got the device working and registering to Mender. However, when running raspi-config and trying to enable the GL driver (full KMS) it prompts no driver / kernel installed.

Running apt-get dist-upgrade for the device fixes this, but what is the correct way to enable this straight to the converted image? (I’m assuming doing the dist-upgrade for the golden device does not fix this, the GL drivers should be in place without it anyway.)

Thanks.

I’m assuming doing the dist-upgrade for the golden device does not fix this

This would seem the correct approach to me. That is,

  • boot the golden image
  • run the commands you need to install the necessary parts
  • shutdown the system
  • dump the SD card
  • run in trough mender-convert

If the necessary parts are not present in a “stock” image, and you would expect them to be, I would take it up with the Raspberrypi community.

The vanilla raspbian does have a working GL setup with no need for the dist-upgrade, that’s why I was assuming the converted image is using some other kernel or something.

Bul I’ll try it out.

We try to have very little impact on image content when we convert them and most of it should be intact.

What we do change is mostly around the boot process, as we have to add U-boot which is not there in a stock image but required to be able to integrate Mender to perform robust updates using the A/B approach. But kernel and all user-space components should be as-is.

I created an actual golden image now, verified it’s working properly and can be flashed to another devices with no issues with the GL.

Did a mender-convert for it, I’m now facing 2 issues:

  1. The GL is not working. This is unfortunately a showstopper for us. The raspi-config is not very informative, attached screenshots. In any case, it’s quite certain something’s happenin during the mender convert. You can most likely reproduce this by just trying to enable the GL driver with a converted vanilla raspbian.

  2. The device is not shown on Mender dashboard even though it’s connected to the internet. We do have a firewall enabled on the system, but if I understood correctly there shouldn’t be a requirement for incoming traffic because of Mender?

I’m happy to continue this conversation privately via email as well.

dandk dandk2

Thank you for the update @valtteric. I would prefer if we can continue the discussions here (I have moved this to a separate topic on the forum) .

The GL is not working. This is unfortunately a showstopper for us. The raspi-config is not very informative, attached screenshots. In any case, it’s quite certain something’s happenin during the mender convert. You can most likely reproduce this by just trying to enable the GL driver with a converted vanilla raspbian.

I will take a closer look on what that rpi-config is trying to do and why it would fail on a converted image.

The device is not shown on Mender dashboard even though it’s connected to the internet. We do have a firewall enabled on the system, but if I understood correctly there shouldn’t be a requirement for incoming traffic because of Mender?

There is no requirement for inbound traffic because of Mender on the device. Can you try running sudo journalctl -f -a -u mender and provide the output here.

The GL is not working. This is unfortunately a showstopper for us. The raspi-config is not very informative, attached screenshots. In any case, it’s quite certain something’s happenin during the mender convert. You can most likely reproduce this by just trying to enable the GL driver with a converted vanilla raspbian.

This is why it is complaining,

  if [ ! -e /boot/overlays/vc4-kms-v3d.dtbo ]; then
    whiptail --msgbox "Driver and kernel not present on your system. Please update" 20 60 2
    return 1
  fi

This is something that is changed on a converted image, as we mount the boot partition on /uboot instead of /boot which is done on a stock image and it will not able to find /boot/overlays/vc4-kms-v3d.dtbo

But looking at what the raspi-config tool is trying to do is basically adding a line to /uboot/config.txt, so the equivalent command to enable Full KMS using a shell would be:

echo 'dtoverlay=vc4-kms-v3d' | sudo tee -a /uboot/config.txt 

There is actually an pull-request open to enable this by default, to solve other problems that are present on Raspbian Buster. More info on this here

Also I belive that there is a problem in the 1.x.x version of mender-convert that removes any changes you made to the golden image (at least overlays).

We have fixed this in the master branch, and specifically this commit. If you could try using master branch of mender-convert and report back that would be great.

Also I would like to highlight this,

The new iteration should also work, if you have enabled Full KMS on your golden image. (though raspi-config will probably show same problem)

Hi, sounds great! Yeah the idea is that everything should be properly configurated within the golden image and no need to tweak raspi-config or anything else in that regard. I’ll try things out tomorrow and report back.

Thanks!

There are authorization failed errors returned from Mender, I’m quite sure I just forgot to set up the token after redoing most of the steps with the container.

Got everything working pretty much perfectly using the master branch. Thanks!

1 Like

Great to hear. Thanks for reporting back.