Does GameShell Actually Use FBTurbo?

Re: the DEOT builds, right now, the 200128 build is pretty much where I’m going to be for a while, with the only real thing to change being the retroarch config, just enabling V-Sync, filter path, and buildbox URL. I’ve got a link to the updated config in the thread.
So I’d say now is a good time. It’s fairly barebones, but with a few directory changes. It should be practically the same as a stock OS.

1 Like

Well, reproducing what guu did in that other thread actually made things worse. Where I was getting over 100fps before with glxgears when it reported using llvmpipe, now it reports softpipe and I get an abysmal 22fps. I’ll try swapping back and forth between lima to fbturbo and back and in the launcher, but I doubt that will change anything. I can roll this back and get to where I was before, but I’m surprised this made things worse. (Maybe there’s something to be learned from this, but I’m not sure what.)

cpi@clockworkpi:~$ DISPLAY=:0 glxgears -info
libGL error: failed to create dri screen
libGL error: failed to load driver: sun4i_drm
libGL error: failed to create dri screen
libGL error: failed to load driver: sun4i_drm
GL_RENDERER   = softpipe
GL_VERSION    = 3.1 Mesa 20.0.0-devel (git-02658df152)
GL_VENDOR     = VMware, Inc.
GL_EXTENSIONS = GL_ARB_multisample GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_copy_texture GL_EXT_subtexture GL_EXT_texture_object GL_EXT_vertex_array GL_EXT_compiled_vertex_array GL_EXT_texture GL_EXT_texture3D GL_IBM_rasterpos_clip GL_ARB_point_parameters GL_EXT_draw_range_elements GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_separate_specular_color GL_EXT_texture_edge_clamp GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_ARB_framebuffer_sRGB GL_ARB_multitexture GL_EXT_framebuffer_sRGB GL_IBM_multimode_draw_arrays GL_IBM_texture_mirrored_repeat GL_3DFX_texture_compression_FXT1 GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_transpose_matrix GL_EXT_blend_func_separate GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_secondary_color GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_INGR_blend_func_separate GL_NV_blend_square GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_S3_s3tc GL_SUN_multi_draw_arrays GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_EXT_framebuffer_object GL_EXT_texture_compression_s3tc GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_MESA_window_pos GL_NV_packed_depth_stencil GL_NV_texture_rectangle GL_ARB_depth_texture GL_ARB_occlusion_query GL_ARB_shadow GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_window_pos GL_ATI_fragment_shader GL_EXT_stencil_two_side GL_EXT_texture_cube_map GL_NV_depth_clamp GL_NV_fog_distance GL_APPLE_packed_pixels GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_vertex_program GL_ARB_vertex_shader GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_MESA_pack_invert GL_MESA_ycbcr_texture GL_NV_primitive_restart GL_ARB_depth_clamp GL_ARB_fragment_program_shadow GL_ARB_half_float_pixel GL_ARB_occlusion_query2 GL_ARB_point_sprite GL_ARB_shading_language_100 GL_ARB_sync GL_ARB_texture_non_power_of_two GL_ARB_vertex_buffer_object GL_ATI_blend_equation_separate GL_EXT_blend_equation_separate GL_OES_read_format GL_ARB_color_buffer_float GL_ARB_pixel_buffer_object GL_ARB_texture_compression_rgtc GL_ARB_texture_float GL_ARB_texture_rectangle GL_ATI_texture_compression_3dc GL_EXT_packed_float GL_EXT_pixel_buffer_object GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_rgtc GL_EXT_texture_mirror_clamp GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_shared_exponent GL_ARB_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_packed_depth_stencil GL_ARB_vertex_array_object GL_ATI_separate_stencil GL_ATI_texture_mirror_once GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_texture_array GL_EXT_texture_compression_latc GL_EXT_texture_integer GL_EXT_texture_sRGB_decode GL_EXT_timer_query GL_OES_EGL_image GL_EXT_texture_buffer_object GL_AMD_texture_texture4 GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_draw_instanced GL_ARB_half_float_vertex GL_ARB_instanced_arrays GL_ARB_map_buffer_range GL_ARB_texture_buffer_object GL_ARB_texture_rg GL_ARB_texture_swizzle GL_ARB_vertex_array_bgra GL_EXT_texture_swizzle GL_EXT_vertex_array_bgra GL_NV_conditional_render GL_AMD_conservative_depth GL_AMD_draw_buffers_blend GL_AMD_seamless_cubemap_per_texture GL_AMD_shader_stencil_export GL_ARB_ES2_compatibility GL_ARB_blend_func_extended GL_ARB_compatibility GL_ARB_debug_output GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_shader_stencil_export GL_ARB_shader_texture_lod GL_ARB_texture_buffer_object_rgb32 GL_ARB_texture_cube_map_array GL_ARB_texture_gather GL_ARB_texture_multisample GL_ARB_texture_query_lod GL_ARB_texture_rgb10_a2ui GL_ARB_uniform_buffer_object GL_ARB_vertex_type_2_10_10_10_rev GL_EXT_provoking_vertex GL_EXT_texture_snorm GL_MESA_texture_signed_rgba GL_ARB_draw_indirect GL_ARB_get_program_binary GL_ARB_robustness GL_ARB_separate_shader_objects GL_ARB_shader_bit_encoding GL_ARB_shader_subroutine GL_ARB_texture_compression_bptc GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_viewport_array GL_EXT_direct_state_access GL_AMD_multi_draw_indirect GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ARB_base_instance GL_ARB_compressed_texture_pixel_storage GL_ARB_conservative_depth GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_shader_atomic_counters GL_ARB_shader_image_load_store GL_ARB_shading_language_420pack GL_ARB_shading_language_packing GL_ARB_texture_storage GL_ARB_transform_feedback_instanced GL_EXT_framebuffer_multisample_blit_scaled GL_EXT_transform_feedback GL_AMD_shader_trinary_minmax GL_ARB_ES3_compatibility GL_ARB_arrays_of_arrays GL_ARB_clear_buffer_object GL_ARB_compute_shader GL_ARB_copy_image GL_ARB_explicit_uniform_location GL_ARB_fragment_layer_viewport GL_ARB_framebuffer_no_attachments GL_ARB_invalidate_subdata GL_ARB_multi_draw_indirect GL_ARB_program_interface_query GL_ARB_shader_image_size GL_ARB_shader_storage_buffer_object GL_ARB_stencil_texturing GL_ARB_texture_buffer_range GL_ARB_texture_query_levels GL_ARB_texture_storage_multisample GL_ARB_texture_view GL_ARB_vertex_attrib_binding GL_KHR_debug GL_KHR_texture_compression_astc_ldr GL_NV_shader_atomic_float GL_ARB_clear_texture GL_ARB_enhanced_layouts GL_ARB_internalformat_query2 GL_ARB_multi_bind GL_ARB_seamless_cubemap_per_texture GL_ARB_shading_language_include GL_ARB_texture_mirror_clamp_to_edge GL_ARB_texture_stencil8 GL_ARB_vertex_type_10f_11f_11f_rev GL_EXT_shader_integer_mix GL_ARB_clip_control GL_ARB_conditional_render_inverted GL_ARB_cull_distance GL_ARB_derivative_control GL_ARB_direct_state_access GL_ARB_get_texture_sub_image GL_ARB_pipeline_statistics_query GL_ARB_transform_feedback_overflow_query GL_KHR_context_flush_control GL_ARB_parallel_shader_compile GL_ARB_shader_atomic_counter_ops GL_KHR_no_error GL_KHR_texture_compression_astc_sliced_3d GL_MESA_shader_integer_functions GL_ARB_texture_filter_anisotropic GL_KHR_parallel_shader_compile GL_EXT_EGL_image_storage GL_EXT_texture_sRGB_R8 GL_EXT_EGL_sync
VisualID 712, 0x2c8
115 frames in 5.0 seconds = 22.872 FPS
114 frames in 5.0 seconds = 22.722 FPS
114 frames in 5.0 seconds = 22.692 FPS
113 frames in 5.0 seconds = 22.486 FPS
114 frames in 5.0 seconds = 22.780 FPS
114 frames in 5.0 seconds = 22.775 FPS
114 frames in 5.0 seconds = 22.737 FPS
1 Like

Well, I guess that was a bad idea. When I changed to fbturbo and it rebooted, the launcher failed to load. Even manually restarting it from SSH gave:

Traceback (most recent call last):
  File "run.py", line 55, in <module>
    pygame.display.init()
pygame.error: Unable to open a console terminal

I noticed an empty ~/.lima file seemed to magically appear in the past when I had lima set in the launcher, so I create that and rebooted, but nothing changed, it still doesn’t load the launcher.

…and putting the lima directory back that I moved using guu’s post doesn’t help either, it still can’t run the launcher.

sudo mv /usr/lib/lima.old /usr/lib/lima/

So at this point I don’t see a way back or a way forward. So I’m going to put this away for a while and hope someone has an idea and posts in the meantime. :wink:

I can still ssh in and access everything. So I can still archive my files if I need to give up on this environment. But I’ll probably do that later next week if it comes to it.

I wish I knew what the launcher does when you select “FB Turbo”, because then I might be able to reverse it. I might try to wade through the python code and see if I can find what it does, and what setting "Lima’ in there does.

1 Like

Just to save you having to wade through a sea of posts, there was mention here of what happens when you change the driver:

1 Like

Arch-based OS. I’m assuming it has working Lima support too? Seemed like it would be a bit easier to maintain int he long run, even if it’s not quite as fancy.

yes lima support, and update proof, it could also be fancy as it can run the clockwork launcher (but you’ll lose the multitask)

2 Likes

This is also a problem in the documentation. You already fixed it, not related to your problem. Looks like this name error is being spread in all compiled kernel in all cpi images. The CPI kernel makes a wrong reference to the driver name sun4i_drm whereas mesa driver install sun4i-drm. This force us to manually create a symbolic link or copy sun4i-drm to sun4i_drm which is a very bad thing to do for the lifespan of the device. In the future, when new people try to use the system they will get frustrated, as you did and I did. In some years this information (creating this symb links) will be less known.

If you go to the patch file for kernel 5.2 at https://raw.githubusercontent.com/clockworkpi/Kernel/master/v0.4/52rc4.patch

You will see this:

diff --git a/drivers/gpu/drm/sun4i/sun4i_drv.c b/drivers/gpu/drm/sun4i/sun4i_drv.c
index 3ff73998d841..1def6aa2a071 100644
--- a/drivers/gpu/drm/sun4i/sun4i_drv.c
+++ b/drivers/gpu/drm/sun4i/sun4i_drv.c
@@ -42,7 +42,7 @@ static struct drm_driver sun4i_drv_driver = {
 
 	/* Generic Operations */
 	.fops			= &sun4i_drv_fops,
-	.name			= "sun4i-drm",
+	.name			= "sun4i_drm",
 	.desc			= "Allwinner sun4i Display Engine",
 	.date			= "20150629",
 	.major			= 1,

This is the cause of the problem. Maybe in the past they needed to do it to get lima working, but it is not necessary anymore. If you remove this part and reapply the patch you don’t need to create the symb link after.

I also found another error related to the kernel, the power button. I could bring the power button to do soft poweroff just removing some patches that were applied to the kernel. For me, this is a good feature, you don’t need to navigate in the menu to switch off, just press the power button once and it will send a poweroff to the OS as you could do to the PC:

I wouldn’t be surprised if more of these tiny things are inside the SO that prevents us to get an updated system since we don’t know what else was changed in the SO to make everything working.

3 Likes

https://github.com/cuu/launcher/blob/e15cf6041230bf4394e7c93f02926054279f7ec9/Menu/GameShell/10_Settings/Lima/init.py#L173

   else: #disable lima
                os.system("rm %s/.lima" % os.path.expanduser('~') )
                ArmSystem("sudo mv /usr/lib/xorg/modules/drivers/modesetting_drv.so /usr/lib/xorg/modules/drivers/modesetting_drv.so.lima")
                ArmSystem("sudo sed -i 's/^[^#]*lima/#&/' /etc/ld.so.conf.d/00-arm-linux-gnueabihf.conf")
                ArmSystem("sudo ldconfig")

that is what is done when

3 Likes

I think I found a clue to the problem.

I started to upgrade a few packages at time (~30) from the ~880 packages that we would need to upgrade to get up to date to buster.

Between each small upgrade, I tested lima driver if was still working. After arround 150 upgrades I got error when loading kmscube and I tried to downgrade one package by one from the last step until I get more information.

When I downgraded udev, and libudev I got lima driver back :slight_smile:

To downgrade I needed to change stable to stretch in /etc/apt/sources.list and update

sudo apt update

and downgrade with the following:

sudo apt install libudev1=232-25+deb9u11

sudo apt install udev=232-25+deb9u11

after that, I rebooted and got lima working. If you still have your broke system, maybe you could try it before flashing a new image.

Good luck

3 Likes

awesome discover, great work !

2 Likes

I am so glad that you managed to find the culprit after 150 iterations! Imagine. Sitting there till 880’th and finding it there.

I’m going to attempt deliberately breaking an installation, upgrading to buster, and seeing if it can be recovered with the downgrade.
Or better yet, doing an apt-mark hold on the packages.

Thanks so much for going the troubleshooting process! We may yet have Buster in our hands!

1 Like

To be honest, I thought that I would go to the 800th without finding anything. This kind of problem seems to be more a configuration than a version upgrade. But I’m happy that I could find something.

Even thought I think udev is not the only problem. I remember when I fully upgraded I got something like @adcockm found when he tried glxgears:

Here mesa tried to load the driver but failed, and used software rendering instead.

What I got now was that the mesa didn’t even try to load the drivers. It used software rendering from the beginning.

Let’s see if @adcockm can try this to see what he gets now. If it works, great, we are much closer to a buster updated image. If not we still need to do this kind of crazy test.

2 Likes

The last thing I did to get my system into its current state was to use the steps mentioned here:

That’s what got me to the 22 FPS glxgears numbers (and the libGL errors), but what I didn’t realize at the time was it messed up my system even more somehow. I thought the problem with the launcher occurred after I used it to switch from lima to fbturbo, and rebooted, but I think it was actually just rebooting that caused the issue. I’ve been unable to load the launcher since (automatically or manually). And even manually “switching” between the two rendering modes doesn’t work (manually issuing the commands the init.py does as @guu described, and as I read in that file, to try going each way). The launcher doesn’t load, but the issue is deeper than that.

Here’s my latest Xorg log file:

[  3631.387] 
X.Org X Server 1.20.4
X Protocol Version 11, Revision 0
[  3631.387] Build Operating System: Linux 4.9.0-8-arm64 armv8l Debian
[  3631.387] Current Operating System: Linux clockworkpi 5.3.6-clockworkpi-cpi3 #1 SMP Tue Oct 15 17:26:44 CST 2019 armv7l
[  3631.388] Kernel command line: console=ttyS0,115200n8 earlyprintk no_console_suspend root=/dev/mmcblk0p2 rootfstype=ext4 rootwait init=/sbin/init noinitrd panic=10
[  3631.388] Build Date: 05 March 2019  08:11:12PM
[  3631.388] xorg-server 2:1.20.4-1 (https://www.debian.org/support) 
[  3631.388] Current version of pixman: 0.36.0
[  3631.388] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[  3631.388] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[  3631.389] (==) Log file: "/home/cpi/.local/share/xorg/Xorg.0.log", Time: Mon Feb  3 00:18:25 2020
[  3631.389] (++) Using config file: "/home/cpi/launcher/.xorg.conf"
[  3631.389] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[  3631.390] (==) No Layout section.  Using the first Screen section.
[  3631.390] (==) No screen section available. Using defaults.
[  3631.390] (**) |-->Screen "Default Screen Section" (0)
[  3631.390] (**) |   |-->Monitor "<default monitor>"
[  3631.392] (==) No device specified for screen "Default Screen Section".
	Using the first device section listed.
[  3631.392] (**) |   |-->Device "Allwinner A10/A13 FBDEV"
[  3631.392] (==) No monitor specified for screen "Default Screen Section".
	Using a default monitor configuration.
[  3631.392] (==) Automatically adding devices
[  3631.392] (==) Automatically enabling devices
[  3631.392] (==) Automatically adding GPU devices
[  3631.392] (==) Max clients allowed: 256, resource mask: 0x1fffff
[  3631.393] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[  3631.393] 	Entry deleted from font path.
[  3631.393] (==) FontPath set to:
	/usr/share/fonts/X11/misc,
	/usr/share/fonts/X11/100dpi/:unscaled,
	/usr/share/fonts/X11/75dpi/:unscaled,
	/usr/share/fonts/X11/Type1,
	/usr/share/fonts/X11/100dpi,
	/usr/share/fonts/X11/75dpi,
	built-ins
[  3631.393] (==) ModulePath set to "/usr/lib/xorg/modules"
[  3631.393] (II) The server relies on udev to provide the list of input devices.
	If no devices become available, reconfigure udev or disable AutoAddDevices.
[  3631.393] (II) Loader magic: 0x581f98
[  3631.393] (II) Module ABI versions:
[  3631.393] 	X.Org ANSI C Emulation: 0.4
[  3631.393] 	X.Org Video Driver: 24.0
[  3631.393] 	X.Org XInput driver : 24.1
[  3631.393] 	X.Org Server Extension : 10.0
[  3631.396] (++) using VT number 1

[  3631.404] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c1
[  3631.407] (II) xfree86: Adding drm device (/dev/dri/card1)
[  3631.411] (II) systemd-logind: got fd for /dev/dri/card1 226:1 fd 11 paused 0
[  3631.413] (II) xfree86: Adding drm device (/dev/dri/card0)
[  3631.416] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 12 paused 0
[  3631.416] (II) no primary bus or device found
[  3631.416] 	falling back to /sys/devices/platform/display-engine/drm/card1
[  3631.416] (II) LoadModule: "glx"
[  3631.417] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[  3631.426] (II) Module glx: vendor="X.Org Foundation"
[  3631.426] 	compiled for 1.20.4, module version = 1.0.0
[  3631.426] 	ABI class: X.Org Server Extension, version 10.0
[  3631.426] (II) LoadModule: "fbturbo"
[  3631.426] (II) Loading /usr/lib/xorg/modules/drivers/fbturbo_drv.so
[  3631.427] (II) Module fbturbo: vendor="X.Org Foundation"
[  3631.427] 	compiled for 1.19.2, module version = 0.5.1
[  3631.427] 	Module class: X.Org Video Driver
[  3631.427] 	ABI class: X.Org Video Driver, version 23.0
[  3631.427] (EE) fbturbo: module ABI major version (23) doesn't match the server's version (24)
[  3631.427] (EE) Failed to load module "fbturbo" (module requirement mismatch, 0)
[  3631.427] (EE) No drivers available.
[  3631.427] (EE) 
Fatal server error:
[  3631.427] (EE) no screens found(EE) 
[  3631.428] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[  3631.428] (EE) Please also check the log file at "/home/cpi/.local/share/xorg/Xorg.0.log" for additional information.
[  3631.428] (EE) 
[  3631.476] (EE) Server terminated with error (1). Closing log file.

Something is wrong with the display now, no matter which driver is set up (as if via the launcher, but I just manually did it). After booting I get the usual text screen with the “no mail” message, but that’s it. I can still SSH in of course.

I also tried building mesa again, using one of the earlier methods that I had tried, which didn’t get me into this state, thinking maybe some parameter in the build process messed things up. But that didn’t work either – same result.

The only difference I know of is the first thing I did as part of guu’s post. This:

## install the new libdrm
wget https://dri.freedesktop.org/libdrm/libdrm-2.4.100.tar.bz2
tar jxvf  libdrm-2.4.100.tar.bz2
cd libdrm-2.4.100
./configure --libdir=/usr/lib/arm-linux-gnueabihf
make
sudo make install

I hadn’t done that in my other attempts. I had just rebuilt mesa, and messed a bit with the xorg conf, but I put the conf back to it’s original state, and while the various mesa builds weren’t getting me a more accelerated display, the launcher still worked, etc.

So now I’m wondering what installing the “new libdrm” actually did, and if I can somehow undo it and go back to what I had before. Is this something I can downgrade as described in you method, @Joao_Manoel? (And thanks for putting in the effort and time to figure that out because it sounds like it will be really useful!)

I took a look at the directory that the libdrm stuff was targeting, and based on the timestamps I’m assuming that these are the files it replaced when I built the 2.4 version:


I’m not sure if it changed files in other locations (like config files, etc.), but these files all appeared at the time I did that build. I also found packages that seem to match: libdrm-freedreno1, libdrm-amdgpu1, libdrm-radeon1, libdrm-nouveau2, libdrm2. The only thing I couldn’t find a reference to was libkms. I’ll wait to try downgrading these until I verify that rolling back the udev version doesn’t help.

I’m thinking I probably can’t hurt my system any worse, so I’ll try downgrading libudev and udev as described, and see if that helps. I poked around and saw there is a libdrm2 package in debian, but there are also tons of other packages like it with various names. Hopefully that might be a way out of my problem, to revert whatever is going on with the version I installed from that tarball in guu’s post? I’m open to suggestions, and appreciate the help! In the mean time I’ll try rolling back udev and see if that helps. Thanks!

Figured it might be worth documenting this…

sudo apt install libudev1=232-25+deb9u11 showed this before completing:

The following packages were automatically installed and are no longer required:
  bubblewrap eject enchant exfat-fuse exfat-utils gdisk gir1.2-ibus-1.0
  gstreamer1.0-plugins-good gstreamer1.0-x klibc-utils libatasmart4
  libblockdev-crypto2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2
  libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2
  libenchant1c2a libibus-1.0-5 libibus-1.0-dev libimobiledevice6
  libjavascriptcoregtk-4.0-18 libklibc libntfs-3g883 libparted-fs-resize0
  libsndio-dev libudisks2-0 libupower-glib3 libusbmuxd4 libvolume-key1
  libwebkit2gtk-4.0-37 linux-base ntfs-3g pigz read-edid squashfs-tools
  usbmuxd x11-apps x11-session-utils xdg-dbus-proxy xfonts-100dpi xfonts-75dpi
  xfonts-scalable zenity zenity-common
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  bluez i2c-tools initramfs-tools initramfs-tools-core libsdl2-dev
  libsdl2-gfx-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev
  libsdl2-ttf-dev libu2f-udev libudev-dev linux-image-4.19.0-6-armmp
  linux-image-4.9.0-4-armmp linux-image-armmp media-player-info snapd udev
  udisks2 upower xorg xserver-xorg xserver-xorg-core xserver-xorg-input-all
  xserver-xorg-input-libinput xserver-xorg-input-wacom xserver-xorg-video-all
  xserver-xorg-video-amdgpu xserver-xorg-video-ati xserver-xorg-video-fbdev
  xserver-xorg-video-nouveau xserver-xorg-video-radeon xserver-xorg-video-vesa
The following packages will be DOWNGRADED:
  libudev1
0 upgraded, 0 newly installed, 1 downgraded, 33 to remove and 4 not upgraded.

image

The udev package didn’t remove anything besides udev. Also, both mentioned a bunch of packages to autoremove, but I haven’t done that.

The following packages were automatically installed and are no longer required:
  bubblewrap eject enchant exfat-fuse exfat-utils gdisk gir1.2-ibus-1.0
  gstreamer1.0-plugins-good gstreamer1.0-x klibc-utils libatasmart4
  libblockdev-crypto2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2
  libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2
  libenchant1c2a libibus-1.0-5 libibus-1.0-dev libimobiledevice6
  libjavascriptcoregtk-4.0-18 libklibc libntfs-3g883 libparted-fs-resize0
  libsndio-dev libudisks2-0 libupower-glib3 libusbmuxd4 libvolume-key1
  libwebkit2gtk-4.0-37 linux-base ntfs-3g pigz read-edid squashfs-tools
  usbmuxd x11-apps x11-session-utils xdg-dbus-proxy xfonts-100dpi xfonts-75dpi
  xfonts-scalable zenity zenity-common
Use 'sudo apt autoremove' to remove them.

and… as I expected, the results are the same as before since I seem to be suffering the adverse effects of updating that libdrm stuff. :frowning: The funny thing is, the log they suggest checking is actually the log that contains this message!

[  5377.440] (EE) fbturbo: module ABI major version (23) doesn't match the server's version (24)
[  5377.440] (EE) Failed to load module "fbturbo" (module requirement mismatch, 0)
[  5377.440] (EE) No drivers available.
[  5377.440] (EE) 
Fatal server error:
[  5377.440] (EE) no screens found(EE) 
[  5377.440] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[  5377.440] (EE) Please also check the log file at "/home/cpi/.local/share/xorg/Xorg.0.log" for additional information.
[  5377.440] (EE) 
[  5377.491] (EE) Server terminated with error (1). Closing log file.

Thinking I was on the right track, I think I might have shot myself in the foot… I decided to try to down grade the drm libs in a similar way. I’ve attached a log of what I did.

Since I’m still getting the same errors in the Xorg conf, I didn’t solve anything. there (and the launcher doesn’t run, etc.) But I also inadvertently uninstalled lots of packages when I removed these. On the plus side, I guess I have the log so I know what I had installed, but at this point I’m guessing what I’ve got is a lost cause, and I should next just spend time archiving and documenting as much as I can, and hopefully be able to recreate some of what I have on a new clean card. :frowning:

I wish there was a way to easily mount the filesystem on the card to make archiving easier. But I’m probably just going to tar.gz a bunch of stuff and then put it on the new card.

cpi@clockworkpi:~$ sudo apt install libdrm2=2.4.74-1
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  bubblewrap ca-certificates-java chromium-sandbox csound-data
  default-jdk-headless default-jre-headless eject enchant exfat-fuse
  exfat-utils fonts-dejavu-extra fonts-noto-core fonts-noto-hinted
  fonts-noto-ui-core fonts-roboto-hinted fonts-roboto-unhinted gdisk
  gir1.2-atspi-2.0 gir1.2-ibus-1.0 gstreamer1.0-plugins-good gstreamer1.0-x
  hunspell-en-us java-common klibc-utils kodi-repository-kodi kwayland-data
  libaa1 libaribb24-0 libass9 libatasmart4 libatk-bridge2.0-dev
  libatspi2.0-dev libavc1394-0 libavfilter7 libbasicusageenvironment1
  libblockdev-crypto2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2
  libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2
  libbluetooth3 libbrotli1 libbs2b0 libbulletml0v5 libcaca-dev libccd2
  libcddb2 libcdio-cdda2 libcdio-paranoia2 libcdio18 libcec4 libcrossguid0
  libdc1394-22 libdmx-dev libdmx1 libdrm-common libdrm-etnaviv1 libdrm-exynos1
  libdrm-omap1 libdrm-tegra0 libdv4 libdvbpsi10 libdvdnav4 libdvdread4
  libebml4v5 libenca0 libenchant1c2a libfam0 libflac-dev libflite1
  libfontenc-dev libfontenc1 libfs-dev libfs6 libgles1 libgles2 libgles2-mesa
  libglvnd0 libgpgmepp6 libgphobos76 libgraphene-1.0-0 libgroupsock8
  libhfstospell10 libhunspell-1.7-0 libhyphen0 libibus-1.0-5 libibus-1.0-dev
  libiec61883-0 libimagequant0 libimobiledevice6 libinput-bin libinput10
  libixml10 libjavascriptcoregtk-4.0-18 libjs-iscroll libkate1 libkf5archive5
  libkf5auth-data libkf5codecs-data libkf5codecs5 libkf5completion-data
  libkf5config-bin libkf5config-data libkf5configcore5
  libkf5configwidgets-data libkf5coreaddons-data libkf5coreaddons5
  libkf5dbusaddons-bin libkf5dbusaddons-data libkf5doctools5 libkf5i18n-data
  libkf5i18n5 libkf5iconthemes-data libkf5itemviews-data libkf5jobwidgets-data
  libkf5kiontlm5 libkf5notifications-data libkf5service-data libkf5solid5-data
  libkf5sonnet5-data libkf5sonnetcore5 libkf5textwidgets-data
  libkf5wallet-data libkf5widgetsaddons-data libkf5windowsystem-data libklibc
  liblilv-0-0 liblivemedia64 liblo7 liblua5.2-0 libmatroska6v5 libmicrodns0
  libmicrohttpd12 libmikmod-config libmikmod-dev libminizip1 libmpeg2-4
  libmtdev1 libmtp-common libmtp-runtime libmtp9 libmysofa0 libnfs12 libnorm1
  libntfs-3g883 libode8 libopengl0 libopenmpt-modplug1 liborc-0.4-dev
  liborc-0.4-dev-bin libp8-platform2 libparted-fs-resize0 libpciaccess-dev
  libpciaccess0 libpgm-5.2-0 libplacebo7 libplist3 libpostproc55
  libprotobuf-lite17 libpugixml1v5 libqapt3 libqt5positioning5 libqt5script5
  libqt5sensors5 libqt5sql5 libqt5sql5-sqlite libqt5test5 libqt5texttospeech5
  libqt5webchannel5 libqt5xml5 libraw1394-11 libre2-5 libresid-builder0c2a
  libretro-core-info librtaudio6 librtmidi4 librubberband2 libserd-0-0
  libset-scalar-perl libsfml-audio2.5 libsfml-network2.5 libsfml-system2.5
  libsidplay2 libslang2-dev libsndio-dev libsodium23 libsord-0-0
  libspatialaudio0 libsratom-0-0 libstk-4.5.0 libswscale4 libswscale5
  libtinyxml2.6.2v5 libudisks2-0 libupnp13 libupower-glib3
  libusageenvironment3 libusbmuxd4 libva-wayland2 libvidstab1.1 libvoikko1
  libvolume-key1 libvorbisidec1 libwacom-bin libwacom-common libwacom2
  libwebp-dev libwebpdemux2 libwoff1 libxaw7-dev libxcb-xv0 libxfont-dev
  libxfont2 libxkbcommon-dev libxkbfile-dev libxkbfile1 libxmu-dev
  libxmu-headers libxmuu-dev libxres-dev libxres1 libxss-dev libxtst-dev
  libxv-dev libxv1 libxvmc-dev libxvmc1 libzmq5 linux-base mame-data
  mu-cade-data ntfs-3g openjdk-11-jdk-headless openjdk-11-jre-headless
  parsec47-data pigz python-olefile python-pil python-sip python3-pyxattr
  python3-sip qt5-qmake qt5-qmake-bin read-edid retroarch-assets rrootage-data
  rtmpdump sonnet-plugins squashfs-tools stk titanion-data torus-trooper-data
  tumiki-fighters-data usbmuxd vlc-data vlc-plugin-base x11-apps
  x11-session-utils x11-xkb-utils x11proto-bigreqs-dev x11proto-dmx-dev
  x11proto-fonts-dev x11proto-gl-dev x11proto-record-dev x11proto-resource-dev
  x11proto-scrnsaver-dev x11proto-video-dev x11proto-xcmisc-dev
  x11proto-xf86bigfont-dev x11proto-xf86dri-dev xdg-dbus-proxy xfonts-100dpi
  xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils
  xserver-common youtube-dl zenity-common
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  chromium chromium-common csound csound-utils default-jdk default-jre ffmpeg
  gir1.2-gst-plugins-base-1.0 gstreamer-qapt gstreamer0.10-qapt
  gstreamer1.0-gl kio kodi kodi-bin kodi-data kodi-visualization-spectrum
  kwayland-integration libatk-wrapper-java libatk-wrapper-java-jni
  libavdevice58 libcsound64-6.0 libdbusmenu-qt5-2 libdirectfb-1.7-7
  libdrm-amdgpu1 libdrm-dev libegl-mesa0 libegl1 libegl1-mesa libegl1-mesa-dev
  libepoxy-dev libfltk1.1 libgbm1 libgl1 libgl1-mesa-dev libgl1-mesa-dri
  libgl1-mesa-glx libgles2-mesa-dev libglew-dev libglew2.1 libglfw3
  libglfw3-dev libglu1-mesa libglu1-mesa-dev libglvnd-dev libglx-mesa0 libglx0
  libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-dev libgtk-3-dev
  libkf5auth5 libkf5completion5 libkf5configgui5 libkf5configwidgets5
  libkf5crash5 libkf5dbusaddons5 libkf5guiaddons5 libkf5iconthemes-bin
  libkf5iconthemes5 libkf5idletime5 libkf5itemviews5 libkf5jobwidgets5
  libkf5kiocore5 libkf5kiowidgets5 libkf5notifications5 libkf5service-bin
  libkf5service5 libkf5solid5 libkf5sonnetui5 libkf5textwidgets5
  libkf5wallet-bin libkf5wallet5 libkf5waylandclient5 libkf5widgetsaddons5
  libkf5windowsystem5 libkwalletbackend5-5 libphonon4qt5-4 libpolkit-qt5-1-1
  libqapt3-runtime libqt5designer5 libqt5gui5 libqt5help5 libqt5opengl5
  libqt5opengl5-dev libqt5printsupport5 libqt5quick5 libqt5svg5
  libqt5waylandclient5 libqt5waylandcompositor5 libqt5webkit5 libqt5widgets5
  libqt5x11extras5 libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev
  libsdl-ttf2.0-dev libsdl1.2-dev libsfml-dev libsfml-graphics2.5
  libsfml-window2.5 libva-dev libva-glx2 libvdpau-va-gl1 libwayland-egl1-mesa
  libwebkit2gtk-4.0-37 mame mesa-common-dev mesa-utils mesa-va-drivers
  mesa-vdpau-drivers mplayer mpv mu-cade openjdk-11-jdk openjdk-11-jre
  parsec47 phantomjs phonon4qt5 phonon4qt5-backend-vlc polkit-kde-agent-1
  pyqt5-dev-tools python-pyqt5 python-pyqt5.qtopengl python3-pyqt5
  qml-module-qtgraphicaleffects qml-module-qtquick-controls
  qml-module-qtquick-dialogs qml-module-qtquick-layouts
  qml-module-qtquick-privatewidgets qml-module-qtquick-window2
  qml-module-qtquick2 qt5-default qt5-gtk-platformtheme qtbase5-dev qtwayland5
  retroarch rrootage tightvncserver titanion torus-trooper tumiki-fighters uqm
  uqm-content uqm-music uqm-voice va-driver-all vdpau-driver-all
  vlc-plugin-video-output wpagui x11-utils xorg-dev xserver-xorg-dev zenity
The following packages will be DOWNGRADED:
  libdrm2
0 upgraded, 0 newly installed, 1 downgraded, 152 to remove and 6 not upgraded.
Need to get 32.6 kB of archives.
After this operation, 895 MB disk space will be freed.
Do you want to continue? [Y/n]
Get:1 http://mirrors.accretive-networks.net/debian stretch/main armhf libdrm2 armhf 2.4.74-1 [32.6 kB]
Fetched 32.6 kB in 0s (200 kB/s)
(Reading database ... 205343 files and directories currently installed.)
Removing chromium (79.0.3945.130-1~deb10u1) ...
Removing chromium-common (79.0.3945.130-1~deb10u1) ...
Removing csound-utils (1:6.12.2~dfsg-3.1) ...
Removing csound (1:6.12.2~dfsg-3.1) ...
Removing default-jdk (2:1.11-71) ...
Removing default-jre (2:1.11-71) ...
Removing ffmpeg (7:4.1.4-1~deb10u1) ...
Removing libgstreamer-plugins-base1.0-dev:armhf (1.14.4-2) ...
Removing gir1.2-gst-plugins-base-1.0:armhf (1.14.4-2) ...
Removing gstreamer0.10-qapt (3.0.4-1) ...
Removing gstreamer-qapt (3.0.4-1) ...
Removing gstreamer1.0-gl:armhf (1.14.4-2) ...
Removing kio (5.54.1-1) ...
Removing kodi (2:17.6+dfsg1-4+b1) ...
Removing kodi-bin:armhf (2:17.6+dfsg1-4+b1) ...
Removing kodi-data (2:17.6+dfsg1-4) ...
Removing kodi-visualization-spectrum:armhf (1.1.1-1) ...
Removing kwayland-integration:armhf (5.14.5-1) ...
Removing libatk-wrapper-java-jni:armhf (0.33.3-22) ...
Removing libatk-wrapper-java (0.33.3-22) ...
Removing mpv (0.29.1-1) ...
Removing libavdevice58:armhf (7:4.1.4-1~deb10u1) ...
Removing libcsound64-6.0 (1:6.12.2~dfsg-3.1) ...
Removing libkf5wallet-bin (5.54.0-1) ...
Removing libkf5wallet5:armhf (5.54.0-1) ...
Removing libkwalletbackend5-5:armhf (5.54.0-1) ...
Removing libkf5notifications5:armhf (5.54.0-1) ...
Removing libdbusmenu-qt5-2:armhf (0.9.3+16.04.20160218-1) ...
Removing mplayer (2:1.3.0-8+b4) ...
Removing libdirectfb-1.7-7:armhf (1.7.7-9) ...
Removing qml-module-qtquick-controls:armhf (5.11.3-2) ...
Removing qml-module-qtgraphicaleffects:armhf (5.11.3-2) ...
Removing qml-module-qtquick2:armhf (5.11.3-4) ...
Removing libsfml-dev:armhf (2.5.1+dfsg-1) ...
Removing libsdl-ttf2.0-dev:armhf (2.0.11-6) ...
Removing libglew-dev:armhf (2.1.0-4) ...
Removing libgl1-mesa-glx:armhf (18.3.6-2) ...
Removing vdpau-driver-all:armhf (1.1.1-10) ...
Removing mesa-vdpau-drivers:armhf (18.3.6-2) ...
Removing libgtk-3-dev:armhf (3.24.5-1) ...
Removing qt5-default:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing xorg-dev (1:7.7+19) ...
Removing xserver-xorg-dev (2:1.20.4-1) ...
Removing phonon4qt5:armhf (4:4.10.2-1) ...
Removing phonon4qt5-backend-vlc:armhf (0.10.2-1) ...
Removing vlc-plugin-video-output:armhf (3.0.8-0+deb10u1) ...
Removing zenity (3.30.0-2) ...
Removing libwebkit2gtk-4.0-37:armhf (2.26.3-1~deb10u1) ...
Removing retroarch (1.3.6+dfsg1-1) ...
Removing libegl1-mesa:armhf (18.3.6-2) ...
Removing libepoxy-dev:armhf (1.5.3-0.1) ...
Removing libfltk1.1:armhf (1.1.10-26) ...
Removing libgstreamer-gl1.0-0:armhf (1.14.4-2) ...
Removing wpagui (2:2.7+git20190128+0c1e29f-6+deb10u1) ...
Removing tightvncserver (1:1.3.9-9) ...
Removing x11-utils (7.7+4) ...
Removing uqm-voice (0.6.0+deb1-6) ...
Removing mesa-utils (8.4.0-1+b1) ...
Removing libglew2.1:armhf (2.1.0-4) ...
Removing libglfw3-dev:armhf (3.2.1-1) ...
Removing libglfw3:armhf (3.2.1-1) ...
Removing torus-trooper (0.22.dfsg1-12) ...
Removing titanion (0.3.dfsg1-7) ...
Removing mu-cade (0.11.dfsg1-12+b1) ...
Removing rrootage (0.23a-12+b1) ...
Removing libkf5kiowidgets5:armhf (5.54.1-1) ...
Removing libkf5kiocore5:armhf (5.54.1-1) ...
Removing libkf5textwidgets5:armhf (5.54.0-1) ...
Removing libkf5completion5:armhf (5.54.0-1) ...
Removing libqapt3-runtime (3.0.4-1) ...
Removing polkit-kde-agent-1 (4:5.14.5-1) ...
Removing libkf5iconthemes-bin (5.54.0-1) ...
Removing libkf5iconthemes5:armhf (5.54.0-1) ...
Removing libkf5service-bin (5.54.0-1) ...
Removing libkf5crash5:armhf (5.54.0-1) ...
Removing libkf5service5:armhf (5.54.0-1) ...
Removing libkf5dbusaddons5:armhf (5.54.0-1) ...
Removing libkf5idletime5:armhf (5.54.0-1) ...
Removing libkf5itemviews5:armhf (5.54.0-1) ...
Removing libkf5jobwidgets5:armhf (5.54.0-1) ...
Removing libkf5solid5:armhf (5.54.0-1) ...
Removing libkf5sonnetui5:armhf (5.54.0-1) ...
Removing libkf5waylandclient5:armhf (4:5.54.0-1) ...
Removing libkf5windowsystem5:armhf (5.54.0-1) ...
Removing libphonon4qt5-4:armhf (4:4.10.2-1) ...
Removing python-pyqt5.qtopengl (5.11.3+dfsg-1+b3) ...
Removing python-pyqt5 (5.11.3+dfsg-1+b3) ...
Removing pyqt5-dev-tools (5.11.3+dfsg-1+b3) ...
Removing python3-pyqt5 (5.11.3+dfsg-1+b3) ...
Removing libqt5designer5:armhf (5.11.3-4) ...
Removing libqt5help5:armhf (5.11.3-4) ...
Removing libqt5opengl5-dev:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing phantomjs (2.1.1+dfsg-2) ...
Removing libqt5webkit5:armhf (5.212.0~alpha2-21) ...
Removing libqt5opengl5:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing qtwayland5:armhf (5.11.3-2) ...
Removing libqt5waylandcompositor5:armhf (5.11.3-2) ...
Removing qml-module-qtquick-window2:armhf (5.11.3-4) ...
Removing libqt5svg5:armhf (5.11.3-2) ...
Removing libqt5waylandclient5:armhf (5.11.3-2) ...
Removing qml-module-qtquick-dialogs:armhf (5.11.3-2) ...
Removing qml-module-qtquick-privatewidgets:armhf (5.11.3-2) ...
Removing mame (0.206+dfsg.1-1) ...
Removing libsdl-gfx1.2-dev:armhf (2.0.25-11) ...
Removing libsdl-image1.2-dev:armhf (1.2.12-10+deb10u1) ...
Removing libsdl-mixer1.2-dev:armhf (1.2.12-15) ...
Removing libsfml-graphics2.5:armhf (2.5.1+dfsg-1) ...
Removing libsfml-window2.5:armhf (2.5.1+dfsg-1) ...
Removing libva-dev:armhf (2.4.0-1) ...
Removing libva-glx2:armhf (2.4.0-1) ...
Removing libvdpau-va-gl1:armhf (0.4.2-1+b1) ...
Removing libwayland-egl1-mesa:armhf (18.3.6-2) ...
Removing va-driver-all:armhf (2.4.0-1) ...
Removing mesa-va-drivers:armhf (18.3.6-2) ...
Removing openjdk-11-jdk:armhf (11.0.6+10-1~deb10u1) ...
Removing openjdk-11-jre:armhf (11.0.6+10-1~deb10u1) ...
Removing parsec47 (0.2.dfsg1-9) ...
Removing qml-module-qtquick-layouts:armhf (5.11.3-4) ...
Removing qt5-gtk-platformtheme:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing tumiki-fighters (0.2.dfsg1-9) ...
Removing uqm-music (0.6.0+deb1-6) ...
Removing libsdl1.2-dev (1.2.15+dfsg2-4) ...
Removing libglu1-mesa-dev:armhf (9.0.0-2.1+b3) ...
Removing libgl1-mesa-dev:armhf (18.3.6-2) ...
Removing qtbase5-dev:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing libgles2-mesa-dev:armhf (18.3.6-2) ...
Removing libegl1-mesa-dev:armhf (18.3.6-2) ...
Removing mesa-common-dev:armhf (18.3.6-2) ...
Removing libdrm-dev:armhf (2.4.97-1) ...
Removing libglvnd-dev:armhf (1.1.0-1) ...
Removing libglu1-mesa:armhf (9.0.0-2.1+b3) ...
Removing libkf5configwidgets5:armhf (5.54.0-1) ...
Removing libkf5auth5:armhf (5.54.0-2) ...
Removing libkf5configgui5:armhf (5.54.0-1+deb10u1) ...
Removing libkf5guiaddons5:armhf (5.54.0-1) ...
Removing libkf5widgetsaddons5:armhf (5.54.0-1) ...
Removing libpolkit-qt5-1-1:armhf (0.112.0-6) ...
Removing libqt5printsupport5:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing libqt5quick5:armhf (5.11.3-4) ...
Removing libqt5widgets5:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing libqt5x11extras5:armhf (5.11.3-2) ...
Removing libqt5gui5:armhf (5.11.3+dfsg1-1+deb10u1) ...
Removing libegl1:armhf (1.1.0-1) ...
Removing libegl-mesa0:armhf (18.3.6-2) ...
Removing libgbm1:armhf (18.3.6-2) ...
Removing uqm-content (0.6.0+deb1-6) ...
Removing uqm (0.6.2.dfsg-9.5) ...
Removing libgl1:armhf (1.1.0-1) ...
Removing libglx0:armhf (1.1.0-1) ...
Removing libglx-mesa0:armhf (18.3.6-2) ...
Removing libgl1-mesa-dri:armhf (18.3.6-2) ...
Removing libdrm-amdgpu1:armhf (2.4.97-1) ...
dpkg: warning: downgrading libdrm2:armhf from 2.4.97-1 to 2.4.74-1
(Reading database ... 182110 files and directories currently installed.)
Preparing to unpack .../libdrm2_2.4.74-1_armhf.deb ...
Unpacking libdrm2:armhf (2.4.74-1) over (2.4.97-1) ...
Setting up libdrm2:armhf (2.4.74-1) ...
Processing triggers for menu (2.1.47+b1) ...
Processing triggers for mime-support (3.62) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Processing triggers for libglib2.0-0:armhf (2.58.3-2+deb10u2) ...
Processing triggers for libc-bin (2.28-10) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for dbus (1.12.16-1) ...
Processing triggers for libvlc-bin:armhf (3.0.8-0+deb10u1) ...
cpi@clockworkpi:~$ sudo apt install libdrm-freedreno1=2.4.74-1 libdrm-amdgpu1=2.4.74-1 libdrm-radeon1=2.4.74-1 libdrm-nouveau2=2.4.74-1
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  bubblewrap ca-certificates-java chromium-sandbox csound-data
  default-jdk-headless default-jre-headless eject enchant exfat-fuse
  exfat-utils fonts-dejavu-extra fonts-noto-core fonts-noto-hinted
  fonts-noto-ui-core fonts-roboto-hinted fonts-roboto-unhinted gdisk
  gir1.2-atspi-2.0 gir1.2-ibus-1.0 gstreamer1.0-plugins-good gstreamer1.0-x
  hunspell-en-us java-common klibc-utils kodi-repository-kodi kwayland-data
  libaa1 libaribb24-0 libass9 libatasmart4 libatk-bridge2.0-dev
  libatspi2.0-dev libavc1394-0 libavfilter7 libbasicusageenvironment1
  libblockdev-crypto2 libblockdev-fs2 libblockdev-loop2 libblockdev-part-err2
  libblockdev-part2 libblockdev-swap2 libblockdev-utils2 libblockdev2
  libbluetooth3 libbrotli1 libbs2b0 libbulletml0v5 libcaca-dev libccd2
  libcddb2 libcdio-cdda2 libcdio-paranoia2 libcdio18 libcec4 libcrossguid0
  libdc1394-22 libdmx-dev libdmx1 libdrm-common libdrm-etnaviv1 libdrm-exynos1
  libdrm-omap1 libdrm-tegra0 libdv4 libdvbpsi10 libdvdnav4 libdvdread4
  libebml4v5 libenca0 libenchant1c2a libfam0 libflac-dev libflite1
  libfontenc-dev libfontenc1 libfs-dev libfs6 libgles1 libgles2 libgles2-mesa
  libglvnd0 libgpgmepp6 libgphobos76 libgraphene-1.0-0 libgroupsock8
  libhfstospell10 libhunspell-1.7-0 libhyphen0 libibus-1.0-5 libibus-1.0-dev
  libiec61883-0 libimagequant0 libimobiledevice6 libinput-bin libinput10
  libixml10 libjavascriptcoregtk-4.0-18 libjs-iscroll libkate1 libkf5archive5
  libkf5auth-data libkf5codecs-data libkf5codecs5 libkf5completion-data
  libkf5config-bin libkf5config-data libkf5configcore5
  libkf5configwidgets-data libkf5coreaddons-data libkf5coreaddons5
  libkf5dbusaddons-bin libkf5dbusaddons-data libkf5doctools5 libkf5i18n-data
  libkf5i18n5 libkf5iconthemes-data libkf5itemviews-data libkf5jobwidgets-data
  libkf5kiontlm5 libkf5notifications-data libkf5service-data libkf5solid5-data
  libkf5sonnet5-data libkf5sonnetcore5 libkf5textwidgets-data
  libkf5wallet-data libkf5widgetsaddons-data libkf5windowsystem-data libklibc
  liblilv-0-0 liblivemedia64 liblo7 liblua5.2-0 libmatroska6v5 libmicrodns0
  libmicrohttpd12 libmikmod-config libmikmod-dev libminizip1 libmpeg2-4
  libmtdev1 libmtp-common libmtp-runtime libmtp9 libmysofa0 libnfs12 libnorm1
  libntfs-3g883 libode8 libopengl0 libopenmpt-modplug1 liborc-0.4-dev
  liborc-0.4-dev-bin libp8-platform2 libparted-fs-resize0 libpciaccess-dev
  libpciaccess0 libpgm-5.2-0 libplacebo7 libplist3 libpostproc55
  libprotobuf-lite17 libpugixml1v5 libqapt3 libqt5positioning5 libqt5script5
  libqt5sensors5 libqt5sql5 libqt5sql5-sqlite libqt5test5 libqt5texttospeech5
  libqt5webchannel5 libqt5xml5 libraw1394-11 libre2-5 libresid-builder0c2a
  libretro-core-info librtaudio6 librtmidi4 librubberband2 libserd-0-0
  libset-scalar-perl libsfml-audio2.5 libsfml-network2.5 libsfml-system2.5
  libsidplay2 libslang2-dev libsndio-dev libsodium23 libsord-0-0
  libspatialaudio0 libsratom-0-0 libstk-4.5.0 libswscale4 libswscale5
  libtinyxml2.6.2v5 libudisks2-0 libupnp13 libupower-glib3
  libusageenvironment3 libusbmuxd4 libva-wayland2 libvidstab1.1 libvoikko1
  libvolume-key1 libvorbisidec1 libwacom-bin libwacom-common libwacom2
  libwebp-dev libwebpdemux2 libwoff1 libxaw7-dev libxcb-xv0 libxfont-dev
  libxfont2 libxkbcommon-dev libxkbfile-dev libxkbfile1 libxmu-dev
  libxmu-headers libxmuu-dev libxres-dev libxres1 libxss-dev libxtst-dev
  libxv-dev libxv1 libxvmc-dev libxvmc1 libzmq5 linux-base mame-data
  mu-cade-data ntfs-3g openjdk-11-jdk-headless openjdk-11-jre-headless
  parsec47-data pigz python-olefile python-pil python-sip python3-pyxattr
  python3-sip qt5-qmake qt5-qmake-bin read-edid retroarch-assets rrootage-data
  rtmpdump sonnet-plugins squashfs-tools stk titanion-data torus-trooper-data
  tumiki-fighters-data usbmuxd vlc-data vlc-plugin-base x11-apps
  x11-session-utils x11-xkb-utils x11proto-bigreqs-dev x11proto-dmx-dev
  x11proto-fonts-dev x11proto-gl-dev x11proto-record-dev x11proto-resource-dev
  x11proto-scrnsaver-dev x11proto-video-dev x11proto-xcmisc-dev
  x11proto-xf86bigfont-dev x11proto-xf86dri-dev xdg-dbus-proxy xfonts-100dpi
  xfonts-75dpi xfonts-base xfonts-encodings xfonts-scalable xfonts-utils
  xserver-common youtube-dl zenity-common
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  libdrm-amdgpu1
The following packages will be DOWNGRADED:
  libdrm-freedreno1 libdrm-nouveau2 libdrm-radeon1
0 upgraded, 1 newly installed, 3 downgraded, 0 to remove and 6 not upgraded.
Need to get 101 kB of archives.
After this operation, 58.4 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://mirrors.accretive-networks.net/debian stretch/main armhf libdrm-amdgpu1 armhf 2.4.74-1 [25.2 kB]
Get:2 http://mirrors.accretive-networks.net/debian stretch/main armhf libdrm-freedreno1 armhf 2.4.74-1 [23.8 kB]
Get:3 http://mirrors.accretive-networks.net/debian stretch/main armhf libdrm-nouveau2 armhf 2.4.74-1 [23.5 kB]
Get:4 http://mirrors.accretive-networks.net/debian stretch/main armhf libdrm-radeon1 armhf 2.4.74-1 [28.1 kB]
Fetched 101 kB in 0s (500 kB/s)
Selecting previously unselected package libdrm-amdgpu1:armhf.
(Reading database ... 182110 files and directories currently installed.)
Preparing to unpack .../libdrm-amdgpu1_2.4.74-1_armhf.deb ...
Unpacking libdrm-amdgpu1:armhf (2.4.74-1) ...
dpkg: warning: downgrading libdrm-freedreno1:armhf from 2.4.97-1 to 2.4.74-1
Preparing to unpack .../libdrm-freedreno1_2.4.74-1_armhf.deb ...
Unpacking libdrm-freedreno1:armhf (2.4.74-1) over (2.4.97-1) ...
dpkg: warning: downgrading libdrm-nouveau2:armhf from 2.4.97-1 to 2.4.74-1
Preparing to unpack .../libdrm-nouveau2_2.4.74-1_armhf.deb ...
Unpacking libdrm-nouveau2:armhf (2.4.74-1) over (2.4.97-1) ...
dpkg: warning: downgrading libdrm-radeon1:armhf from 2.4.97-1 to 2.4.74-1
Preparing to unpack .../libdrm-radeon1_2.4.74-1_armhf.deb ...
Unpacking libdrm-radeon1:armhf (2.4.74-1) over (2.4.97-1) ...
Setting up libdrm-nouveau2:armhf (2.4.74-1) ...
Setting up libdrm-radeon1:armhf (2.4.74-1) ...
Setting up libdrm-freedreno1:armhf (2.4.74-1) ...
Setting up libdrm-amdgpu1:armhf (2.4.74-1) ...
Processing triggers for libc-bin (2.28-10) ...
cpi@clockworkpi:~$

I think in your stage would be easier for you to just make backup, and flash a new image.

If you still want to look for a solution, we can try to help because the information will be useful in the future as well.

Xorg with lima, launchers etc are the last thing to work in your system right now. Before it Mesa needs to work properly. For it, you don’t need Xorg, I actually don’t have Xorg installed in my system. I’m running Retroarch straight from terminal with KMS and lima support. To try to understand what is happening you could try the following:

Check if lima is being loaded in kernel:

dmesg | grep lima
dmesg | grep sun4i

Post here what you get from both commands

So, for now I recommend you to try kmscube. kmscube is a debug tool from mesa to check mesa, kms, egl, gbm. If you get it working properly we can go to try to fix x11 and launchers after.

So clone kmscube from repository:

git clone https://gitlab.freedesktop.org/mesa/kmscube

Enter in directory:

cd kmscube

configure:

./autogen.sh

compile it:

make -j4

run the app:

./kmscube

Post here what you get

1 Like
[  3631.427] (EE) fbturbo: module ABI major version (23) doesn't match the server's version (24)

you need recompile fbturbo if you want use it

try remove your xorg conf file to drop out fbturbo stuff and let xorg autodetect things

from my old history file :

libump deps of fbturbo

git clone --depth 1 https://github.com/linux-sunxi/libump.git
cd libump/
autoreconf -i
./configure --prefix=/usr
make -j4
sudo make install

fbturbo

git clone --depth 1 https://github.com/ssvb/xf86-video-fbturbo.git
cd xf86-video-fbturbo/
./autogen.sh --prefix=/usr
make -j4
sudo make install

and if need, fbdev :

git clone --depth 1 https://gitlab.freedesktop.org/xorg/driver/xf86-video-fbdev.git
cd xf86-video-fbdev/
./autogen.sh --prefix=/usr
make -j4
sudo make install
3 Likes

This is very useful and valuable information @r043v.

I think we could make a wiki page with this procedures and how to compile from source some important libraries like this one that you just posted.

2 Likes

Interesting and thanks, @Joao_Manoel and @r043v! I’ll definitely try this soon (probably tomorrow). I didn’t really have much time tonight to spend on this. :frowning: I removed the card from my Gameshell for now, but I’ll see what we can learn from it.

I put a different card in, with a fresh install of deot_V2+ 200128.img.bz2. Haven’t done much with it, but it works. (I swapped my physical A/B, X/Y buttons though since the default mappings were different. I’d been using the XBOX defaults until now because they felt right to me.)

It seems that something good might be coming from my troubles after all, so I’m glad about that. I’ll share what I find and then hopefully we’ll have a better picture of what needs to be done to support proper upgrading. Thanks!

1 Like

Does this work for you?

1 Like