from compat_firmware.sh:
$this->bbcode_second_pass_code('', 'FIRMWARE_DIRS="/lib/firmware"')
this probably goes without saying, make sure compat_firmware.sh is +x
also, if you'll look at compat_firmware.sh, it should be showing any errors in syslog.
if it *is* being run, i would take a look to make sure all the relevant dirs like /sys$DEVPATH/loading data exist.
/dev/.udev/firmware-missing/ would have a symlink if the script ran but failed to find the fw.
-matt