There is firmware. But fortunately it is not embedded in the userspace blob driver like it is for some of the closed src drivers, but instead loaded using normal linux request_firmware() mechanism. So it is pretty easy to grab the fw from (for example) some android device (or cyogenmod filesys, etc) from /lib/firmware directory.
I'm not really clear on the redistribution situation for firmware yet. I'm trying to get an answer from qcom. If it turns out not to be possible to redistribute the firmware blobs, then I'll finish reverse engineering the pfp and me fw and write my own. And, well, might do that anyways if I get bored. Fwiw, the two firmware blobs are identical (instruction set) compared to radeon r600 (the me fw is endian swapped). Newer radeon looks different.