Kernel almost hangs when CONFIG_DRM_RADEON=y

Borislav Petkov bp at
Mon Aug 29 07:16:12 PDT 2011

On Mon, Aug 29, 2011 at 09:48:22AM -0400, Alex Deucher wrote:
> >> Should we make Kconfig pop up a dialog and ask for the whereabouts of
> >> these firmware thingies when you mark the driver =y?
> >>
> >> This all sounds like magic to me, having to know you need to add to
> >> EXTRA_FIRMWARE, having to know what file it needs etc.. For all intents
> >> and purposes =y just doesn't work and that's broken.
> >
> > Yep, you make a lot of sense. I had to fumble the build/reboot cycle a
> > couple of times and do some code staring even to figure this out. In
> > the end, I copied the whole radeon/ folder from David's firmware git
> > repo into /lib/firmware and made radeon.ko =m again so that I don't have
> > to add *.bin entries to CONFIG_EXTRA_FIRMWARE each time I'm building a
> > kernel on a different machine.
> >
> > Besides, there was this other issue on lkml today where
> > CONFIG_EXTRA_FIRMWARE can cause nconf to segfault when you overflow
> > its length of 256 by trying to include a bunch of firmware *bin files:
> >
> If you are going to build the ucode into your kernel you'll need to
> pick the ones you want to include or increase the limit regardless of
> whether it's radeon ucode or ucode for some other chip.  For a
> particular card you only need the ones for that card (e.g.,
> CEDAR_*.bin or REDWOOD_*.bin, etc.)

Alex, Dave, yeah, that's all fine.

The question Peter asked is, how to make this much more understandable
to the user so that she/he doesn't have to figure it out on their own.
IOW, if one sets RADEON to =y in Kconfig, it should automatically
generate a selection menu with all the firmware required so that
the user can select from it either the CEDAR* or the REDWOOD* (or
the DOUGHNUT* :-)) ones for her/his card and when the user selects
one entry, the required strings are added to CONFIG_EXTRA_FIRMWARE

Maybe even Kbuild should try to find them on the system, and, if unable
to, remind the user to install the needed firmware package.

Anyway, something to that effect, the above is just to illustrate the
intention, I don't know whether it would work. In any case, we're
lacking user help there and we don't want to put every user through
the process of finding which firmware files she/he needs when setting

Does that make more sense?


More information about the dri-devel mailing list