I just recently made a TPL converter which is the only one(currently) supporting PNG to CMP!
It's was actually a bit of a fun challenge. Since S3TC compression doesn't have much documentation.
I ended up using nothing but YAGCD's documentation and the code for converting CMP TPL's to PNG in Wii.py(google ;) )
EDIT: BTW, this isn't yet fully tested on the Wii/GC, but it seems fine in the hex editor :)