there are a lot of firmwares not provided by any package in gentoo. in specific, radeon CP firmware for all ati radeon cards is missing. it got installed with some experimental kernel some time ago, so i thought that the kernel provides it by default. now, when i reinstalled my system, i could not find any package that provides files /lib/firmware/R100_cp.bin /lib/firmware/R200_cp.bin /lib/firmware/R300_cp.bin /lib/firmware/R420_cp.bin /lib/firmware/R520_cp.bin /lib/firmware/R600_cp.bin /lib/firmware/RS600_cp.bin /lib/firmware/RS690_cp.bin /lib/firmware/RS780_cp.bin /lib/firmware/RV610_cp.bin /lib/firmware/RV620_cp.bin /lib/firmware/RV630_cp.bin /lib/firmware/RV635_cp.bin /lib/firmware/RV670_cp.bin /lib/firmware/RV710_cp.bin /lib/firmware/RV730_cp.bin /lib/firmware/RV770_cp.bin linux-firmware does not have them. i found them in http://packages.debian.org/sid/firmware-linux-nonfree radeon firmware files from this package are needed to get textured video (essentially, XV) on ati radeon cards with recent mesa, libdrm and xf86-video-ati. there are also other firmware files in that package that are apparently not provided by linux-firmware . also, there is more recent linux-firmware package out than one in portage. gentoo has 20090421, while 20090821 is out. Reproducible: Always Steps to Reproduce: 1. install mplayer or xvinfo 2. install mesa, xf86-video-ati Actual Results: xv extension is not present Expected Results: xv extension should be available. tested with xf86-video-ati,mesa,libdrm from gentoo ~x86 and with the same packages straight off git. same result. X logs state about missing CP support when xv is not available - the firmware mentioned provides that.
If you choose not to build firmware into the kernel, the firmware files you will find in ${KERNEL_DIR}/firmware/radeon/
i assume KERNEL_DIR stands for kernel source directory? i disabled in kernel firmware and i still don't have radeon directory in there. using gentoo-sources-2.6.31-r4 right now. grep FIRMWARE .config # CONFIG_PREVENT_FIRMWARE_BUILD is not set # CONFIG_FIRMWARE_IN_KERNEL is not set CONFIG_EXTRA_FIRMWARE="" # CONFIG_FIRMWARE_EDID is not set CONFIG_FIRMWARE_MEMMAP=y i must be doing something wrong. i can't get the kernel to make radeon firmware. localhost linux # LC_ALL="C" ls firmware/radeon ls: cannot access firmware/radeon: No such file or directory localhost linux # pwd /usr/src/linux
CONFIG_FIRMWARE_IN_KERNEL is what will include firmware in the kernel. If disabled, you need to put the necessary firmware files in /lib/firmware
so, if i understood correctly, kernel source does not provide radeon firmware?
If I understand this correctly it's a kernel config issue.
(In reply to comment #4) > so, if i understood correctly, kernel source does not provide radeon firmware? > I'm not sure about the 2.6.31 sources, but 2.6.32 definitely has radeon firmware.