Re: Kernel changes causing AMDGPU / DRM to fail? i2c related?
- In reply to: Tijl Coosemans : "Re: Kernel changes causing AMDGPU / DRM to fail? i2c related?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 01 Feb 2022 09:39:49 UTC
On Mon, 31 Jan 2022 17:02:30 +0100 Tijl Coosemans <tijl@FreeBSD.org> wrote: > On Sun, 30 Jan 2022 21:23:49 +0300 Vladimir Kondratyev > <wulf@FreeBSD.org> wrote: >> On 30.01.2022 00:25, Stefan Esser wrote: >>> After rebooting with freshly built world, kernel and the amdgpu driver >>> my console stopped working. It goes blank and the display goes into a >>> power save mode, as soon as the amdgpu driver is loaded. >>> >>> The GPU (a Radeon R7 250E) is correctly detected as before, but there >>> is an error message "drmn0: [drm] Cannot find any crtc or sizes". >>> >>> I'm asking here and not on the ports list, since the AMDGPU driver has >>> not been updated for half a year. But to be sure that there is no mismatch >>> between kernel and user land, I have rebuilt all X11 server and library >>> ports. >>> >>> There have been changes affecting the i2c driver, IIRC, and the error >>> message seems to point at an issue obtaining information from the LCD >>> display. >> >> drm-kmod commit 534aa199c10d forced it to use i2c from base. >> >> You may try to checkout previous revision (444dc58f0247) to find out >> if in-base i2c is guilty or not. > > I found that since base dbc920bd9a9b (linuxkpi interval_tree) > linuxkpi.ko now exports some rb_* functions (from rbtree.h). These are > declared static inline but the compiler may decide not to inline them. > These functions conflict with the ones in linuxkpi_gplv2.ko from > drm-kmod, because both implementations use a different order for the > fields in struct rb_node. Here's a list of functions that linuxkpi.ko and linuxkpi_gplv2.ko have in common in my case. Some are probably ok. device_register i2c_transfer linux_compat_init lkpi_arch_phys_wc_add lkpi_arch_phys_wc_del rb_erase_cached rb_insert_color_cached sysctl_handle_attr