Bug 99261

Summary: Kernel 4.10-rc2 on APU with Kaveri + Topaz : boot hangs on switch to amdgpudrmfb
Product: DRI Reporter: SET <nmset>
Component: DRM/AMDgpuAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED NOTABUG QA Contact:
Severity: blocker    
Priority: medium CC: nmset
Version: XOrg git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
kernel log on boot failure none

Description SET 2017-01-03 16:08:14 UTC
Created attachment 128729 [details]
kernel log on boot failure

Since testing kernel 4.10 preRC, RC1 and RC2, my laptop hangs on boot at line 
fb : switch to amdgpudrmfb from EVI VGA.

A few specs :

APU : AMD A10-7300 Radeon R6, 10 Compute Cores 4C+6G (from /proc/cpuinfo).
iGPU : 00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kaveri HDMI/DP Audio Controller
dGPU : 01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Topaz XT [Radeon R7 M260/M265 / M340/M360 / M440/M445]
Xorg : 1.18.4, on Arch Linux
Boot command line : BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=76ba28b4-683c-4a39-96ef-6a1105905567 rw acpi=off (I have to use acpi=off on 4.10-rcX to go beyonf initramfs loading)

Whatever amdgpu module's option combination I use is of no avail. These ones (aspm=0 bapm=0 runpm=0 powerplay=1) allow me to use amdgpu on 4.9.

Attached is a kernel.log file where there is a stack trace of amdgpu module crashing.

I can use 4.10-rc2 on my desktop with RX480 and an old Phenom II x6 CPU.

I am posting here in the hope of getting developer attention to care about this module's crashing, on KMS seemingly. If I use nomodeset, the module gets loaded, but obviously, there's no X session beyond.

Regards.
Comment 1 Alex Deucher 2017-01-03 16:13:50 UTC
The driver is not able to find the vbios:
Jan  3 16:28:52 hp2 kernel: [   10.626851] [drm:amdgpu_get_bios [amdgpu]] *ERROR* Unable to locate a BIOS ROM

Possibly the related to this:
https://bugzilla.kernel.org/show_bug.cgi?id=141741
Comment 2 SET 2017-01-03 21:08:33 UTC
I tried to bisect for the first time, here's what I did :

git bisect start
git bisect bad
git bisect good v4.9
Bisecting: 5782 revisions left to test after this (roughly 13 steps)
[72cca7baf4fba777b8ab770b902cf2e08941773f] Merge tag 'staging-4.10-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging

... compile ... The resulting kernel loads amdgpu with a usable X.

git bisect good     
Bisecting: 2865 revisions left to test after this (roughly 12 steps)
[775fadd09e7beac2fc61cc0517629e9fa69bdb56] Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Now I don't know what else to do !

This patch seems to indicate locating vbios is being reworked, something is probably left out.
https://lists.freedesktop.org/archives/amd-gfx/2016-December/004179.html

Thx.
Comment 3 Alex Deucher 2017-01-03 21:36:22 UTC
(In reply to SET from comment #2)
> I tried to bisect for the first time, here's what I did :
> 
> git bisect start
> git bisect bad
> git bisect good v4.9
> Bisecting: 5782 revisions left to test after this (roughly 13 steps)
> [72cca7baf4fba777b8ab770b902cf2e08941773f] Merge tag 'staging-4.10-rc1' of
> git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
> 
> ... compile ... The resulting kernel loads amdgpu with a usable X.
> 
> git bisect good     
> Bisecting: 2865 revisions left to test after this (roughly 12 steps)
> [775fadd09e7beac2fc61cc0517629e9fa69bdb56] Merge tag 'armsoc-defconfig' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> 
> Now I don't know what else to do !

if things work:
git bisect good
of things don't work:
git bisect bad
and continue until it's done.

> 
> This patch seems to indicate locating vbios is being reworked, something is
> probably left out.
> https://lists.freedesktop.org/archives/amd-gfx/2016-December/004179.html

That code is not upstream yet.  We haven't really touched the vbios fetching code in a long time, so if you are seeing a regression, it's probably somewhere else.
Comment 4 SET 2017-01-07 19:09:23 UTC
Well, the hang up on switch to amdgpudrmfb was due to the kernel boot parameter 'acpi=off' I had to use to go beyond the 'loading initramfs' step. Initial hangup in the latter step was due to a UEFI bug of the laptop.

Fortunately, the manufacturer provides a BIOS update with the tag 'UEFI security enhancement'. After flashing the new BIOS, the laptop boots with kernel 4.10-rc2, with a few errors related to amdgpu, which I'll report in a new post.

Sorry for the inconvenience.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.