View previous topic :: View next topic |
Author |
Message |
statikregimen Apprentice
Joined: 16 Jul 2011 Posts: 173 Location: USA/Michigan
|
Posted: Sun Apr 01, 2018 4:12 pm Post subject: [SOLVED] AMD R7 Carrizo firmware fails to load |
|
|
Hello,
Trying to set up an HP Pavilion 15z-cd000 laptop with an AMD A12-9720p (R7 Carrizo graphics)
Kernel is vanilla 4.15.14
I've followed the AMDGPU article in the wiki, but getting the following messages in dmesg and no video:
Code: | dmesg | grep gpu
[ 1.032033] [drm] amdgpu kernel modesetting enabled.
[ 1.032534] amdgpu 0000:00:01.0: VRAM: 512M 0x000000F400000000 - 0x000000F41FFFFFFF (512M used)
[ 1.032538] amdgpu 0000:00:01.0: GTT: 1024M 0x0000000000000000 - 0x000000003FFFFFFF
[ 1.032620] [drm] amdgpu: 512M of VRAM memory ready
[ 1.032624] [drm] amdgpu: 3072M of GTT memory ready.
[ 1.032628] [drm] GART: num cpu pages 262144, num gpu pages 262144
[ 1.032807] amdgpu 0000:00:01.0: amdgpu: using MSI.
[ 1.032827] [drm] amdgpu: irq initialized.
[ 1.032840] amdgpu: [powerplay] amdgpu: powerplay sw initialized
[ 1.032855] amdgpu 0000:00:01.0: Direct firmware load for amdgpu/carrizo_pfp.bin failed with error -2
[ 1.032859] amdgpu 0000:00:01.0: gfx8: Failed to load firmware "amdgpu/carrizo_pfp.bin"
[ 1.032872] [drm:amdgpu_device_init] *ERROR* sw_init of IP block <gfx_v8_0> failed -2
[ 1.032875] amdgpu 0000:00:01.0: amdgpu_init failed
[ 1.033201] amdgpu_ttm_fini+0x116/0x1c0
[ 1.033204] amdgpu_bo_fini+0x9/0x30
[ 1.033209] amdgpu_fini+0x209/0x320
[ 1.033211] amdgpu_device_init+0xe10/0x1450
[ 1.033219] amdgpu_driver_load_kms+0x57/0x1a0
[ 1.033225] amdgpu_pci_probe+0x105/0x130
[ 1.033279] [drm] amdgpu: ttm finalized
[ 1.033283] amdgpu 0000:00:01.0: Fatal error during GPU init
[ 1.033286] [drm] amdgpu: finishing device.
[ 1.033602] amdgpu: probe of 0000:00:01.0 failed with error -2 |
The system doesn't lock up - Obviously, I get logs that I can review when I boot via USB. Also, I can ctrl+alt+del to reboot after a few seconds.
Kernel config:
http://meaninglessinfo.com/tech/meaningless_desktop/15z-cd000_kernel_cfg
Note, in that config, the firmware is not listed out in CONFIG_EXTRA_FIRMWARE - removed it just to see what would happen. Same error either way.
I'm probably overlooking something silly, but any advice/insight is appreciated!
Also maybe worth mentioning that the Sabayon live image boots just fine, but I can't work out what I'm doing wrong/differently.
Last edited by statikregimen on Sat Jul 14, 2018 12:25 am; edited 2 times in total |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
statikregimen Apprentice
Joined: 16 Jul 2011 Posts: 173 Location: USA/Michigan
|
Posted: Sun Apr 01, 2018 4:39 pm Post subject: |
|
|
Jaglover wrote: | error -2 means the file is not found. |
That's slightly helpful, but not sure what I can do about it? I've installed linux-firmeware and can ls the directory - all the files are there.
Somehow I was also under the impression that when you did list those files in CONFIG_EXTRA_FIRMWARE, the firmware would be built into the kernel. However, I'm not sure what gave me that impression and as I said, filling out that setting seems to make no difference.
Thanks
EDIT: Trying again w/ that variable set. I think I may have done it wrong before....I now see it handling those files during the make process. |
|
Back to top |
|
|
statikregimen Apprentice
Joined: 16 Jul 2011 Posts: 173 Location: USA/Michigan
|
Posted: Sun Apr 01, 2018 4:52 pm Post subject: |
|
|
So...not sure what I did wrong before, but resetting CONFIG_EXTRA_FIRMWARE per the wiki seems to have resolved the issue.
I guess, if you're reading this having the same issue, make sure you set that variable correctly!
Thanks for the help Jaglover - it got the gears turning |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21633
|
Posted: Mon Apr 02, 2018 12:23 am Post subject: |
|
|
Many drivers, when built into the kernel, will initialize before the filesystem is ready. If this is one of those, then it cannot use on-filesystem firmware even if you put the firmware in the right place. In those cases, your only choices are to build the firmware into the kernel (as you did) or to make the driver a module on the filesystem, so that it cannot be loaded or initialized until the filesystem is ready. In my opinion, your solution is the better choice. |
|
Back to top |
|
|
|