Gentoo Archives: gentoo-user

From: Tsukasa Mcp_Reznor <mcp_reznor@×××××××.com>
To: "gentoo-user@l.g.o" <gentoo-user@l.g.o>
Subject: RE: [gentoo-user] (Not Solved for me) anyone tried amdgpu (kernel module)
Date: Wed, 23 Dec 2015 11:13:43
Message-Id: BAY172-W46DEEC921381922BF0779BF0E60@phx.gbl
In Reply to: Re: [gentoo-user] (Not Solved for me) anyone tried amdgpu (kernel module) by Mick
1 > From: michaelkintzios@×××××.com
2 > To: gentoo-user@l.g.o
3 > Subject: Re: [gentoo-user] (Not Solved for me) anyone tried amdgpu (kernel module)
4 > Date: Tue, 22 Dec 2015 23:02:12 +0000
5 >
6 > On Tuesday 22 Dec 2015 21:30:48 Alexander Kapshuk wrote:
7 > > On Tue, Dec 22, 2015 at 9:39 PM, Mick <michaelkintzios@×××××.com> wrote:
8 > > > On Sunday 20 Dec 2015 20:29:28 Alexander Kapshuk wrote:
9 > > > > On Sun, Dec 20, 2015 at 9:04 PM, Mick <michaelkintzios@×××××.com> wrote:
10 > > > > > This is not working for me on a Kaveri system.
11 > > > > >
12 > > > > > The wiki page suggests these firmware blobs:
13 > > > > >
14 > > > > > radeon/kaveri_ce.bin radeon/kaveri_me.bin radeon/kaveri_mec2.bin
15 > > > > > radeon/kaveri_mec.bin radeon/kaveri_pfp.bin radeon/kaveri_rlc.bin
16 > > > > > radeon/kaveri_sdma1.bin radeon/kaveri_sdma.bin radeon/kaveri_uvd.bin
17 > > > > > radeon/kaveri_vce.bin
18 > > > > >
19 > > > > > Unfortunately, radeon/kaveri_sdma1.bin does not seen to be available
20 > > >
21 > > > when
22 > > >
23 > > > > > I use sys-kernel/linux-firmware:
24 > > > > >
25 > > > > > find /lib/firmware/radeon/ -iname KAVERI*sdma*
26 > > > > > /lib/firmware/radeon/kaveri_sdma.bin
27 > > > > > /lib/firmware/radeon/KAVERI_sdma.bin
28 > > > > >
29 > > > > >
30 > > > > > I installed sys-firmware/amdgpu-ucode, but KAVERI is not found there
31 > > > > > either:
32 > > > > >
33 > > > > > find /lib/firmware/amdgpu/ -iname *sdma*
34 > > > > > /lib/firmware/amdgpu/carrizo_sdma.bin
35 > > > > > /lib/firmware/amdgpu/carrizo_sdma1.bin
36 > > > > > /lib/firmware/amdgpu/fiji_sdma.bin
37 > > > > > /lib/firmware/amdgpu/fiji_sdma1.bin
38 > > > > > /lib/firmware/amdgpu/tonga_sdma.bin
39 > > > > > /lib/firmware/amdgpu/tonga_sdma1.bin
40 > > > > > /lib/firmware/amdgpu/topaz_sdma.bin
41 > > > > > /lib/firmware/amdgpu/topaz_sdma1.bin
42 > > > > >
43 > > > > >
44 > > > > > Building the recommended blobs fails like so:
45 > > > > >
46 > > > > > # make && make modules_install && make firmware_install
47 > > > > >
48 > > > > > CHK include/config/kernel.release
49 > > > > > CHK include/generated/uapi/linux/version.h
50 > > > > > CHK include/generated/utsrelease.h
51 > > > > > CHK include/generated/bounds.h
52 > > > > > CHK include/generated/asm-offsets.h
53 > > > > > CALL scripts/checksyscalls.sh
54 > > > > > CHK include/generated/compile.h
55 > > > > >
56 > > > > > kernel/Makefile:135: *** No X.509 certificates found ***
57 > > > > > make[1]: *** No rule to make target
58 > > > > > '/lib/firmware//radeon/kaveri_sdma1.bin',
59 > > > > > needed by 'firmware/radeon/kaveri_sdma1.bin.gen.o'. Stop.
60 > > > > > Makefile:947: recipe for target 'firmware' failed
61 > > > > > make: *** [firmware] Error 2
62 > > > >
63 > > > > That's interesting. 'kaveri_sdma1.bin' is found in the
64 > > > > 'sys-firmware/amdgpu-ucode' package. See below.
65 > > > > % pwd
66 > > > > radeon_ucode/kaveri
67 > > >
68 > > > I don't seem to have such a directory, or the files therein. Where am I
69 > > > supposed to look?
70 > > >
71 > > > This is what emerge -uaDv sys-firmware/amdgpu-ucode installed on my PC:
72 > > > >>> Installing (1 of 1) sys-firmware/amdgpu-ucode-20150803::gentoo
73 > > >
74 > > > * checking 44 files for package collisions
75 > > >
76 > > > >>> Merging sys-firmware/amdgpu-ucode-20150803 to /
77 > > >
78 > > > --- /lib/
79 > > > --- /lib/firmware/
80 > > > --- /lib/firmware/amdgpu/
81 > > >
82 > > > >>> /lib/firmware/amdgpu/carrizo_ce.bin
83 > > > >>> /lib/firmware/amdgpu/carrizo_me.bin
84 > > > >>> /lib/firmware/amdgpu/carrizo_mec.bin
85 > > > >>> /lib/firmware/amdgpu/carrizo_mec2.bin
86 > > > >>> /lib/firmware/amdgpu/carrizo_pfp.bin
87 > > > >>> /lib/firmware/amdgpu/carrizo_rlc.bin
88 > > > >>> /lib/firmware/amdgpu/carrizo_sdma.bin
89 > > > >>> /lib/firmware/amdgpu/carrizo_sdma1.bin
90 > > > >>> /lib/firmware/amdgpu/carrizo_uvd.bin
91 > > > >>> /lib/firmware/amdgpu/carrizo_vce.bin
92 > > > >>> /lib/firmware/amdgpu/fiji_ce.bin
93 > > > >>> /lib/firmware/amdgpu/fiji_mc.bin
94 > > > >>> /lib/firmware/amdgpu/fiji_me.bin
95 > > > >>> /lib/firmware/amdgpu/fiji_mec.bin
96 > > > >>> /lib/firmware/amdgpu/fiji_mec2.bin
97 > > > >>> /lib/firmware/amdgpu/fiji_pfp.bin
98 > > > >>> /lib/firmware/amdgpu/fiji_rlc.bin
99 > > > >>> /lib/firmware/amdgpu/fiji_sdma.bin
100 > > > >>> /lib/firmware/amdgpu/fiji_sdma1.bin
101 > > > >>> /lib/firmware/amdgpu/fiji_smc.bin
102 > > > >>> /lib/firmware/amdgpu/fiji_uvd.bin
103 > > > >>> /lib/firmware/amdgpu/fiji_vce.bin
104 > > > >>> /lib/firmware/amdgpu/tonga_ce.bin
105 > > > >>> /lib/firmware/amdgpu/tonga_mc.bin
106 > > > >>> /lib/firmware/amdgpu/tonga_me.bin
107 > > > >>> /lib/firmware/amdgpu/tonga_mec.bin
108 > > > >>> /lib/firmware/amdgpu/tonga_mec2.bin
109 > > > >>> /lib/firmware/amdgpu/tonga_pfp.bin
110 > > > >>> /lib/firmware/amdgpu/tonga_rlc.bin
111 > > > >>> /lib/firmware/amdgpu/tonga_sdma.bin
112 > > > >>> /lib/firmware/amdgpu/tonga_sdma1.bin
113 > > > >>> /lib/firmware/amdgpu/tonga_smc.bin
114 > > > >>> /lib/firmware/amdgpu/tonga_uvd.bin
115 > > > >>> /lib/firmware/amdgpu/tonga_vce.bin
116 > > > >>> /lib/firmware/amdgpu/topaz_ce.bin
117 > > > >>> /lib/firmware/amdgpu/topaz_mc.bin
118 > > > >>> /lib/firmware/amdgpu/topaz_me.bin
119 > > > >>> /lib/firmware/amdgpu/topaz_mec.bin
120 > > > >>> /lib/firmware/amdgpu/topaz_mec2.bin
121 > > > >>> /lib/firmware/amdgpu/topaz_pfp.bin
122 > > > >>> /lib/firmware/amdgpu/topaz_rlc.bin
123 > > > >>> /lib/firmware/amdgpu/topaz_sdma.bin
124 > > > >>> /lib/firmware/amdgpu/topaz_sdma1.bin
125 > > > >>> /lib/firmware/amdgpu/topaz_smc.bin
126 > > >
127 > > > No /kaveri/ in there.
128 > > >
129 > > > > Perhaps the path to the binary blobs specified in your kernel config
130 > > > > file is wrong? You want to double check that.
131 > > >
132 > > > This is what I have:
133 > > >
134 > > > grep /firmware .config
135 > > > CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware/"
136 > > >
137 > > > Looking at it again the amdgpu wiki page does not list amdgpu firmwares
138 > > > for the KAVERI APU. However, I am confused as to why I can't find
139 > > > radeon/kaveri_sdma1 in my installed firmwares (either from
140 > > > linux-firmware, or
141 > > > from amdgpu-ucode.
142 > > >
143 > > > --
144 > > > Regards,
145 > > > Mick
146 > >
147 > > What USE flags did you compile 'sys-firmware/amdgpu-ucode' with?
148 > >
149 > > If I am reading the section of the ebuild shown below correctly, having
150 > > 'legacy' enabled is what installs the 'kaveri' binaries.
151 > > /usr/portage/sys-firmware/amdgpu-ucode/amdgpu-ucode-20150803.ebuild:23,33
152 > > AMDGPU_LEGACY_CIK="bonaire hawaii kabini kaveri mullins"
153 > >
154 > > src_install() {
155 > > local directory files legacyfiles
156 > > if use legacy; then
157 > > for directory in ${AMDGPU_LEGACY_CIK}; do
158 > > legacyfiles+=( ${directory}/*.bin )
159 > > done
160 > > insinto /lib/firmware/radeon
161 > > doins ${legacyfiles[@]}
162 > > fi
163 > >
164 > > 'legacy' seems to be disabled by default. See below.
165 > > # emerge -ap sys-firmware/amdgpu-ucode
166 > >
167 > > These are the packages that would be merged, in order:
168 > >
169 > > Calculating dependencies ... done!
170 > > [ebuild N ~] sys-firmware/amdgpu-ucode-20150803 USE="-legacy"
171 >
172 > Aha! Good catch!
173 >
174 > [- ] legacy
175 > sys-firmware/amdgpu-ucode: Install firmware for older chipsets which
176 > are optionally supported by AMDGPU
177 > [- ] 20150803 [gentoo]
178 >
179 >
180 > Can I have both amdgpu and linux-firmware?
181 >
182 > The latter has some wireless firmware I think I need to retain.
183 > --
184 > Regards,
185 > Mick
186
187
188
189 yes you can, you have to install linux-firmware with the savedconfig use flag, after emerging it'll give the location of the config file in the output, open it up and remove the radeon firmware from being built so there are no collisions and you can remove anything else you are sure you won't need, then re-emerge linux-firmware and you should be good to goI needed network firmware also