Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Jan 2022 14:19:53 +0300
From:      Vladimir Kondratyev <wulf@FreeBSD.org>
To:        freebsd-current@freebsd.org
Subject:   Re: Kernel changes causing AMDGPU / DRM to fail? i2c related?
Message-ID:  <41f0a849-f2c9-75fe-e0ed-e60356ac4728@FreeBSD.org>
In-Reply-To: <c415393e-1cf0-2f7f-36c8-9d4bde73cfdc@FreeBSD.org>
References:  <a9560156-4d67-7ca2-e276-31e5585ce58e@FreeBSD.org> <4611d16a-ef17-d8f3-c2c0-1b1091723646@FreeBSD.org> <c415393e-1cf0-2f7f-36c8-9d4bde73cfdc@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 30.01.2022 22:43, Stefan Esser wrote:
> Am 30.01.22 um 19:23 schrieb Vladimir Kondratyev:
>> 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".
>>>
> [...]
>>> [drm] AMDGPU Display Connectors
>>> [drm] Connector 0:
>>> [drm]   DP-1
>>> [drm]   HPD4
>>> [drm]   DDC: 0x1950 0x1950 0x1951 0x1951 0x1952 0x1952 0x1953 0x1953
>>> [drm]   Encoders:
>>> [drm]     DFP1: INTERNAL_UNIPHY2
>>> [drm] Connector 1:
>>> [drm]   HDMI-A-1
>>> [drm]   HPD1
>>> [drm]   DDC: 0x195c 0x195c 0x195d 0x195d 0x195e 0x195e 0x195f 0x195f
>>> [drm]   Encoders:
>>> [drm]     DFP2: INTERNAL_UNIPHY2
>>> [drm] Connector 2:
>>> [drm]   DVI-I-1
>>> [drm]   HPD2
>>> [drm]   DDC: 0x1958 0x1958 0x1959 0x1959 0x195a 0x195a 0x195b 0x195b
>>> [drm]   Encoders:
>>> [drm]     DFP3: INTERNAL_UNIPHY
>>> [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> drmn0: [drm] Cannot find any crtc or sizes
>>> drmn0: [drm] Cannot find any crtc or sizes
>>> drmn0: [drm] Cannot find any crtc or sizes
>>> [drm] Initialized amdgpu 3.37.0 20150101 for drmn0 on minor 0
>>>
>>> A successful driver attach from a reboot a few days ago had ended in:
>>>
>>> [drm]     CRT1: INTERNAL_KLDSCP_DAC1
>>> [drm] fb mappable at 0xE0503000
>>> [drm] vram apper at 0xE0000000
>>> [drm] size 33177600
>>> [drm] fb depth is 24
>>> [drm]    pitch is 15360
>>> [drm] Initialized amdgpu 3.36.0 20150101 for drmn0 on minor 0
>>>
>>> Regards, STefan
>>
>> drm-kmod commit 534aa199c10d forced it to use i2c from base.
> 
> Hi Vladimir,
> 
> thank you for the information! I'm using drm-devel-kmod, and in fact found
> that 5.5.19.g20211230 works, while 5.7.19.g20220126 (committed as 0c38674b389ad
> on 2022-01-26) causes the failure.
> 
>> You may try to checkout previous revision (444dc58f0247) to find out if in-base
>> i2c is guilty or not.
> 
> Assuming that the same change to use the system i2c code has been in the latest
> commit to the drm-devel-kmod port, this should be proven, now. ;-)
> 
> These is the list of in-kernel i2c modules on my system (a Ryzen 9 5950 on an
> ASUS mainboard with B550 chip-set):
> 
> $ kldstat -v | grep iic
> 		 68 iicsmb/smbus
> 		 67 iicbus/iicsmb
> 		 66 iichb/iicbus
> 		 65 iicbb/iicbus
> 		 64 iicbus/iic
> 		 63 iicbus/ic
> 		213 lkpi_iicbb/iicbb
> 		212 lkpi_iic/lkpi_iicbb
> 		211 lkpi_iic/iicbus
> 		210 drmn/lkpi_iic
> 		 56 iichid/hidbus
> 
> Can I help debug this issue?
> 
> I could re-install the latest version and boot with hw.dri.drm_debug or
> dev.drm.drm_debug set?
> 
> Or are there other settings to get a debug log from the i2c side?
> 
> Regards, STefan
> 
> PS: I'm keeping the CC to current@, since this might be an issue in the i2c
>      kernel code ...

There are no successful lkpi_iic attachments in your output. They look like:

lkpi_iic0: <LinuxKPI I2C> on drmn0

Please share your `devinfo -v` output.
Kldload output with verbose boot enabled can be helpful too.

-- 
WBR
Vladimir Kondratyev



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41f0a849-f2c9-75fe-e0ed-e60356ac4728>