a quick note: freeipmi has been fixed and now works with the SM IPMI.
to compile it, in a ports jail do:
svn co svn://svn.savannah.gnu.org/freeipmi/branches/Release-1_3_0_branch freeipmi
then apply the patches for the freeipmi freebsd patches:
for i in `ls /usr/ports/sysutils/freeipmi/files/patch-*`; do echo $i ; patch -p0 < $i; done
then run configure with:
LDFLAGS=-L/usr/local/lib CFLAGS=-I/usr/local/include LIBS=-lpthread ./configure
and then run make
It's a bit easier to understand the value you set with freeipmi than with ipmiutil, though it's more work to perform the same action.
it's just a matter of time before it's in the ports and as such, automatically added to freenas