AMDGPU driver apparently not loading firmwareRX 480 AMDGPU Driver Failing To Load On Debian Sidcustom kernel...
Can an NPC use the teleport spell to affect an object they can see with the scry spell?
How to "Start as close to the end as possible", and why to do so?
Manager told a colleague of mine I was getting fired soon
Are there manual checks for non EU citizens in airports when travelling inside the EU?
How to tension rope between two trees?
Did the Soviet army intentionally send troops (e.g. penal battalions) running over minefields?
Determining if auto stats update is in progress
Why do personal finance apps focus on outgoings rather than income
I've been fired, was allowed to announce it as if I quit and given extra notice, how to handle the questions?
Could the Queen overturn the UK Supreme Court ruling regarding prorogation of Parliament?
Is American Sign Language phonetic?
Does it require less energy to reach the Sun from Pluto's orbit than from Earth's orbit?
How dangerous are my worn rims?
How to prove (A v B), (A → C), (B → D) therefore (C v D)
Can/should you swim in zero G?
Is there any problem with students seeing faculty naked in university gym?
Should I be able to see patterns in a HS256 encoded JWT?
Where does the image of a data connector as a sharp metal spike originate from?
Quote to show students don't have to fear making mistakes
Can I voluntarily exit from the US after a 20 year overstay, or could I be detained at the airport?
Search for something difficult to count/estimate
Bothered by watching coworkers slacking off
What benefits are there to blocking most search engines?
Why is my vegetable stock bitter, but the chicken stock not?
AMDGPU driver apparently not loading firmware
RX 480 AMDGPU Driver Failing To Load On Debian Sidcustom kernel and firmware loadingloading ath9k_htc kernel driver failsKernel Firmware for RadeonPush firmware files in ath10k to Debian firmware-atherosDoes amdgpu kernel driver require non-free firmware to be loaded?How to get new AMDGPU driver in Opensuse?RX 480 AMDGPU Driver Failing To Load On Debian SidWhat is “firmware” in Linux terminology?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{
margin-bottom:0;
}
I have an RX 580 (Polaris 10 GPU) that I am using with my Gentoo system. I build my own kernel, which is completely typical with Gentoo. I'm not using any initramfs, but the kernel loads the amdgpu module during the boot process.
The AMDGPU driver doesn't appear to be loading any firmware. I've built the kernel with the following options:
CONFIG_DRM_AMDGPU=m
CONFIG_DRM_AMDGPU_SI=y
CONFIG_DRM_AMDGPU_CIK=y
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
CONFIG_EXTRA_FIRMWARE="intel-ucode/06-2d-07 radeon/tahiti_ce.bin radeon/tahiti_mc.bin radeon/tahiti_me.bin radeon/tahiti_pfp.bin radeon/tahiti_rlc.bin radeon/tahiti_smc.bin radeon/TAHITI_uvd.bin amdgpu/polaris10_ce.bin amdgpu/polaris10_ce_2.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_k2_smc.bin amdgpu/polaris10_k_mc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_me_2.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec2_2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_mec_2.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_pfp_2.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin"
The firmware config also includes the firmware for my CPU, which loads fine, as well as my old Tahiti-based GPU. I have verified that all the Polaris firmware specified is in the /lib/firmware/amdgpu directory, and that all the Polaris firmware in that directory is listed in the kernel config.
But I'm not seeing any messages in dmesg that either the firmware loaded, or failed to load. Looking around I seem to find examples where firmware is supposed to have loading messages and I don't have those, e.g.:
[ 3.603145] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_pfp.bin
[ 3.603623] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_me.bin
But I don't have such messages, at least for the GPU. (The CPU microcode is loading fine).
For the curious, the root of the issue is that the card has the reset bug with VFIO. The RX 580 is known to be finicky with this, but I'm hoping that getting the updated firmware might help. The card works well enough for displaying things in Linux, so I know basic driver functionality is fine.
'modinfo -F firmware amdgpu' produces an enormous amount of output, including all 21 firmware blobs for polaris10 and a few hundred other blobs as well, for apparently every GPU supported by the amdgpu driver.
Following is the output of "dmesg | grep -e amdgpu -e drm"
[ 7.253557] [drm] amdgpu kernel modesetting enabled.
[ 7.253688] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 0: 0xc0000000 -> 0xcfffffff
[ 7.253689] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 2: 0xd0000000 -> 0xd01fffff
[ 7.253690] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 5: 0xfbe00000 -> 0xfbe3ffff
[ 7.253692] amdgpu 0000:01:00.0: vgaarb: deactivate vga console
[ 7.254864] [drm] initializing kernel modesetting (POLARIS10 0x1002:0x67DF 0x1043:0x0519 0xE7).
[ 7.254871] [drm] register mmio base: 0xFBE00000
[ 7.254872] [drm] register mmio size: 262144
[ 7.254874] [drm] PCIE atomic ops is not supported
[ 7.254877] [drm] add ip block number 0 <vi_common>
[ 7.254878] [drm] add ip block number 1 <gmc_v8_0>
[ 7.254878] [drm] add ip block number 2 <tonga_ih>
[ 7.254878] [drm] add ip block number 3 <gfx_v8_0>
[ 7.254879] [drm] add ip block number 4 <sdma_v3_0>
[ 7.254879] [drm] add ip block number 5 <powerplay>
[ 7.254880] [drm] add ip block number 6 <dm>
[ 7.254880] [drm] add ip block number 7 <uvd_v6_0>
[ 7.254881] [drm] add ip block number 8 <vce_v3_0>
[ 7.255067] amdgpu 0000:01:00.0: No more image in the PCI ROM
[ 7.255095] [drm] UVD is enabled in VM mode
[ 7.255096] [drm] UVD ENC is enabled in VM mode
[ 7.255097] [drm] VCE enabled in VM mode
[ 7.255116] [drm] vm size is 128 GB, 2 levels, block size is 10-bit, fragment size is 9-bit
[ 7.255124] amdgpu 0000:01:00.0: VRAM: 8192M 0x000000F400000000 - 0x000000F5FFFFFFFF (8192M used)
[ 7.255125] amdgpu 0000:01:00.0: GART: 256M 0x000000FF00000000 - 0x000000FF0FFFFFFF
[ 7.255127] [drm] Detected VRAM RAM=8192M, BAR=256M
[ 7.255128] [drm] RAM width 256bits GDDR5
[ 7.255374] [drm] amdgpu: 8192M of VRAM memory ready
[ 7.255376] [drm] amdgpu: 8192M of GTT memory ready.
[ 7.255391] [drm] GART: num cpu pages 65536, num gpu pages 65536
[ 7.256003] [drm] PCIE GART of 256M enabled (table at 0x000000F400900000).
[ 7.256064] [drm] Chained IB support enabled!
[ 7.256820] amdgpu: [powerplay] hwmgr_sw_init smu backed is polaris10_smu
[ 7.256827] [drm] Found UVD firmware Version: 1.130 Family ID: 16
[ 7.257311] [drm] Found VCE firmware Version: 53.26 Binary ID: 3
[ 7.312157] [drm] DM_PPLIB: values for Engine clock
[ 7.312158] [drm] DM_PPLIB: 300000
[ 7.312158] [drm] DM_PPLIB: 751000
[ 7.312159] [drm] DM_PPLIB: 1048000
[ 7.312159] [drm] DM_PPLIB: 1158000
[ 7.312159] [drm] DM_PPLIB: 1240000
[ 7.312160] [drm] DM_PPLIB: 1309000
[ 7.312160] [drm] DM_PPLIB: 1364000
[ 7.312160] [drm] DM_PPLIB: 1411000
[ 7.312161] [drm] DM_PPLIB: Validation clocks:
[ 7.312161] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312162] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312162] [drm] DM_PPLIB: level : 8
[ 7.312163] [drm] DM_PPLIB: values for Memory clock
[ 7.312163] [drm] DM_PPLIB: 300000
[ 7.312164] [drm] DM_PPLIB: 1000000
[ 7.312164] [drm] DM_PPLIB: 2000000
[ 7.312164] [drm] DM_PPLIB: Validation clocks:
[ 7.312165] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312165] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312165] [drm] DM_PPLIB: level : 8
[ 7.312575] [drm] Display Core initialized with v3.2.35!
[ 7.347039] [drm] SADs count is: -2, don't need to read it
[ 7.397092] [drm] SADs count is: -2, don't need to read it
[ 7.458278] amdgpu 0000:01:00.0: DVI-D-1: EDID is invalid:
[ 7.458288] [drm] SADs count is: -2, don't need to read it
[ 7.458297] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 7.458297] [drm] Driver supports precise vblank timestamp query.
[ 7.484629] [drm] UVD and UVD ENC initialized successfully.
[ 7.585582] [drm] VCE initialized successfully.
[ 7.587422] [drm] fb mappable at 0xC0E30000
[ 7.587423] [drm] vram apper at 0xC0000000
[ 7.587423] [drm] size 1228800
[ 7.587424] [drm] fb depth is 24
[ 7.587424] [drm] pitch is 2560
[ 7.587478] fbcon: amdgpudrmfb (fb0) is primary device
[ 7.634376] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[ 7.635745] [drm] Initialized amdgpu 3.33.0 20150101 for 0000:01:00.0 on minor 0
kernel gpu firmware
add a comment
|
I have an RX 580 (Polaris 10 GPU) that I am using with my Gentoo system. I build my own kernel, which is completely typical with Gentoo. I'm not using any initramfs, but the kernel loads the amdgpu module during the boot process.
The AMDGPU driver doesn't appear to be loading any firmware. I've built the kernel with the following options:
CONFIG_DRM_AMDGPU=m
CONFIG_DRM_AMDGPU_SI=y
CONFIG_DRM_AMDGPU_CIK=y
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
CONFIG_EXTRA_FIRMWARE="intel-ucode/06-2d-07 radeon/tahiti_ce.bin radeon/tahiti_mc.bin radeon/tahiti_me.bin radeon/tahiti_pfp.bin radeon/tahiti_rlc.bin radeon/tahiti_smc.bin radeon/TAHITI_uvd.bin amdgpu/polaris10_ce.bin amdgpu/polaris10_ce_2.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_k2_smc.bin amdgpu/polaris10_k_mc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_me_2.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec2_2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_mec_2.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_pfp_2.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin"
The firmware config also includes the firmware for my CPU, which loads fine, as well as my old Tahiti-based GPU. I have verified that all the Polaris firmware specified is in the /lib/firmware/amdgpu directory, and that all the Polaris firmware in that directory is listed in the kernel config.
But I'm not seeing any messages in dmesg that either the firmware loaded, or failed to load. Looking around I seem to find examples where firmware is supposed to have loading messages and I don't have those, e.g.:
[ 3.603145] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_pfp.bin
[ 3.603623] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_me.bin
But I don't have such messages, at least for the GPU. (The CPU microcode is loading fine).
For the curious, the root of the issue is that the card has the reset bug with VFIO. The RX 580 is known to be finicky with this, but I'm hoping that getting the updated firmware might help. The card works well enough for displaying things in Linux, so I know basic driver functionality is fine.
'modinfo -F firmware amdgpu' produces an enormous amount of output, including all 21 firmware blobs for polaris10 and a few hundred other blobs as well, for apparently every GPU supported by the amdgpu driver.
Following is the output of "dmesg | grep -e amdgpu -e drm"
[ 7.253557] [drm] amdgpu kernel modesetting enabled.
[ 7.253688] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 0: 0xc0000000 -> 0xcfffffff
[ 7.253689] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 2: 0xd0000000 -> 0xd01fffff
[ 7.253690] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 5: 0xfbe00000 -> 0xfbe3ffff
[ 7.253692] amdgpu 0000:01:00.0: vgaarb: deactivate vga console
[ 7.254864] [drm] initializing kernel modesetting (POLARIS10 0x1002:0x67DF 0x1043:0x0519 0xE7).
[ 7.254871] [drm] register mmio base: 0xFBE00000
[ 7.254872] [drm] register mmio size: 262144
[ 7.254874] [drm] PCIE atomic ops is not supported
[ 7.254877] [drm] add ip block number 0 <vi_common>
[ 7.254878] [drm] add ip block number 1 <gmc_v8_0>
[ 7.254878] [drm] add ip block number 2 <tonga_ih>
[ 7.254878] [drm] add ip block number 3 <gfx_v8_0>
[ 7.254879] [drm] add ip block number 4 <sdma_v3_0>
[ 7.254879] [drm] add ip block number 5 <powerplay>
[ 7.254880] [drm] add ip block number 6 <dm>
[ 7.254880] [drm] add ip block number 7 <uvd_v6_0>
[ 7.254881] [drm] add ip block number 8 <vce_v3_0>
[ 7.255067] amdgpu 0000:01:00.0: No more image in the PCI ROM
[ 7.255095] [drm] UVD is enabled in VM mode
[ 7.255096] [drm] UVD ENC is enabled in VM mode
[ 7.255097] [drm] VCE enabled in VM mode
[ 7.255116] [drm] vm size is 128 GB, 2 levels, block size is 10-bit, fragment size is 9-bit
[ 7.255124] amdgpu 0000:01:00.0: VRAM: 8192M 0x000000F400000000 - 0x000000F5FFFFFFFF (8192M used)
[ 7.255125] amdgpu 0000:01:00.0: GART: 256M 0x000000FF00000000 - 0x000000FF0FFFFFFF
[ 7.255127] [drm] Detected VRAM RAM=8192M, BAR=256M
[ 7.255128] [drm] RAM width 256bits GDDR5
[ 7.255374] [drm] amdgpu: 8192M of VRAM memory ready
[ 7.255376] [drm] amdgpu: 8192M of GTT memory ready.
[ 7.255391] [drm] GART: num cpu pages 65536, num gpu pages 65536
[ 7.256003] [drm] PCIE GART of 256M enabled (table at 0x000000F400900000).
[ 7.256064] [drm] Chained IB support enabled!
[ 7.256820] amdgpu: [powerplay] hwmgr_sw_init smu backed is polaris10_smu
[ 7.256827] [drm] Found UVD firmware Version: 1.130 Family ID: 16
[ 7.257311] [drm] Found VCE firmware Version: 53.26 Binary ID: 3
[ 7.312157] [drm] DM_PPLIB: values for Engine clock
[ 7.312158] [drm] DM_PPLIB: 300000
[ 7.312158] [drm] DM_PPLIB: 751000
[ 7.312159] [drm] DM_PPLIB: 1048000
[ 7.312159] [drm] DM_PPLIB: 1158000
[ 7.312159] [drm] DM_PPLIB: 1240000
[ 7.312160] [drm] DM_PPLIB: 1309000
[ 7.312160] [drm] DM_PPLIB: 1364000
[ 7.312160] [drm] DM_PPLIB: 1411000
[ 7.312161] [drm] DM_PPLIB: Validation clocks:
[ 7.312161] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312162] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312162] [drm] DM_PPLIB: level : 8
[ 7.312163] [drm] DM_PPLIB: values for Memory clock
[ 7.312163] [drm] DM_PPLIB: 300000
[ 7.312164] [drm] DM_PPLIB: 1000000
[ 7.312164] [drm] DM_PPLIB: 2000000
[ 7.312164] [drm] DM_PPLIB: Validation clocks:
[ 7.312165] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312165] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312165] [drm] DM_PPLIB: level : 8
[ 7.312575] [drm] Display Core initialized with v3.2.35!
[ 7.347039] [drm] SADs count is: -2, don't need to read it
[ 7.397092] [drm] SADs count is: -2, don't need to read it
[ 7.458278] amdgpu 0000:01:00.0: DVI-D-1: EDID is invalid:
[ 7.458288] [drm] SADs count is: -2, don't need to read it
[ 7.458297] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 7.458297] [drm] Driver supports precise vblank timestamp query.
[ 7.484629] [drm] UVD and UVD ENC initialized successfully.
[ 7.585582] [drm] VCE initialized successfully.
[ 7.587422] [drm] fb mappable at 0xC0E30000
[ 7.587423] [drm] vram apper at 0xC0000000
[ 7.587423] [drm] size 1228800
[ 7.587424] [drm] fb depth is 24
[ 7.587424] [drm] pitch is 2560
[ 7.587478] fbcon: amdgpudrmfb (fb0) is primary device
[ 7.634376] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[ 7.635745] [drm] Initialized amdgpu 3.33.0 20150101 for 0000:01:00.0 on minor 0
kernel gpu firmware
add a comment
|
I have an RX 580 (Polaris 10 GPU) that I am using with my Gentoo system. I build my own kernel, which is completely typical with Gentoo. I'm not using any initramfs, but the kernel loads the amdgpu module during the boot process.
The AMDGPU driver doesn't appear to be loading any firmware. I've built the kernel with the following options:
CONFIG_DRM_AMDGPU=m
CONFIG_DRM_AMDGPU_SI=y
CONFIG_DRM_AMDGPU_CIK=y
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
CONFIG_EXTRA_FIRMWARE="intel-ucode/06-2d-07 radeon/tahiti_ce.bin radeon/tahiti_mc.bin radeon/tahiti_me.bin radeon/tahiti_pfp.bin radeon/tahiti_rlc.bin radeon/tahiti_smc.bin radeon/TAHITI_uvd.bin amdgpu/polaris10_ce.bin amdgpu/polaris10_ce_2.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_k2_smc.bin amdgpu/polaris10_k_mc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_me_2.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec2_2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_mec_2.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_pfp_2.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin"
The firmware config also includes the firmware for my CPU, which loads fine, as well as my old Tahiti-based GPU. I have verified that all the Polaris firmware specified is in the /lib/firmware/amdgpu directory, and that all the Polaris firmware in that directory is listed in the kernel config.
But I'm not seeing any messages in dmesg that either the firmware loaded, or failed to load. Looking around I seem to find examples where firmware is supposed to have loading messages and I don't have those, e.g.:
[ 3.603145] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_pfp.bin
[ 3.603623] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_me.bin
But I don't have such messages, at least for the GPU. (The CPU microcode is loading fine).
For the curious, the root of the issue is that the card has the reset bug with VFIO. The RX 580 is known to be finicky with this, but I'm hoping that getting the updated firmware might help. The card works well enough for displaying things in Linux, so I know basic driver functionality is fine.
'modinfo -F firmware amdgpu' produces an enormous amount of output, including all 21 firmware blobs for polaris10 and a few hundred other blobs as well, for apparently every GPU supported by the amdgpu driver.
Following is the output of "dmesg | grep -e amdgpu -e drm"
[ 7.253557] [drm] amdgpu kernel modesetting enabled.
[ 7.253688] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 0: 0xc0000000 -> 0xcfffffff
[ 7.253689] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 2: 0xd0000000 -> 0xd01fffff
[ 7.253690] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 5: 0xfbe00000 -> 0xfbe3ffff
[ 7.253692] amdgpu 0000:01:00.0: vgaarb: deactivate vga console
[ 7.254864] [drm] initializing kernel modesetting (POLARIS10 0x1002:0x67DF 0x1043:0x0519 0xE7).
[ 7.254871] [drm] register mmio base: 0xFBE00000
[ 7.254872] [drm] register mmio size: 262144
[ 7.254874] [drm] PCIE atomic ops is not supported
[ 7.254877] [drm] add ip block number 0 <vi_common>
[ 7.254878] [drm] add ip block number 1 <gmc_v8_0>
[ 7.254878] [drm] add ip block number 2 <tonga_ih>
[ 7.254878] [drm] add ip block number 3 <gfx_v8_0>
[ 7.254879] [drm] add ip block number 4 <sdma_v3_0>
[ 7.254879] [drm] add ip block number 5 <powerplay>
[ 7.254880] [drm] add ip block number 6 <dm>
[ 7.254880] [drm] add ip block number 7 <uvd_v6_0>
[ 7.254881] [drm] add ip block number 8 <vce_v3_0>
[ 7.255067] amdgpu 0000:01:00.0: No more image in the PCI ROM
[ 7.255095] [drm] UVD is enabled in VM mode
[ 7.255096] [drm] UVD ENC is enabled in VM mode
[ 7.255097] [drm] VCE enabled in VM mode
[ 7.255116] [drm] vm size is 128 GB, 2 levels, block size is 10-bit, fragment size is 9-bit
[ 7.255124] amdgpu 0000:01:00.0: VRAM: 8192M 0x000000F400000000 - 0x000000F5FFFFFFFF (8192M used)
[ 7.255125] amdgpu 0000:01:00.0: GART: 256M 0x000000FF00000000 - 0x000000FF0FFFFFFF
[ 7.255127] [drm] Detected VRAM RAM=8192M, BAR=256M
[ 7.255128] [drm] RAM width 256bits GDDR5
[ 7.255374] [drm] amdgpu: 8192M of VRAM memory ready
[ 7.255376] [drm] amdgpu: 8192M of GTT memory ready.
[ 7.255391] [drm] GART: num cpu pages 65536, num gpu pages 65536
[ 7.256003] [drm] PCIE GART of 256M enabled (table at 0x000000F400900000).
[ 7.256064] [drm] Chained IB support enabled!
[ 7.256820] amdgpu: [powerplay] hwmgr_sw_init smu backed is polaris10_smu
[ 7.256827] [drm] Found UVD firmware Version: 1.130 Family ID: 16
[ 7.257311] [drm] Found VCE firmware Version: 53.26 Binary ID: 3
[ 7.312157] [drm] DM_PPLIB: values for Engine clock
[ 7.312158] [drm] DM_PPLIB: 300000
[ 7.312158] [drm] DM_PPLIB: 751000
[ 7.312159] [drm] DM_PPLIB: 1048000
[ 7.312159] [drm] DM_PPLIB: 1158000
[ 7.312159] [drm] DM_PPLIB: 1240000
[ 7.312160] [drm] DM_PPLIB: 1309000
[ 7.312160] [drm] DM_PPLIB: 1364000
[ 7.312160] [drm] DM_PPLIB: 1411000
[ 7.312161] [drm] DM_PPLIB: Validation clocks:
[ 7.312161] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312162] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312162] [drm] DM_PPLIB: level : 8
[ 7.312163] [drm] DM_PPLIB: values for Memory clock
[ 7.312163] [drm] DM_PPLIB: 300000
[ 7.312164] [drm] DM_PPLIB: 1000000
[ 7.312164] [drm] DM_PPLIB: 2000000
[ 7.312164] [drm] DM_PPLIB: Validation clocks:
[ 7.312165] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312165] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312165] [drm] DM_PPLIB: level : 8
[ 7.312575] [drm] Display Core initialized with v3.2.35!
[ 7.347039] [drm] SADs count is: -2, don't need to read it
[ 7.397092] [drm] SADs count is: -2, don't need to read it
[ 7.458278] amdgpu 0000:01:00.0: DVI-D-1: EDID is invalid:
[ 7.458288] [drm] SADs count is: -2, don't need to read it
[ 7.458297] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 7.458297] [drm] Driver supports precise vblank timestamp query.
[ 7.484629] [drm] UVD and UVD ENC initialized successfully.
[ 7.585582] [drm] VCE initialized successfully.
[ 7.587422] [drm] fb mappable at 0xC0E30000
[ 7.587423] [drm] vram apper at 0xC0000000
[ 7.587423] [drm] size 1228800
[ 7.587424] [drm] fb depth is 24
[ 7.587424] [drm] pitch is 2560
[ 7.587478] fbcon: amdgpudrmfb (fb0) is primary device
[ 7.634376] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[ 7.635745] [drm] Initialized amdgpu 3.33.0 20150101 for 0000:01:00.0 on minor 0
kernel gpu firmware
I have an RX 580 (Polaris 10 GPU) that I am using with my Gentoo system. I build my own kernel, which is completely typical with Gentoo. I'm not using any initramfs, but the kernel loads the amdgpu module during the boot process.
The AMDGPU driver doesn't appear to be loading any firmware. I've built the kernel with the following options:
CONFIG_DRM_AMDGPU=m
CONFIG_DRM_AMDGPU_SI=y
CONFIG_DRM_AMDGPU_CIK=y
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
CONFIG_EXTRA_FIRMWARE="intel-ucode/06-2d-07 radeon/tahiti_ce.bin radeon/tahiti_mc.bin radeon/tahiti_me.bin radeon/tahiti_pfp.bin radeon/tahiti_rlc.bin radeon/tahiti_smc.bin radeon/TAHITI_uvd.bin amdgpu/polaris10_ce.bin amdgpu/polaris10_ce_2.bin amdgpu/polaris10_k_smc.bin amdgpu/polaris10_k2_smc.bin amdgpu/polaris10_k_mc.bin amdgpu/polaris10_mc.bin amdgpu/polaris10_me.bin amdgpu/polaris10_me_2.bin amdgpu/polaris10_mec2.bin amdgpu/polaris10_mec2_2.bin amdgpu/polaris10_mec.bin amdgpu/polaris10_mec_2.bin amdgpu/polaris10_pfp.bin amdgpu/polaris10_pfp_2.bin amdgpu/polaris10_rlc.bin amdgpu/polaris10_sdma1.bin amdgpu/polaris10_sdma.bin amdgpu/polaris10_smc.bin amdgpu/polaris10_smc_sk.bin amdgpu/polaris10_uvd.bin amdgpu/polaris10_vce.bin"
The firmware config also includes the firmware for my CPU, which loads fine, as well as my old Tahiti-based GPU. I have verified that all the Polaris firmware specified is in the /lib/firmware/amdgpu directory, and that all the Polaris firmware in that directory is listed in the kernel config.
But I'm not seeing any messages in dmesg that either the firmware loaded, or failed to load. Looking around I seem to find examples where firmware is supposed to have loading messages and I don't have those, e.g.:
[ 3.603145] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_pfp.bin
[ 3.603623] amdgpu 0000:01:00.0: firmware: direct-loading firmware amdgpu/polaris10_me.bin
But I don't have such messages, at least for the GPU. (The CPU microcode is loading fine).
For the curious, the root of the issue is that the card has the reset bug with VFIO. The RX 580 is known to be finicky with this, but I'm hoping that getting the updated firmware might help. The card works well enough for displaying things in Linux, so I know basic driver functionality is fine.
'modinfo -F firmware amdgpu' produces an enormous amount of output, including all 21 firmware blobs for polaris10 and a few hundred other blobs as well, for apparently every GPU supported by the amdgpu driver.
Following is the output of "dmesg | grep -e amdgpu -e drm"
[ 7.253557] [drm] amdgpu kernel modesetting enabled.
[ 7.253688] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 0: 0xc0000000 -> 0xcfffffff
[ 7.253689] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 2: 0xd0000000 -> 0xd01fffff
[ 7.253690] amdgpu 0000:01:00.0: remove_conflicting_pci_framebuffers: bar 5: 0xfbe00000 -> 0xfbe3ffff
[ 7.253692] amdgpu 0000:01:00.0: vgaarb: deactivate vga console
[ 7.254864] [drm] initializing kernel modesetting (POLARIS10 0x1002:0x67DF 0x1043:0x0519 0xE7).
[ 7.254871] [drm] register mmio base: 0xFBE00000
[ 7.254872] [drm] register mmio size: 262144
[ 7.254874] [drm] PCIE atomic ops is not supported
[ 7.254877] [drm] add ip block number 0 <vi_common>
[ 7.254878] [drm] add ip block number 1 <gmc_v8_0>
[ 7.254878] [drm] add ip block number 2 <tonga_ih>
[ 7.254878] [drm] add ip block number 3 <gfx_v8_0>
[ 7.254879] [drm] add ip block number 4 <sdma_v3_0>
[ 7.254879] [drm] add ip block number 5 <powerplay>
[ 7.254880] [drm] add ip block number 6 <dm>
[ 7.254880] [drm] add ip block number 7 <uvd_v6_0>
[ 7.254881] [drm] add ip block number 8 <vce_v3_0>
[ 7.255067] amdgpu 0000:01:00.0: No more image in the PCI ROM
[ 7.255095] [drm] UVD is enabled in VM mode
[ 7.255096] [drm] UVD ENC is enabled in VM mode
[ 7.255097] [drm] VCE enabled in VM mode
[ 7.255116] [drm] vm size is 128 GB, 2 levels, block size is 10-bit, fragment size is 9-bit
[ 7.255124] amdgpu 0000:01:00.0: VRAM: 8192M 0x000000F400000000 - 0x000000F5FFFFFFFF (8192M used)
[ 7.255125] amdgpu 0000:01:00.0: GART: 256M 0x000000FF00000000 - 0x000000FF0FFFFFFF
[ 7.255127] [drm] Detected VRAM RAM=8192M, BAR=256M
[ 7.255128] [drm] RAM width 256bits GDDR5
[ 7.255374] [drm] amdgpu: 8192M of VRAM memory ready
[ 7.255376] [drm] amdgpu: 8192M of GTT memory ready.
[ 7.255391] [drm] GART: num cpu pages 65536, num gpu pages 65536
[ 7.256003] [drm] PCIE GART of 256M enabled (table at 0x000000F400900000).
[ 7.256064] [drm] Chained IB support enabled!
[ 7.256820] amdgpu: [powerplay] hwmgr_sw_init smu backed is polaris10_smu
[ 7.256827] [drm] Found UVD firmware Version: 1.130 Family ID: 16
[ 7.257311] [drm] Found VCE firmware Version: 53.26 Binary ID: 3
[ 7.312157] [drm] DM_PPLIB: values for Engine clock
[ 7.312158] [drm] DM_PPLIB: 300000
[ 7.312158] [drm] DM_PPLIB: 751000
[ 7.312159] [drm] DM_PPLIB: 1048000
[ 7.312159] [drm] DM_PPLIB: 1158000
[ 7.312159] [drm] DM_PPLIB: 1240000
[ 7.312160] [drm] DM_PPLIB: 1309000
[ 7.312160] [drm] DM_PPLIB: 1364000
[ 7.312160] [drm] DM_PPLIB: 1411000
[ 7.312161] [drm] DM_PPLIB: Validation clocks:
[ 7.312161] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312162] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312162] [drm] DM_PPLIB: level : 8
[ 7.312163] [drm] DM_PPLIB: values for Memory clock
[ 7.312163] [drm] DM_PPLIB: 300000
[ 7.312164] [drm] DM_PPLIB: 1000000
[ 7.312164] [drm] DM_PPLIB: 2000000
[ 7.312164] [drm] DM_PPLIB: Validation clocks:
[ 7.312165] [drm] DM_PPLIB: engine_max_clock: 141100
[ 7.312165] [drm] DM_PPLIB: memory_max_clock: 200000
[ 7.312165] [drm] DM_PPLIB: level : 8
[ 7.312575] [drm] Display Core initialized with v3.2.35!
[ 7.347039] [drm] SADs count is: -2, don't need to read it
[ 7.397092] [drm] SADs count is: -2, don't need to read it
[ 7.458278] amdgpu 0000:01:00.0: DVI-D-1: EDID is invalid:
[ 7.458288] [drm] SADs count is: -2, don't need to read it
[ 7.458297] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 7.458297] [drm] Driver supports precise vblank timestamp query.
[ 7.484629] [drm] UVD and UVD ENC initialized successfully.
[ 7.585582] [drm] VCE initialized successfully.
[ 7.587422] [drm] fb mappable at 0xC0E30000
[ 7.587423] [drm] vram apper at 0xC0000000
[ 7.587423] [drm] size 1228800
[ 7.587424] [drm] fb depth is 24
[ 7.587424] [drm] pitch is 2560
[ 7.587478] fbcon: amdgpudrmfb (fb0) is primary device
[ 7.634376] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[ 7.635745] [drm] Initialized amdgpu 3.33.0 20150101 for 0000:01:00.0 on minor 0
kernel gpu firmware
kernel gpu firmware
asked 38 mins ago
fluffysheapfluffysheap
1412 bronze badges
1412 bronze badges
add a comment
|
add a comment
|
0
active
oldest
votes
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/4.0/"u003ecc by-sa 4.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f544156%2famdgpu-driver-apparently-not-loading-firmware%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f544156%2famdgpu-driver-apparently-not-loading-firmware%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown